特定のユーザーの最新のツイートを JSON 形式で取得する php スクリプトがあります。JSON は、ページの ID に最新のツイートを表示する AJAX 関数に解析されます。上記を実行するためにタイマーが x 秒ごとに設定され、ユーザーがページを更新することなく最新のツイートを取得します。これは完全に機能します。
現在、表示する新しいツイートがあるときに通知を表示する通知機能を作成しようとしています。各ツイートには、取得した JSON に「id_string」という一意の ID があります。私がやりたいことは、生成された id_string の値を何らかの形で保存し、新しいツイートを取得するリクエストが行われるたびに、保存されたものと新しい 'id_string' をチェックし、異なる場合は通知を表示することです。
これをどうやって進めるかについてのアイデアは素晴らしいでしょうか?! 私はローカル ストレージを調べましたが、これにはあまり詳しくありません。私が知る限り、ローカル ストレージ内の他の文字列に対して文字列をチェックすることはできません。
私の質問を解釈するのに役立つ必要なコードは次のとおりです。
Twitter にリクエストを送信し、JSON 形式で出力を生成する PHP (tweets.php):
require_once('config/FrameFunctions.php');
$output = array();
foreach ($tweeters as $i => $tweeter){
$theTweeter = new Tweeter($tweeter, $tmhOAuth);
$allinfo = $theTweeter->getTweets();
$output[$i] = $allinfo;
}
header("Content-type: application/json");
echo json_encode($output);
x秒ごとにリクエストを行い、クライアント出力を生成するJavaScript:
$(document).ready(function() {
$('.fancybox').fancybox();
/*
* call ajax function and update latest
*/
var refreshTweets = function() {
console.log("updating..");
$.ajax({url:"tweets.php",success:function(result){
tweets = eval(result);
for(i=0;i<tweets.length;i++){
$("#latesttweet"+(i+1)).html(
tweets[i][0].user.name + ": " + tweets[i][0].text
);
}
}});
}
refreshTweets();
//set the time in milliseconds here for each refresh
setInterval(refreshTweets , 30000); //Interval
});