[Tuto][API] Utiliser l’API Twitter via PHP

Dans cet article, nous utiliserons l’API Twitter grace au langage PHP. Cet article s’inscrit dans la continuité de celui permettant de récupérer uniquement le nombre de followers.

Toute la méthode expliquée ci-dessous est basé sur cet article: http://iag.me/socialmedia/build-your-first-twitter-app-using-php-in-8-easy-steps/

Nous utilisons le système suivant: https://github.com/J7mbo/twitter-api-php

Dans l’index.php, vous aurez à personnaliser les lignes:

$settings = array(
 'oauth_access_token' => "OAUTH_ACCESS_TOKEN",
 'oauth_access_token_secret' => "OAUTH_ACCESS_TOKEN_SECRET",
 'consumer_key' => "CONSUMER_KEY",
 'consumer_secret' => "CONSUMER_SECRET"
 );

Tous ces paramètres sont disponibles en créant une application sur le site https://apps.twitter.com

Pour récupérer les informations principales du compte: le nombre de followers, le nombre d’abonnements et le nombre de tweets

twitter

<?php
ini_set('display_errors', 1);
require_once('Twitter/TwitterAPIExchange.php');

$settings = array(
'oauth_access_token' => "YOUR_ACCESS_TOKEN",
'oauth_access_token_secret' => "YOUR_ACCESS_TOKEN_SECRET",
'consumer_key' => "YOUR_CONSUMMER_KEY",
'consumer_secret' => "YOUR_CONSUMER_SECRET"
);

$url = "https://api.twitter.com/1.1/statuses/user_timeline.json";
 
$requestMethod = "GET";
 
$getfield = '?screen_name=LetmeknowFr&count=1';
 
$twitter = new TwitterAPIExchange($settings);
$string = json_decode($twitter->setGetfield($getfield)
->buildOauth($url, $requestMethod)
->performRequest(),$assoc = TRUE);
if($string["errors"][0]["message"] != "") {echo "<h3>Sorry, there was a problem.</h3><p>Twitter returned the following error message:</p><p><em>".$string[errors][0]["message"]."</em></p>";exit();}
foreach($string as $items) {
$followers = $items['user']['followers_count'];
$friends = $items['user']['friends_count'];
$tweets = $items['user']['statuses_count'];
}
?>

De nombreux autres data sont récupérables, elles sont détaillées dans l’article http://iag.me/socialmedia/build-your-first-twitter-app-using-php-in-8-easy-steps/

[Tuto][API] Récupérer le nombre de followers Twitter facilement

Sur le même concept que la récupération du nombre de fans Facebook, il est possible de connaitre le nombre de followers d’une page Twitter. Nous fonctionnons avec une page Php qui affiche uniquement un nombre correspondant au nombre de Followers (Ci dessous avec la page LetmeknowFr)

<html>
<body>
<?php 
$tw_username = 'LetmeknowFr'; 
$data = file_get_contents('http://cdn.syndication.twimg.com/widgets/followbutton/info.json?screen_names='.$tw_username); 
$parsed = json_decode($data,true);
$tw_followers = $parsed[0]['followers_count'];
echo $tw_followers;
?>
</body>
</html>

A vous de créer l’objet pour visualiser cette donnée!

19708_smiirl-va-decliner-son-compteur-de-likes-sur-instagram-et-twitter

[Tuto][API] Récupérer le nombre de fan Facebook facilement

Parfois lors de la réalisation d’un objet connecté, il peut être intéressant de récupérer différentes informations de Facebook comme le nombre de Fans. Avec cette information, vous pouvez réaliser un compteur à la manière de celui de Smiirl

smiirl-facebook-like-count-7

Vous pouvez aussi créer des interactions comme cette Lampe de Seeedstudio

FUP5MMDIHQOBV42.MEDIUM

La méthode que nous vous proposons est d’utiliser un script php qui vous retournera directement la valeur de likes, fans ou autres que vous recherchez.

Dans ce premier exemple vous récupérerez le nombre de fan de la page Letmeknow (id 477204119057198). Vous pouvez récupérer l’ID de votre fan page sur ce site http://findmyfbid.com

<html>
<body>
<?php 
 $xml = simplexml_load_file("http://api.facebook.com/restserver.php?method=facebook.fql.query&query=SELECT%20fan_count%20FROM%20page%20WHERE%20page_id=477204119057198"); 
 echo $xml->page->fan_count;
 ?>
</body>
</html>

Nous avons également expérimenté une autre donnée intéressante de Facebook qui est le nombre de partage d’une page Web. Dans cet exemple la page letmeknow.fr

<html>
<body>
<?php 
 $xml = simplexml_load_file("http://api.facebook.com/method/links.getStats?urls=letmeknow.fr"); 
 echo $xml->link_stat->total_count;
 ?>
</body>
</html>

[Tuto] Premier programme avec l’API Particle

Nous allons voir comment utiliser simplement l’API Particle depuis son navigateur. L’objectif va être d’allumer à distance une LED raccordée à un Particle Electron, cela fonctionne de la même manière pour le Core et Photon.

Programme de la carte

Pour le programme à injecter dans l’Electron, on se repose sur l’exemple « web-connected-led.ino »

// -----------------------------------
// Controlling LEDs over the Internet
// -----------------------------------

int led1 = D0;
int led2 = D7;

void setup()
{
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);

Particle.function("led",ledToggle);

digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
}

void loop()
{
}

int ledToggle(String command) {

if (command=="on") {
digitalWrite(led1,HIGH);
digitalWrite(led2,HIGH);
return 1;
}
else if (command=="off") {
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
return 0;
}
else {
return -1;
}
}

Ce programme va automatiquement créer la requête correspondante à la fonction « led ».

Première méthode par utilisation d’une page Web

Nous allons créer un formulaire Web « test.html » dans l’optique d’utiliser la méthode POST dans une page Web. Nous reprenons également la page Web proposé par le tutoriel Particle.

<!-- Replace your-device-ID-goes-here with your actual device ID and replace your-access-token-goes-here with your actual access token-->
<!DOCTYPE>
<html>
<body>
<center>
<form action="https://api.particle.io/v1/devices/your-device-ID-goes-here/led?access_token=your-access-token-goes-here" method="POST">
Tell your device what to do!<br> <br> 
<input type="radio" name="args" value="on">Turn the LED on. <br>
<input type="radio" name="args" value="off">Turn the LED off. <br> <br>
<input type="submit" value="Do it!">
</form>
</center>
</body>
</html>

La réponse reçue après validation du formulaire est du type:

{
  "id": "your-device-ID-goes-here",
  "last_app": "",
  "connected": true,
  "return_value": 1
}

Deuxième méthode par utilisation d’une Chrome App

Il existe sur Chrome des applications permettant de réaliser toutes sortes de choses. Aujourd’hui nous nous intéresserons à l’application Advanced Rest Client. Elle permet de réaliser simplement des requêtes API de type POST.

App chrome