36 parser.add_option("-w", "--password", dest="password", |
36 parser.add_option("-w", "--password", dest="password", |
37 help="password", metavar="PASSWORD") |
37 help="password", metavar="PASSWORD") |
38 parser.add_option("-t", dest="token_filename", metavar="TOKEN_FILENAME", default=".oauth_token", |
38 parser.add_option("-t", dest="token_filename", metavar="TOKEN_FILENAME", default=".oauth_token", |
39 help="Token file name") |
39 help="Token file name") |
40 parser.add_option("-S", dest="simulate", metavar="SIMULATE", default=False, action="store_true", help="Simulate call to twitter. Do not change the database") |
40 parser.add_option("-S", dest="simulate", metavar="SIMULATE", default=False, action="store_true", help="Simulate call to twitter. Do not change the database") |
|
41 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)") |
41 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") |
42 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") |
42 |
43 |
43 |
44 |
44 set_logging_options(parser) |
45 set_logging_options(parser) |
45 |
46 |
107 t = twitter.Twitter(auth=twitter.OAuth(acess_token_key, access_token_secret, CONSUMER_KEY, CONSUMER_SECRET)) |
108 t = twitter.Twitter(auth=twitter.OAuth(acess_token_key, access_token_secret, CONSUMER_KEY, CONSUMER_SECRET)) |
108 |
109 |
109 for user in query_res: |
110 for user in query_res: |
110 screen_name = user.screen_name |
111 screen_name = user.screen_name |
111 |
112 |
112 message = u"@%s: %s" % (screen_name, base_message) |
113 if options.direct_message: |
113 get_logger().debug("new status : " + message) #@UndefinedVariable |
114 message = base_message |
|
115 else: |
|
116 message = u"@%s: %s" % (screen_name, base_message) |
|
117 |
|
118 print("new message : " + message) |
|
119 get_logger().debug("new message : " + message) #@UndefinedVariable |
|
120 |
114 if not options.simulate: |
121 if not options.simulate: |
115 t.statuses.update(status=message) |
122 if options.direct_message: |
|
123 t.direct_messages.new(user_id=user.id, screen_name=screen_name, text=message) |
|
124 else: |
|
125 t.statuses.update(status=message) |
116 user_message = UserMessage(user_id=user.id, message_id=message_obj.id) |
126 user_message = UserMessage(user_id=user.id, message_id=message_obj.id) |
117 session.add(user_message) |
127 session.add(user_message) |
118 session.flush() |
128 session.flush() |
119 finally: |
129 finally: |
120 # if message created and simulate, do not |
130 # if message created and simulate, do not |