"""
Display Twitter Errors nicely
"""
+ data = twitterException.response_data
try:
- # twitterException.response_data can be byte string on Python 3
- # or nornal dict on Python 2
- loadedJson = json.loads(twitterException.response_data.decode('utf8'))
- for m in loadedJson.get('errors', dict()):
- info = "Error " + str(m.get('code')) + ": " + m.get('message')
- printNicely(yellow(info))
+ for m in data.get('errors', dict()):
+ printNicely(yellow(m.get('message')))
except:
- info = "Error: " + twitterException.response_data.decode('utf8')
- printNicely(yellow(info))
+ printNicely(yellow(data))
-def format_prefix(listname = '', keyword = ''):
+def format_prefix(listname='', keyword=''):
"""
Format the custom prefix
"""
formattedPrefix = c['PREFIX']
owner = '@' + c['original_name']
place = ''
- if keyword != '':
- place = '/public'
- keyword = '#' + keyword
-
- if listname != '':
+ # Public stream
+ if keyword:
+ formattedPrefix = ''.join(formattedPrefix.split('#owner'))
+ formattedPrefix = ''.join(formattedPrefix.split('#place'))
+ formattedPrefix = ''.join(formattedPrefix.split('#me'))
+ # List stream
+ elif listname:
+ formattedPrefix = ''.join(formattedPrefix.split('#keyword'))
+ formattedPrefix = ''.join(formattedPrefix.split('#me'))
owner, place = listname.split('/')
- place = "/" + place
-
- formattedPrefix = formattedPrefix.replace("#owner", owner)
- formattedPrefix = formattedPrefix.replace("#place", place)
- formattedPrefix = formattedPrefix.replace("#keyword", keyword)
- formattedPrefix = formattedPrefix.replace("#me", '@' + c['original_name'])
+ place = '/' + place
+ # Personal stream
+ else:
+ formattedPrefix = ''.join(formattedPrefix.split('#keyword'))
+ formattedPrefix = ''.join(formattedPrefix.split('#owner'))
+ formattedPrefix = ''.join(formattedPrefix.split('#place'))
+
+ formattedPrefix = formattedPrefix.replace('#owner', owner)
+ formattedPrefix = formattedPrefix.replace('#place', place)
+ formattedPrefix = formattedPrefix.replace('#keyword', keyword)
+ formattedPrefix = formattedPrefix.replace('#me', '@' + c['original_name'])
return formattedPrefix
+
+
+def add_tweetmode_parameter(kwargs):
+ """
+ Add support for extended mode to Twitter API calls unless explicitly stated in config
+ """
+ if not c.get('DISABLE_EXTENDED_TWEETS'):
+ kwargs['tweet_mode'] = 'extended'
+ return kwargs