def main(): client = LineClient(authToken=token) for op in client.longPoll(): print op print op[0] print op[1] print op[2] print op[3]
class Black(object): prefix = "!" name = "검정봇" creator = "carpedm20" def __init__(self, id=None, password=None, authToken=None): if not (id and password or authToken): msg = "`id` and `password` or `authToken` is needed" raise Exception(msg) self._session = requests.Session() self.talk = Talk(self.name, self.creator, self._session) self.id = id self.password = password if authToken: self.line = LineClient(authToken=authToken) else: self.line = LineClient(self.id, self.password) def run(self): ops = [] for op in self.line.longPoll(): ops.append(op) for op in ops: sender = op[0] receiver = op[1] message = op[2] try: if message.text[0] == self.prefix: response = self.talk.get_message(sender, receiver, message.text[1:]) receiver.sendMessage(response) else: pass except Exception as e: print e
def run_bot(): try: client = LineClient(EMAIL, PASSWORD) # client = LineClient(authToken=token) except: print "Login Failed" print "===START SERVER===" while True: op_list = [] for op in client.longPoll(): op_list.append(op) for op in op_list: sender = op[0] receiver = op[1] message = op[2] cr = CekResi(message.text) print "RESI %s" % message.text response = cr.post() msg = response sender.sendMessage("[%s] %s" % (sender.name, msg))
import regexp import WebCrawler import weather KeyFile = open("token", "r") AuthToken = KeyFile.read().strip() try: client = LineClient(authToken=AuthToken) except: print "Hey Login Failed" while True: op_list = [] for op in client.longPoll(): op_list.append(op) for op in op_list: sender = op[0] receiver = op[1] message = op[2] msg = message.text print str(receiver) + "\t" + str(sender) + "\t" + str(message) m = regexp.REMatcher(msg) if str(msg).strip() == "None": print("It's a Sticker") break elif m.match(r't-bot'):
op_list = [] timeSeen = [] appendSeen = [] dataResult = [] #recheck userList = [] timelist = [] contacts = [] recheckData = [] #cancelAll myListMember = [] #getFriend list @ listFriend = [] for op in client.longPoll(): op_list.append(op) for op in op_list: sender = op[0] receiver = op[1] message = op[2] if message.text is not None: msg = message.text # hadist if '/hd' in msg: arg = msg.split('-') if len(arg) > 1: imam = arg[0][3:].strip() nom = arg[1].strip()
#recent_group_msg = client_group.getRecentMessages(count=10) #print "RecentMessages : %s\r\n" % recent_group_msg while True: result = client.service.ReceiveMessage() if len(result) > 0: for list in result[0]: item_id = list["ID"] room_name = list["ROOM"] value = list["VALUE"] client_group.sendMessage(value) op_list = [] for op in lineclient.longPoll(): op_list.append(op) for op in op_list: sender = op[0] receiver = op[1] message = op[2] msg = message.text fromwhom = lineclient.getContactByName(sender.name) #print "fromwhom : %s\r\n" % fromwhom result = process(msg) if result != "": receiver.sendMessage("%s" % result)
class LineLib(object): def __init__(self): self._inst = None self.token = None self.cname = "Ubuntu" self.timeStarted = None self.sleep = 0.2 self.autoAcceptInviteTimer = 20 self._tasks = {} self.Login() def setInterval(self, interval, func, *args, **kw): """ runs every x seconds @interval: seconds until run @func: function to call once interval has been reached @args: function arguments @example1: self.setInterval(3, function, pr1, pr2) @example2: self.setInterval(3, function) returns the task you can use this to cancel using the cancel() method """ task = _Task(interval, func, *args, **kw) task.interval() return task def setTimeout(self, interval, func, *args, **kw): """ @interval: seconds until run @func: function to call once interval has been reached @args: function arguments @example1: self.setTimeout(3, function, pr1, pr2) @example2: self.setTimeout(3, function) returns the task you can use this to cancel using the cancel() method """ task = _Task(interval, func, *args, **kw) task.timeout() return task def setIntervalByName(self, name, interval, func, *args, **kw): if name in self._tasks.keys(): return False else: self._tasks[name] = self.setInterval(interval, func, *args, **kw) return True def setTimeoutByName(self, name, interval, func, *args, **kw): if name in self._tasks.keys(): return False else: self._tasks[name] = self.setTimeout(interval, func, *args, **kw) return True def getTaskByName(self, name): """ @name: name of task returns the task set by a name """ if name in self._tasks.keys(): return self._tasks[name] def Login(self): try: self.onInit() self._inst = LineClient(authToken=self.token, com_name=self.cname) self.timeStarted = float(time.time()) self.onLoginSuccessfull() except: self.onLoginFailure() def getRooms(self): return self._inst.rooms def getGroups(self): return self._inst.groups def getContacts(self): return self._inst.contacts def sendImage(self, recv, url): recv.sendImageWithUrl(url) def getRecentMessages(self, recv, count): return recv.getRecentMessages(count) def acceptAll(self): for grp in self.getGroups(): try: grp.acceptGroupInvitation() except: pass def main(self): self.setIntervalByName("acceptAll", self.autoAcceptInviteTimer, self.acceptAll) while True: task.do_all_tasks() # we use the loop to our avantage :) ops = [] for op in self._inst.longPoll(): ops.append(op) for op in ops: sender = op[0] recv = op[1] message = op[2] self.onMessage(recv, sender, message) time.sleep(self.sleep) def onMessage(self, recv, user, msg): pass """ @recv: needed to send the message. It probably has other uses but, not sure yet. @user: this holds the user info @msg: this holds the msg info """ def onLoginSuccessFull(self): pass """ basically says we were able to connect """ def onLoginFailure(self): pass """ basically it means we failed to connect most likely due to a bad token """ def onInit(self): pass """ this just allows us to set some params """ def cred(self): return """
while True: time.sleep(random.randrange(3, 5)) op_list = [] op_count = 0 dic_dis = dicloader(f_dis) dic_run = dicloader(f_run) dic_ccp = dicloader(f_ccp) dic_sce = dicloader(f_sce) dic_graph = dicloader(f_graph) dic_orun = dicloader(u_run) dic_odis = dicloader(u_dis) dic_occp = dicloader(u_ccp) dic_osce = dicloader(u_sce) try: for op in client.longPoll(debug=True): op_list.append(op) op_count += 1 for op in op_list: sender = op[0] receiver = op[1] msg = op[2].text contype = op[2].contentType print "[%s] [ContentType : %s] [%s->%s] : %s" % (str( datetime.now()), contype, sender.name, receiver.name, msg) if contype == 0 and chkcall(msg): if op_count > maxread: warnflood()
def main(): client = LineClient(authToken=token) print client.revision for op in client.longPoll(): print op