Merge pull request #228 from sirchia/twitterDirectMessage
Added support for direct messages in twitter notifications
This commit is contained in:
@@ -38,6 +38,13 @@ config = [{
|
||||
'advanced': True,
|
||||
'description': 'Also send message when movie is snatched.',
|
||||
},
|
||||
{
|
||||
'name': 'direct_message',
|
||||
'default': 0,
|
||||
'type': 'bool',
|
||||
'advanced': True,
|
||||
'description': 'Use direct messages for the notifications (Also applies to the mentioned users).',
|
||||
},
|
||||
],
|
||||
}
|
||||
],
|
||||
|
||||
@@ -36,12 +36,24 @@ class Twitter(Notification):
|
||||
|
||||
api = Api(self.consumer_key, self.consumer_secret, self.conf('access_token_key'), self.conf('access_token_secret'))
|
||||
|
||||
direct_message = self.conf('direct_message')
|
||||
direct_message_users = self.conf('screen_name')
|
||||
|
||||
mention = self.conf('mention')
|
||||
if mention:
|
||||
message = '%s @%s' % (message, mention.lstrip('@'))
|
||||
if direct_message:
|
||||
direct_message_users = '%s %s' % (direct_message_users, mention)
|
||||
direct_message_users = direct_message_users.replace('@',' ')
|
||||
direct_message_users = direct_message_users.replace(',',' ')
|
||||
else:
|
||||
message = '%s @%s' % (message, mention.lstrip('@'))
|
||||
|
||||
try:
|
||||
api.PostUpdate('[%s] %s' % (self.default_title, message))
|
||||
if direct_message:
|
||||
for user in direct_message_users.split():
|
||||
api.PostDirectMessage(user, '[%s] %s' % (self.default_title, message))
|
||||
else:
|
||||
api.PostUpdate('[%s] %s' % (self.default_title, message))
|
||||
except Exception, e:
|
||||
log.error('Error sending tweet: %s' % e)
|
||||
return False
|
||||
|
||||
Reference in New Issue
Block a user