示例#1
0
 private function load_tweet($tweet)
 {
     $id = $tweet->id;
     $username = $tweet->user->screen_name;
     $local = $this->user;
     $uri = "http://twitter.com/{$username}/status/{$id}";
     $content = $tweet->text;
     $userid = $tweet->user->id;
     $name = $tweet->user->name;
     $ts = date('c', time($tweet->created_at));
     $user_uri = "http://twitter.com/{$username}";
     $user_foaf_uri = "http://twitter.com/{$username}#me";
     $depiction = $tweet->user->profile_image_url;
     $triples = array();
     $triples[] = array(SMOBTools::uri($uri), "a", "sioct:MicroblogPost");
     $triples[] = array("sioc:has_container", SMOBTools::uri('http://twitter.com/'));
     $triples[] = array("sioc:has_creator", SMOBTools::uri($user_uri));
     $triples[] = array("foaf:maker", SMOBTools::uri($user_foaf_uri));
     $triples[] = array("dct:created", SMOBTools::date($ts));
     $triples[] = array("dct:title", SMOBTools::literal("Update - " . $ts));
     $triples[] = array("sioc:content", SMOBTools::literal($content));
     if (strpos($content, '@' . $this->user) !== false) {
         $triples[] = array("sioc:addressed_to", SMOBTools::uri(FOAF_URI));
         $triples[] = array("sioc:addressed_to", SMOBTools::uri('http://twitter.com/' . $this->user . '#me'));
         $triples[] = array(SMOBTools::uri(FOAF_URI), 'sioc:name', SMOBTools::literal($this->user));
         $triples[] = array(SMOBTools::uri('http://twitter.com/' . $this->user . '#me'), 'sioc:name', SMOBTools::literal($this->user));
     }
     $triples[] = array(SMOBTools::uri($user_foaf_uri), "foaf:name", SMOBTools::literal($name));
     $triples[] = array("foaf:depiction", SMOBTools::uri($depiction));
     $opo_uri = $uri . '#presence';
     $triples[] = array(SMOBTools::uri($opo_uri), "a", "opo:OnlinePresence");
     $triples[] = array("opo:declaredOn", SMOBTools::uri($user_uri));
     $triples[] = array("opo:declaredBy", SMOBTools::uri($user_foaf_uri));
     $triples[] = array("opo:StartTime", SMOBTools::date($ts));
     $triples[] = array("opo:customMessage", SMOBTools::uri($uri));
     $graph = SMOB_ROOT . "data/twitter/{$id}";
     $rdf = SMOBTools::render_sparql_triples($triples);
     $query = "INSERT INTO <{$graph}> { {$rdf} }";
     $res = SMOBStore::query($query);
 }
示例#2
0
 public function save()
 {
     $graph = $this->graph();
     $rdf = SMOBTools::render_sparql_triples($this->triples);
     $query = "INSERT INTO <{$graph}> { {$rdf} }";
     SMOBStore::query($query);
     print '<li>Message saved locally !</li>';
 }