diff --git a/requirements.txt b/requirements.txt --- a/requirements.txt +++ b/requirements.txt @@ -4,17 +4,18 @@ # # pip-compile requirements.in # -dominate==2.1.16 # via flask-bootstrap +dominate==2.1.17 # via flask-bootstrap flask-bootstrap==3.3.5.7 -flask-httpauth==2.7.0 +flask-httpauth==3.1.0 flask==0.10.1 itsdangerous==0.24 # via flask jinja2==2.8 # via flask jsonschema==2.5.1 markupsafe==0.23 # via jinja2 oauthlib==1.0.3 # via requests-oauthlib -python-twitter==2.2 -requests-oauthlib==0.5.0 # via python-twitter -requests==2.8.1 # via python-twitter, requests-oauthlib +requests-oauthlib==0.6.1 # via tweepy +requests==2.9.1 # via requests-oauthlib, tweepy +six==1.10.0 # via tweepy +tweepy==3.5.0 visitor==0.1.2 # via flask-bootstrap -werkzeug==0.11.2 # via flask +werkzeug==0.11.4 # via flask diff --git a/spaceapi/state.py b/spaceapi/state.py --- a/spaceapi/state.py +++ b/spaceapi/state.py @@ -4,7 +4,7 @@ from time import time from flask import Blueprint, jsonify, request, current_app, abort -#import twitter +import tweepy from .utils import ActiveStatus from .auth import httpauth @@ -14,7 +14,6 @@ state_views = Blueprint('state', __name_ ALLOWED_STATE_KEYS = frozenset(('open', 'lastchange', 'trigger_person', 'message')) -#twitter_api = twitter.Api() def set_new_state(key, value): active = ActiveStatus() @@ -24,18 +23,21 @@ def set_new_state(key, value): if key == 'open': active['state']['lastchange'] = int(time()) - # if 'twitter_consumer_key' in current_app.config: - # twitter_api.SetCredentials( - # consumer_key=current_app.config['twitter_consumer_key'], - # consumer_secret=current_app.config['twitter_consumer_secret'], - # access_token_key=current_app.config['twitter_access_token_key'], - # access_token_secret=current_app.config['twitter_access_token_secret'] - # ) - # - # if value: - # twitter_api.PostUpdate('The space is now open!') - # else: - # twitter_api.PostUpdate('The space is now closed!') + if 'twitter_consumer_key' in current_app.config: + auth = tweepy.OAuthHandler( + current_app.config['twitter_consumer_key'], + current_app.config['twitter_consumer_secret'] + ) + auth.set_access_token( + current_app.config['twitter_access_token_key'], + current_app.config['twitter.access_token_secret'] + ) + api = tweepy.API(auth) + + if value: + api.update_status('The space is now open!') + else: + api.update_status('The space is now closed!') active.save_last_state() return jsonify(active)