def __init__(self, token, search, db, server): self.search = search self.db = db self.server = server super(ChatBox, self).__init__(token, [ (per_chat_id(), create_open(T2bot, 90, self.search, self.db, server)), (per_application(), create_open(JobMonitor, self.server, self.db)), ])
def main(): setup_bot(PLATFORM) bot = DelegatorBot(BOT_TOKEN, [ pave_event_space()( per_application(), create_open, NewsApiTelegramBot, timeout=np.inf) ]) MessageLoop(bot).run_as_thread() while 1: time.sleep(3600)
def __init__(self, token, owner_id): self._owner_id = owner_id self._seen = set() self._store = UnreadStore() super(ChatBox, self).__init__(token, [ # Here is a delegate to specially handle owner commands. (per_chat_id_in([owner_id]), create_open(OwnerHandler, 20, self._store)), # Only one MessageSaver is ever spawned for entire application. (per_application(), create_open(MessageSaver, self._store, exclude=[owner_id])), # For senders never seen before, send him a welcome message. (self._is_newcomer, custom_thread(call(self._send_welcome))), ])
def __init__(self, token): self._seen = set() self._store = MongoStore() super(ChatBox, self).__init__( token, [ # Here is a delegate to specially handle owner commands. pave_event_space()(per_chat_id_in(self._store.getUsers()), create_open, CommandsBrain, self._store, timeout=100), # Only one MessageSaver is ever spawned for entire application. (per_application(), create_open(MessageSaver, self._store, exclude=[])), # For senders never seen before, send him a welcome message. (self._is_newcomer, print('Welcome mate!')), ])
'_': lambda msg: True }]) self._count = 0 def on_message(self, msg): self._count += 1 flavor = telepot.flavor(msg) print '%s %d: %d: %s: %s' % (type(self).__name__, self.id, self._count, flavor, telepot.glance(msg, flavor=flavor)) # Do some simple stuff for every message, to be paired with per_message() def simple_function(seed_tuple): bot, msg, id = seed_tuple print 'Simply print:', msg TOKEN = sys.argv[1] bot = telepot.DelegatorBot(TOKEN, [ (per_chat_id(), create_open(ChatHandlerSubclass, timeout=10)), (per_from_id(), create_open(UserHandlerSubclass, timeout=20)), (per_inline_from_id(), create_open(UserHandlerSubclassInlineOnly, timeout=10)), (per_application(), create_open(OnlyOneInstance)), (per_message(), call(simple_function)), ]) bot.message_loop(run_forever=True)
def __init__(self, token, cl, srcPath, destPath, baseProb, superUser): super(ChatBot, self).__init__(token, [ (per_application(), create_open(FileClassifier, cl, srcPath, destPath, baseProb, superUser)), ])
def __init__(self, seed_tuple): super(OneInstanceOnly, self).__init__(seed_tuple, capture=[{'_': lambda msg: True}]) self._count = 0 def on_message(self, msg): self._count += 1 flavor = telepot.flavor(msg) print '%s %d: %d: %s: %s' % (type(self).__name__, self.id, self._count, flavor, telepot.glance(msg, flavor=flavor)) # Do some simple stuff for every message, to be paired with per_message() def simple_function(seed_tuple): bot, msg, id = seed_tuple print 'Simply print:', msg TOKEN = sys.argv[1] bot = telepot.DelegatorBot(TOKEN, [ (per_chat_id(), create_open(ChatHandlerSubclass, timeout=10)), (per_from_id(), create_open(UserHandlerSubclass, timeout=20)), (per_inline_from_id(), create_open(InlineUserHandlerSubclass, timeout=10)), (per_application(), create_open(OneInstanceOnly)), (per_message(), call(simple_function)), ]) bot.message_loop(run_forever=True)