--- a/script/utils/tweet_twitter_user.py Tue May 07 18:28:26 2013 +0200
+++ b/script/utils/tweet_twitter_user.py Fri May 10 13:34:40 2013 +0200
@@ -38,6 +38,7 @@
parser.add_option("-t", dest="token_filename", metavar="TOKEN_FILENAME", default=".oauth_token",
help="Token file name")
parser.add_option("-S", dest="simulate", metavar="SIMULATE", default=False, action="store_true", help="Simulate call to twitter. Do not change the database")
+ parser.add_option("--direct-message", dest="direct_message", metavar="DIRECT_MESSAGE", default=False, action="store_true", help="send direc t message to the user, else create a status update mentioning the user (@username)")
parser.add_option("-f", dest="force", metavar="FORCE", default=False, action="store_true", help="force sending message to all user even if it has already been sent")
@@ -103,16 +104,25 @@
query_res = query.all()
- acess_token_key, access_token_secret = get_oauth_token(options.token_filename, application_name=APPLICATION_NAME, consumer_key=CONSUMER_KEY, consumer_secret=CONSUMER_SECRET)
+ acess_token_key, access_token_secret = get_oauth_token(consumer_key=CONSUMER_KEY, consumer_secret=CONSUMER_SECRET, token_file_path=options.token_filename, application_name=APPLICATION_NAME)
t = twitter.Twitter(auth=twitter.OAuth(acess_token_key, access_token_secret, CONSUMER_KEY, CONSUMER_SECRET))
for user in query_res:
screen_name = user.screen_name
- message = u"@%s: %s" % (screen_name, base_message)
- get_logger().debug("new status : " + message) #@UndefinedVariable
+ if options.direct_message:
+ message = base_message
+ else:
+ message = u"@%s: %s" % (screen_name, base_message)
+
+ print("new message : " + message)
+ get_logger().debug("new message : " + message) #@UndefinedVariable
+
if not options.simulate:
- t.statuses.update(status=message)
+ if options.direct_message:
+ t.direct_messages.new(user_id=user.id, screen_name=screen_name, text=message)
+ else:
+ t.statuses.update(status=message)
user_message = UserMessage(user_id=user.id, message_id=message_obj.id)
session.add(user_message)
session.flush()