lunedì 2 settembre 2013

Creazione di post automatici su Facebook con RFID(5)

Questo e' un esercizio un po' stupido ma serve a mettere insieme un po' di pezzi relativi agli ultimi esperimenti: lo scopo e' pubblicare automaticamente post su Facebook passando un tag su un lettore di RFID
Il lettore di RFID e' quello gia' descritto in questo post mentre per la pubblicazione su Facebook e' stato usato il codice di questo altro post


In pratica uno script in Python legge il codice dell'RFID e chiama una pagina PHP sul server che associa il codice RFID ad un access_token di Facebook (gia' creati in precedenza) e crea un post

Nella versione definitiva l'associazione RFID-AccessToken sara' gestita da un database ma nel caso di prova, costituito da soli due RIFD, e' solo presente un controllo mediante if


Lato Client
------------------------------------------
import sys
import serial
import pycurl

ser = serial.Serial('/dev/ttyUSB0', 2400)
c = pycurl.Curl()

while (1):
id = ser.readline()
if len(id) == 12:
r = id[:10]
print "Id = ",id,
ur = "m.xxxxx.it/luca/xxxxxx/rfid_server.php?msg=rfid&rfid="+id
print ur
c.setopt(c.URL,ur)
c.perform()
------------------------------------------

Lato server
------------------------------------------
<?
require_once '../src/facebook.php';
//Luca
if ($_GET["rfid"] == "08002F74EA")
    {
    $accessToken = "CAAJkNq2LttoBAJywtmNSbVHqFPubOjYmQ2yyUG4kpibD75BHid9J7xsvif8osSOc4ewgK4aYerrLZBsZCQM5wykRTYVLDkCJXlXYl3gi8WFRQ8U4p4y4ZAXYsdamz6RVdRJZAe4vZA80mWBayuG0qc4IAj2TMDmQXKiv1OrKp8CwKjD6Rz2ZCAqp8yolIexxxxxxx";
    print "Luca<br>";
    }
//Gabriele
if ($_GET["rfid"] == "0800364CD7")
    {
    $accessToken = "CAAJkNq2LttoBACxBnb2QjtvbedXaRNwWDAniJsIE59ZBZBjDgsT1FtTmBIVxZAmS4MbbEXY8Y9kduFxfBmQhEgflGxdvXjRG1CAMHICGlHGaCXfP81VlLRySw2m8lzatt074jHsDKYlQjwZAHI725LLSMsAjjDDty3GDOrso0361xLCDz6BNBcDyHwwBxxxxxx";
    print "Gabriele";
    }

$appid = '673135956047578';
$appsecret = 'dde6cfb07dbb769c7efe949c20afd73d';
$msg = $_GET["msg"];
$title = 'Messaggio Automatico Arduino';
$uri = 'http://debiaonoldcomputers.blogspot.com/';
$desc = 'Luca Innocenti.';
$pic = 'http://3.bp.blogspot.com/-29lac_xBKKs/Uh2lzQIpU4I/AAAAAAAALI0/u-KyYf28cEs/s400/Basic-+Facebook+Developers.jpg';
$action_name = 'Action Link in the Footer of the Post';
$action_link = 'http://debiaonoldcomputers.blogspot.com/';

$facebook = new Facebook(array(
 'appId' => $appid,
 'secret' => $appsecret,
 'cookie' => false,
 ));

 $user = $facebook->getUser();


$attachment = array(
'access_token' => $accessToken,
'message' => $msg,
'name' => $title,
'link' => $uri,
'description' => $desc,
'picture'=>$pic,
'actions' => json_encode(array('name' => $action_name,'link' => $action_link))
);
$status = $facebook->api("/me/feed", "post", $attachment);
print "Ok";
?> 
------------------------------------------