Example #1
0
    def get(self, tweet_id):
        # get twitter access token from datastore
        token_key = None
        token_secret = None
        query = TweetAccessToken.gql("WHERE name = :name", name="the_only_one")
        token = query.get()
        if token:
            token_key = token.clavis
            token_secret = token.arcanum
        else:
            logging.error("Twitter access token unavailable")
            self.error(500)
            return

        # get authorized api
        auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
        auth.set_access_token(token_key, token_secret)
        api = tweepy.API(auth_handler=auth, parser=RawParser())

        json_data = api.get_status(tweet_id)

        callback = self.request.get('callback', None)
        if callback and is_valid_javascript_identifier(callback):
            self.response.headers['Content-Type'] = 'application/javascript'
            self.response.out.write("%s(%s)" % (callback, json_data))
        elif callback:
            logging.warning("Invalid callback: %s", callback)
            self.error(500)
            return
        else:
            self.response.headers['Content-Type'] = 'application/json'
            self.response.out.write(json_data)
Example #2
0
 def get(self):
     query = TweetAccessToken.gql("WHERE name = :name", name="the_only_one")
     token = query.get()
     if token:
         self.response.out.write('The service is available. Try <a href="/tweet/20">this</a>.')
     else:
         self.redirect("/tweet/setup")