Robotboothpicture.py-8785122/Robotboothpicture.py

49 lines
1.7 KiB
Python
Raw Normal View History

2014-02-03 14:48:39 +00:00
#tweets a picture at you, based on a scanned QR code containing a twitter handle in plaintext.
#use with the ZXing barcode/QR code reader app, needs to be installed to work
#You will also need to unpack tweepy successfully
#finally, this script was written to run on SL4A within Android, rather than in native python.
#ps don't forget to leave the phone plugged in, otherwise it will run out of battery
import android
import tweepy
import time
droid=android.Android()
#droid.wakeLockAcquirePartial()
CONSUMER_KEY = 'yourkeyhere'
CONSUMER_SECRET = 'yoursecrethere'
ACCESS_KEY = 'youraccessthingyhere'
ACCESS_SECRET = 'and the secret access thing here'
droid.makeToast("Starting Auth")
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
droid.makeToast("Starting Authset")
auth.set_access_token(ACCESS_KEY, ACCESS_SECRET)
droid.makeToast("Starting API")
api = tweepy.API(auth)
picdir = '/sdcard/pbooth/'
piccount = 1
runcontinuous = True
while (runcontinuous == True):
time.sleep(10)
droid.ttsSpeak("Hello, I'm the robot photo booth! Please show me your QR code")
code = droid.scanBarcode()
scan = code.result
if scan:
droid.ttsSpeak("Smile! Taking picture now.")
time.sleep(2)
pictemp = picdir + str(code[1]['extras']['SCAN_RESULT'])
pictemp = pictemp + '%05i.jpeg'
droid.cameraCapturePicture(pictemp % piccount)
tweet = "@" + code[1]['extras']['SCAN_RESULT'] + " here is your picture. Have a nice day!"
api.status_update_with_media(pictemp % piccount, status=tweet)
droid.ttsSpeak("All finished. Your picture has now been tweeted. Thank you")
time.sleep(5)
piccount += 1