def loop(task): tmp = utiltools.getJSON() print(task) taskid = task['id'] todo = task['what'] screen_name = task['to_whom'] filename = task['tmpfile'] status_id = task['tmpid'] setTime = task['when'] setTimeJ = setTime + timedelta(hours=9) if todo == 'timer': ans = datetime.strftime(setTimeJ, '%m月%d日 %H時%M分%S秒') + 'です。タイマーの時刻を経過しました。\n' + task['tmptext'] elif todo == 'teiki.trendword': trendwords = twf.getTrendwords() trendword = np.random.choice(trendwords) ans = dealSQL.getPhrase(s_type = 'trendword', n = 2).format(trendword) post30min = setTime + timedelta(hours=0, minutes=30) dealSQL.saveTask(taskdict = {'who':BOT_ID, 'what': todo, 'to_whom': '', 'when':post30min}) tmp['trendwordsList'] = trendwords elif todo == 'imitate.default': if twf.defaultProfile(): ans = 'デフォルトに戻りました' screen_name = '' tmp['imitating'] = '' else: ans = 'デフォルトに戻るのに失敗 @_apkX' if ans != '': twf.send(ans, screen_name = screen_name, imgfile = filename, status_id = status_id, mode = 'tweet') dealSQL.updateTask(taskid = taskid, taskdict = {'status': 'end'}) utiltools.saveJSON(tmp) return True
def __init__(self): print('loading initialData...') super(StreamListener, self).__init__() tmp['clocks'] = {} tmp['clocks']['start_time'] = datetime.utcnow() # tmp['clocks']['future30'] = tmp['clocks']['start_time'] + timedelta(hours=0, minutes=1) # tmp['clocks']['imitationLimit'] = tmp['clocks']['start_time'] # tmp['clocks']['imitationTimer'] = tmp['clocks']['start_time'] tmp['imitating'] = BOT_ID tmp['BOT_ID'] = BOT_ID tmp['BOTset'] = [ UserObject.screen_name for UserObject in twtr.list_members('_umiS', 'BOT', -1) ] tmp['myFriends'] = [ UserObject.screen_name for UserObject in twtr.list_members(BOT_ID, 'myFriends', -1) ] tmp['BLACKset'] = [ UserObject.screen_name for UserObject in twtr.list_members(BOT_ID, 'BLACKLIST', -1) ] tmp['trendwordsList'] = twf.getTrendwords() tmp['tweetStatus'] = { 'isDebug': 0, 'isSplitTweet': False, 'tempStop_since': 0 } tmp['tweetPool'] = {'cnt': 0, 'pool': []} tmp['eewIDset'] = {} utiltools.saveJSON(tmp) print('setupData has loaded! starting Streaming...')
def loop(task): tmp = utiltools.getJSON() print(task) taskid = task["id"] todo = task["what"] screen_name = task["to_whom"] filename = task["tmpfile"] status_id = task["tmpid"] setTime = task["when"] setTimeJ = setTime + timedelta(hours=9) if todo == "timer": ans = datetime.strftime(setTimeJ, "%m月%d日 %H時%M分%S秒") + "です。タイマーの時刻を経過しました。\n" + task["tmptext"] elif todo == "teiki.trendword": trendwords = twf.getTrendwords() trendword = np.random.choice(trendwords) ans = dealSQL.getPhrase(s_type="trendword", n=2).format(trendword) post30min = setTime + timedelta(hours=0, minutes=30) dealSQL.saveTask(taskdict={"who": BOT_ID, "what": todo, "to_whom": "", "when": post30min}) tmp["trendwordsList"] = trendwords elif todo == "imitate.default": if twf.defaultProfile(): ans = "デフォルトに戻りました" screen_name = "" tmp["imitating"] = "" else: ans = "デフォルトに戻るのに失敗 @_apkX" if ans != "": twf.send(ans, screen_name=screen_name, imgfile=filename, status_id=status_id, mode="tweet") dealSQL.updateTask(taskid=taskid, taskdict={"status": "end"}) utiltools.saveJSON(tmp) return True
def loopMain(task): ans = '' tmp = utiltools.getJSON() print(task) taskid = task['id'] todo = task['what'] screen_name = task['to_whom'] filename = task['tmpfile'] status_id = task['tmpid'] setTime = task['when'] setTimeJ = setTime + timedelta(hours=9) trycnt = 0 if todo == 'timer': ans = datetime.strftime(setTimeJ, '%m月%d日 %H時%M分%S秒') + 'です。タイマーの時刻を経過しました。\n' + task['tmptext'] elif todo == 'teiki.trendword': trendwords = twf.getTrendwords() trendword = np.random.choice(trendwords) ans = dealSQL.getPhrase(s_type = 'trendword', n = 2).format(trendword) post30min = setTime + timedelta(hours=0, minutes=30) dealSQL.saveTask(taskdict = {'who':BOT_ID, 'what': todo, 'to_whom': '', 'when':post30min}) tmp['trendwordsList'] = trendwords elif todo == 'imitate.default': if twf.defaultProfile(): ans = 'デフォルトに戻りました' screen_name = '' tmp['imitating'] = '' else: ans = 'デフォルトに戻るのに失敗 サポートにお問い合わせください。' elif todo == 'erase.tmp.responseWord': try: del tmp['responseWord'][task['tmptext']] except: print('del err') elif todo == 'erase.tmp.stats.tweet_cnt_hour': tmp['stats']['tweet_cnt_hour'] = 0 post1hour = setTime + timedelta(hours=1) dealSQL.saveTask(taskdict = {'who':BOT_ID, 'what': todo, 'to_whom': '', 'when':post1hour}) elif todo == 'tweet': ans = task['tmptext'] trycnt = task['tmpcnt'] if ans != '': twf.send(ans, screen_name = screen_name, imgfile = filename, status_id = status_id, mode = 'tweet', tmp = tmp, trycnt = trycnt) dealSQL.updateTask(taskid = taskid, taskdict = {'status': 'end'}) utiltools.saveJSON(tmp) return True
def __init__(self): print('loading initialData...') super(StreamListener,self).__init__() tmp['clocks'] = {} tmp['clocks']['start_time'] = datetime.utcnow() # tmp['clocks']['future30'] = tmp['clocks']['start_time'] + timedelta(hours=0, minutes=1) # tmp['clocks']['imitationLimit'] = tmp['clocks']['start_time'] # tmp['clocks']['imitationTimer'] = tmp['clocks']['start_time'] tmp['imitating'] = BOT_ID tmp['BOT_ID'] = BOT_ID tmp['BOTset'] = [UserObject.screen_name for UserObject in twtr.list_members('_umiS', 'BOT', -1)] tmp['myFriends'] = [UserObject.screen_name for UserObject in twtr.list_members(BOT_ID, 'myFriends', -1)] tmp['BLACKset'] = [UserObject.screen_name for UserObject in twtr.list_members(BOT_ID, 'BLACKLIST', -1)] tmp['trendwordsList'] = twf.getTrendwords() tmp['tweetStatus'] = {'isDebug':0, 'isSplitTweet': False, 'tempStop_since':0} tmp['tweetPool'] = {'cnt': 0, 'pool':[]} tmp['eewIDset'] = {} utiltools.saveJSON(tmp) print('setupData has loaded! starting Streaming...')