This script will allow you to use twitter as a live feed or surveillance device that uploads content directly to twitter.
On my Pi I used a Waveshare night vision camera, but you can use any type of camera.
Step 1: Create a Twitter App
Go to https://apps.twitter.com/ and create a new app for your Raspberry Pi script. You will need to already have a Twitter account to do this.
Under the "Keys and Access Tokens" tab is where you will find what you need to implement into the code.
Step 2: Install Tweepy
Download and upgrade tweepy with:
sudo pip install tweepy --upgrade
Step 3: Write the Script
import tweepy import time import random from subprocess import call from datetime import datetime
#These are the phrases variables that will be sent with the tweet tweet = ['A tweet from my pi ', 'Hello! ']
#time and date for filename i = datetime.now() now = i.strftime('%Y%m%d-%H%M%S') photo_name = now + '.jpg' #creates command and destination for photo cmd = 'raspistill -t 500 -w 1024 -h 768 -o /tmp/' + photo_name #shoot the photo call ([cmd], shell=True)
# Replace each with the keys and tokens from your twitter app consumer_key = 'nzY1xjjTtglUvfEP14XZrpn9A' consumer_secret = 'fn9VTJwZF1kSJKUFKdrxMpiwwWFohvaWlkiPQRyj2oRZ7c9ojV' access_token = '2775601040-LlC1dTEwMCwPgASSXwQdXC2R1KjHYsKjrk3ASnE' access_token_secret = '5irgLOLbIqeYjswY0cDjsunL1feMKW50k9NxFC04kFExD'
# OAuth process, using the keys and tokens auth = tweepy.OAuthHandler(consumer_key, consumer_secret) auth.set_access_token(access_token, access_token_secret)
# Creation of the actual interface, using authentication api = tweepy.API(auth)
# Send photo to destination photo_path = '/tmp/' + photo_name # Tweet text status = (random.choice(tweet)) + i.strftime('%Y/%m/%d %H:%M:%S') # Send the tweet with photo api.update_with_media(photo_path, status=status)
#How many seconds before the script runs again time.sleep(900)
Step 4: Modify the Script
Where it asks for the consumer key, consumer secret, access token, and access token secret, you will want to insert the code generated in your twitter app.
You will probably want to change the duration between photos being sent as well as the information sent with the tweets.
To change how often a tweet is sent, you change the amount of seconds to sleep in time.sleep().
To change what phrases are tweeted with the photo, you edit tweet =  at the top of the script.
Step 5: Run the Script
After you finish modifying the script, save with scriptname.py
Now you can run the script with python scriptname.py