from .c_image import *
from .py3patch import *
from .emoji import *
+from .util import *
# Global values
g = {}
notice += light_magenta('You should upgrade with ')
notice += light_green('pip install -U rainbowstream')
printNicely(notice)
+ else:
+ notice = light_yellow('You are running latest version (')
+ notice += light_green(current)
+ notice += light_yellow(')')
+ printNicely(notice)
except:
pass
usage += s * 2 + light_green('p') + ' will pause the stream.\n'
usage += s * 2 + light_green('r') + ' will unpause the stream.\n'
usage += s * 2 + light_green('c') + ' will clear the screen.\n'
+ usage += s * 2 + light_green('v') + ' will show version info.\n'
usage += s * 2 + light_green('q') + ' will quit.\n'
# End
usage += '\n'
'p',
'r',
'c',
- 'q'
+ 'v',
+ 'q',
]
# Handle function set
pause,
replay,
clear,
- quit
+ upgrade_center,
+ quit,
]
[], # pause
[], # reconnect
[], # clear
+ [], # version
[], # quit
]
))
# Block new stream until other one exits
StreamLock.acquire()
g['stream_stop'] = False
+ last_tweet_time = time.time()
for tweet in tweet_iter:
if tweet is None:
printNicely("-- None --")
StreamLock.release()
break
elif tweet.get('text'):
+ # Slow down the stream by STREAM_DELAY config key
+ if time.time() - last_tweet_time < c['STREAM_DELAY']:
+ continue
+ last_tweet_time = time.time()
# Check the semaphore pause and lock (stream process only)
if g['pause']:
continue
elif tweet.get('event'):
c['events'].append(tweet)
print_event(tweet)
- except TwitterHTTPError:
+ except TwitterHTTPError as e:
printNicely('')
printNicely(
- magenta("We have maximum connection problem with twitter'stream API right now :("))
+ magenta("We have connection problem with twitter'stream API right now :("))
+ detail_twitter_error(e)
+ sys.stdout.write(g['decorated_name'](c['PREFIX']))
+ sys.stdout.flush()
def fly():
proxy_connect(args)
init(args)
# Twitter API connection problem
- except TwitterHTTPError:
+ except TwitterHTTPError as e:
printNicely('')
printNicely(
- magenta("We have connection problem with twitter'stream API right now :("))
- printNicely(magenta("Let's try again later."))
+ magenta("We have connection problem with twitter'REST API right now :("))
+ detail_twitter_error(e)
save_history()
sys.exit()
# Proxy connection problem