def handle_messenger_message(message_id, bot_id): try: message = caching.get_or_set(MessengerMessage, message_id) messenger_bot = caching.get_or_set(MessengerBot, bot_id) except MessengerMessage.DoesNotExist: logger.error("Message %s does not exists" % message_id) except MessengerBot.DoesNotExist: logger.error("Bot %s does not exists or disabled" % bot_id) except: logger.error("Error handling update %s from bot %s" % (message_id, bot_id)) else: try: messenger_bot.bot.handle_message(message, messenger_bot) except: exc_info = sys.exc_info() traceback.print_exception(*exc_info) logger.error("Error processing %s for bot %s" % (message, messenger_bot)) else: # Each update is only used once caching.delete(MessengerMessage, message)
def handle_update(update_id, bot_id): try: update = caching.get_or_set(TelegramUpdate, update_id) telegram_bot = caching.get_or_set(TelegramBot, bot_id) except TelegramUpdate.DoesNotExist: logger.error("Update %s does not exists" % update_id) except TelegramBot.DoesNotExist: logger.error("Bot %s does not exists or disabled" % bot_id) except: logger.error("Error handling update %s from bot %s" % (update_id, bot_id)) else: try: telegram_bot.bot.handle_message(update.message, telegram_bot) except: exc_info = sys.exc_info() traceback.print_exception(*exc_info) logger.error("Error processing %s for bot %s" % (update, telegram_bot)) else: # Each update is only used once caching.delete(TelegramUpdate, update)
def handle_update(update_id, bot_id): try: update = caching.get_or_set(TelegramUpdate, update_id) telegram_bot = caching.get_or_set(TelegramBot, bot_id) except TelegramUpdate.DoesNotExist: logger.error("Update %s does not exists" % update_id) except TelegramBot.DoesNotExist: logger.error("Bot %s does not exists or disabled" % bot_id) except: logger.error("Error handling update %s from bot %s" % (update_id, bot_id)) else: try: telegram_bot.bot.handle_message(update, telegram_bot) except: exc_info = sys.exc_info() traceback.print_exception(*exc_info) logger.error("Error processing %s for bot %s" % (update, telegram_bot)) else: # Each update is only used once caching.delete(TelegramUpdate, update)
def delete_cache_source_states(sender, instance, **kwargs): caching.delete(instance._meta.model, instance, 'source_states')
def delete_cache_handlers(sender, instance, **kwargs): caching.delete(instance.bot._meta.model, instance.bot, 'handlers')
def delete_cache_env_vars(sender, instance, **kwargs): caching.delete(instance.bot._meta.model, instance.bot, 'env_vars')
def delete_cache(sender, instance, **kwargs): caching.delete(sender, instance)