def throttle_incoming(): whitelist = Whitelist(get_redis_client(), Encoder()) blacklist = Blacklist(get_redis_client(), Encoder()) contact = request.args.get('sender') message = request.args.get('message') keyword_filter = KeywordFilter(whitelist, message, contact) contact_filter = WhitelistContactFilter(whitelist, contact) incoming_contact_filter = IncomingContactFilter(blacklist, contact) high_filters = [keyword_filter, contact_filter] low_filters = [incoming_contact_filter] processor = FilterProcessor(high_filters, low_filters) priority = processor.execute() process_request(app.config, request.query_string, priority) return "Done"
def outgoing_message_router(): message = request.args.get('text', None) receivers = request.args.get('to', '') message_filter = RegistrationMessageFilter(get_steps_cache_instance(), message) receiver_count_filter = ReceiverCountFilter(receivers.split(" "), 1) blacklist = Blacklist(get_redis_client(), Encoder()) blacklist_filter = BlacklistFilter(blacklist, message) high_filters = [message_filter, receiver_count_filter] low_filters = [blacklist_filter] processor = FilterProcessor(high_filters, low_filters) priority = processor.execute() smsc_router = SMSCRouter(app.config, app.logger) smsc_router.route(request.args, priority) return "Done"