Étape 5: Le logiciel Final
Maintenant que tout est configuré correctement, voici le code final
simplejson Import au format json
importation oauth2 comme oauth
importation RPi.GPIO comme GPIO
de temps importer sommeil
GPIO.setmode (GPIO. BCM)
GPIO.setwarnings(False)
CONSUMER_KEY = « VOTRE CONSUMER_KEY »
CONSUMER_SECRET = « YOURCONSUMER_SECRET »
ACCESS_KEY = « YOURACCESS_KEY »
ACCESS_SECRET = « YOURACCESS_SECRET »
#Here entrez votre numéro de GPIO pour chaque couleur
ROUGE = 18
VERT = 19
JAUNE = 17
BLEU = 16
def main() :
tweet_text = get_new_tweet()
new_color, BLINK_FLAG = color_from_tweet(tweet_text)
Si new_color :
Si BLINK_FLAG :
clignote (new_color, 999)
autre chose :
change_color(new_color)
autre chose :
n’imprimer « Aucune nouvelle couleur »
def get_new_tweet() :
consommation = oauth. Consommateur (clé = CONSUMER_KEY, secret = CONSUMER_SECRET)
access_token = oauth. Jeton (clé = ACCESS_KEY, secret = ACCESS_SECRET)
client = oauth. Client (consommateur, access_token)
timeline_endpoint = « https://api.twitter.com/1.1/statuses/mentions_timeline.json?count=1 »
réponse, données = client.request(timeline_endpoint)
Tweets = json.loads(data)
pour tweet en tweets :
tweet print ['text']
retourner le tweet ['text']
def color_from_tweet(tweet) :
Si « BLINK » dans tweet :
BLINK_FLAG = True
autre chose :
BLINK_FLAG = False
Si « Rouge » dans tweet :
retour rouge, BLINK_FLAG
Si « Verte » dans tweet :
retour vert, BLINK_FLAG
Si « Jaune » dans tweet :
JAUNE, BLINK_FLAG de retour
Si « Bleu » dans tweet :
Retour à BLUE, BLINK_FLAG
Retour à zéro, aucun
def change_color(color) :
OFF()
GPIO.setup (couleur, GPIO. OUT)
GPIO.output(color,True)
def off() :
pour les couleurs en [rouge, vert, jaune, bleu] :
GPIO.setup (couleurs, GPIO. OUT)
GPIO.output(colors,False)
def clignote (couleur, temps) :
GPIO.setup (couleur, GPIO. OUT)
GPIO.output (couleur, False)
pour x dans range(time) :
GPIO.output(color,True)
Sleep(.5)
GPIO.output(color,False)
Sleep(.5)
Print ".",
imprimer ""