Example #1
0
 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)),
   ])
Example #2
0
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)
Example #3
0
    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))),
        ])
Example #4
0
    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!')),
            ])
Example #5
0
                                                  '_': 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)),
   ])
Example #7
0
    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)