Browse Source

Merge pull request #228 from sirchia/twitterDirectMessage

Added support for direct messages in twitter notifications
tags/build/2.0.0.pre1
Ruud 13 years ago
parent
commit
cbd23c4f65
  1. 7
      couchpotato/core/notifications/twitter/__init__.py
  2. 16
      couchpotato/core/notifications/twitter/main.py

7
couchpotato/core/notifications/twitter/__init__.py

@ -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).',
},
], ],
} }
], ],

16
couchpotato/core/notifications/twitter/main.py

@ -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

Loading…
Cancel
Save