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,
|
'advanced': True,
|
||||||
'description': 'Also send message when movie is snatched.',
|
'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'))
|
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')
|
mention = self.conf('mention')
|
||||||
if 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:
|
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:
|
except Exception, e:
|
||||||
log.error('Error sending tweet: %s' % e)
|
log.error('Error sending tweet: %s' % e)
|
||||||
return False
|
return False
|
||||||
|
|||||||
Reference in New Issue
Block a user