Example #1
0
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)        
Example #2
0
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)        
Example #3
0
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)
Example #4
0
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)
Example #5
0
def delete_cache_source_states(sender, instance, **kwargs):
    caching.delete(instance._meta.model, instance, 'source_states')
Example #6
0
def delete_cache_handlers(sender, instance, **kwargs):
    caching.delete(instance.bot._meta.model, instance.bot, 'handlers')
Example #7
0
def delete_cache_env_vars(sender, instance, **kwargs):
    caching.delete(instance.bot._meta.model, instance.bot, 'env_vars')
Example #8
0
def delete_cache(sender, instance, **kwargs):
    caching.delete(sender, instance)