{"id":355,"date":"2017-06-18T11:28:29","date_gmt":"2017-06-18T09:28:29","guid":{"rendered":"http:\/\/entropie.org\/3615\/?p=355"},"modified":"2023-02-25T17:33:51","modified_gmt":"2023-02-25T16:33:51","slug":"tweeter-avec-un-minitel","status":"publish","type":"post","link":"https:\/\/entropie.org\/3615\/index.php\/2017\/06\/18\/tweeter-avec-un-minitel\/","title":{"rendered":"Tweeter avec un Minitel"},"content":{"rendered":"<p>Le mat\u00e9riel \u00e0 mettre en oeuvre : Le minitel, le <a href=\"https:\/\/entropie.org\/3615\/index.php\/2017\/06\/11\/fabrication-du-cable\/\">c\u00e2ble DIN-USB<\/a>, une Arduino Uno, le <a href=\"https:\/\/entropie.org\/3615\/index.php\/hardware\/\">shield 3615<\/a>, un Raspberry Pi.<\/p>\n<p>On cr\u00e9e un compte Twitter puis une application Twitter depuis cette adresse : <a href=\"https:\/\/apps.twitter.com\" target=\"_blank\" rel=\"noopener\">https:\/\/apps.twitter.com<\/a>.<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/twitter_apps_800x405.png\" alt=\"\" width=\"800\" height=\"405\" class=\"alignleft size-full wp-image-457\" \/><\/p>\n<p>On r\u00e8gle\u00a0les permissions.<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/twitter_apps_permissions-800x675.png\" alt=\"\" width=\"800\" height=\"675\" class=\"alignleft size-full wp-image-459\" srcset=\"https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/twitter_apps_permissions-800x675.png 800w, https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/twitter_apps_permissions-800x675-300x253.png 300w, https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/twitter_apps_permissions-800x675-768x648.png 768w\" sizes=\"(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/><\/p>\n<p>On r\u00e9cup\u00e8re les cl\u00e9s qui sont dans les 4 zones rouges. Elles seront utilis\u00e9es ult\u00e9rieurement dans le fichier Python <a href=\"https:\/\/github.com\/eserandour\/Minitel_Twitter\/blob\/master\/minitel.py\" target=\"_blank\" rel=\"noopener noreferrer\">minitel.py<\/a>.<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/twitter_apps_keys_800x928.png\" alt=\"\" width=\"800\" height=\"928\" class=\"alignleft size-full wp-image-458\" srcset=\"https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/twitter_apps_keys_800x928.png 800w, https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/twitter_apps_keys_800x928-259x300.png 259w, https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/twitter_apps_keys_800x928-768x891.png 768w\" sizes=\"(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/><\/p>\n<p>Le programme <a href=\"https:\/\/github.com\/eserandour\/Minitel_Twitter\/blob\/master\/minitel.py\" target=\"_blank\" rel=\"noopener\">minitel.py<\/a> utilise Twython.<br \/>\nIl faut donc installer (sudo apt-get install) :<br \/>\npour Python 2.7 : python-twython \/ python-oauth \/ python-oauth2client \/ python-oauthlib \/ python-requests-oauthlib<br \/>\npour Python 3 : python3-twython \/ python3-oauth \/ python3-oauth2client \/ python3-oauthlib \/ python3-requests-oauthlib<\/p>\n<p>Pour que le programme <a href=\"https:\/\/github.com\/eserandour\/Minitel_Twitter\/blob\/master\/minitel.py\" target=\"_blank\" rel=\"noopener\">minitel.py<\/a> se lance d\u00e8s qu&rsquo;on allume le Raspberry Pi, on ajoute la ligne suivante dans le fichier <a href=\"https:\/\/github.com\/eserandour\/Minitel_Twitter\/blob\/master\/rc.local\" target=\"_blank\" rel=\"noopener noreferrer\">\/etc\/rc.local<\/a> :<br \/>\nsu -l pi -c &quot;python \/home\/pi\/3615\/minitel.py &amp;&quot;<\/p>\n<p>Dans le fichier \/boot\/cmdline.txt , il faut enlever \u00ab\u00a0console=ttyAMA0,115200\u00a0\u00bb.<\/p>\n<p>Enfin, pour pouvoir tweeter, le Raspberry Pi doit \u00eatre \u00e0 l&rsquo;heure sinon on a en retour le message \u00ab\u00a0Twitter API returned a 401 (Unauthorized), Timestamp out of bounds.\u00a0\u00bb. J&rsquo;ai donc ajout\u00e9 une horloge temps r\u00e9el sur le Raspberry Pi : <a href=\"http:\/\/www.nagashur.com\/wiki\/doku.php?id=raspberry_pi:ds3231_rtc_horloge\" target=\"_blank\" rel=\"noopener\">http:\/\/www.nagashur.com\/wiki\/doku.php?id=raspberry_pi:ds3231_rtc_horloge<\/a><\/p>\n<p>Pour consulter l&rsquo;heure et la date contenue dans le module :<\/p>\n<pre>\r\nsudo hwclock\r\n<\/pre>\n<p>Pour mettre \u00e0 l&rsquo;heure le Raspberry Pi manuellement :<\/p>\n<pre>\r\nsudo date -s \"2017-06-18 17:10\"\r\nsudo hwclock -w\r\n<\/pre>\n<p>Pour ce qui concerne l&rsquo;interface Minitel g\u00e9r\u00e9e par l&rsquo;Arduino, le programme qui utilise Minitel1B_Soft est <a href=\"https:\/\/github.com\/eserandour\/Minitel1B_Soft\/blob\/master\/examples\/Tweet_3615\/Tweet_3615.ino\" target=\"_blank\" rel=\"noopener\">ici<\/a>.<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/DSC_7345-1200-1024x708.jpg\" alt=\"\" width=\"840\" height=\"581\" class=\"alignleft size-large wp-image-461\" srcset=\"https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/DSC_7345-1200-1024x708.jpg 1024w, https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/DSC_7345-1200-300x208.jpg 300w, https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/DSC_7345-1200-768x531.jpg 768w, https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/DSC_7345-1200.jpg 1200w\" sizes=\"(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/p>\n<p>Enfin, il reste \u00e0 relier le shield 3615 au Raspberry Pi :<br \/>\nTX0&prime; du shield > RXD du Raspberry Pi (broche 10)<br \/>\nRX0&prime; du shield > TXD du Raspberry Pi (broche 8)<br \/>\nGND du shield > GND du Raspberry Pi (broche 6)<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/DSC_7410-1200-1024x680.jpg\" alt=\"\" width=\"840\" height=\"558\" class=\"alignleft size-large wp-image-595\" srcset=\"https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/DSC_7410-1200-1024x680.jpg 1024w, https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/DSC_7410-1200-300x199.jpg 300w, https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/DSC_7410-1200-768x510.jpg 768w, https:\/\/entropie.org\/3615\/wp-content\/uploads\/2017\/06\/DSC_7410-1200.jpg 1200w\" sizes=\"(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Le mat\u00e9riel \u00e0 mettre en oeuvre : Le minitel, le c\u00e2ble DIN-USB, une Arduino Uno, le shield 3615, un Raspberry Pi. On cr\u00e9e un compte Twitter puis une application Twitter depuis cette adresse : https:\/\/apps.twitter.com. On r\u00e8gle\u00a0les permissions. On r\u00e9cup\u00e8re les cl\u00e9s qui sont dans les 4 zones rouges. Elles seront utilis\u00e9es ult\u00e9rieurement dans le &hellip; <a href=\"https:\/\/entropie.org\/3615\/index.php\/2017\/06\/18\/tweeter-avec-un-minitel\/\" class=\"more-link\">Continuer la lecture<span class=\"screen-reader-text\"> de &laquo;&nbsp;Tweeter avec un Minitel&nbsp;&raquo;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10,9,11,5],"tags":[],"class_list":["post-355","post","type-post","status-publish","format-standard","hentry","category-arduino","category-minitel","category-raspberry-pi","category-tutoriels"],"_links":{"self":[{"href":"https:\/\/entropie.org\/3615\/index.php\/wp-json\/wp\/v2\/posts\/355"}],"collection":[{"href":"https:\/\/entropie.org\/3615\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/entropie.org\/3615\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/entropie.org\/3615\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/entropie.org\/3615\/index.php\/wp-json\/wp\/v2\/comments?post=355"}],"version-history":[{"count":100,"href":"https:\/\/entropie.org\/3615\/index.php\/wp-json\/wp\/v2\/posts\/355\/revisions"}],"predecessor-version":[{"id":6001,"href":"https:\/\/entropie.org\/3615\/index.php\/wp-json\/wp\/v2\/posts\/355\/revisions\/6001"}],"wp:attachment":[{"href":"https:\/\/entropie.org\/3615\/index.php\/wp-json\/wp\/v2\/media?parent=355"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/entropie.org\/3615\/index.php\/wp-json\/wp\/v2\/categories?post=355"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/entropie.org\/3615\/index.php\/wp-json\/wp\/v2\/tags?post=355"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}