Пример #1
0
def main(options):
    verbose = options['verbose']

    worker_creator = WorkerCreator(options.vumi_options)
    worker_creator.create_worker_by_class(MessageInjector, options)

    in_file = sys.stdin
    out_file = sys.stdout if verbose else None

    worker = yield MessageInjector.WORKER_QUEUE.get()
    yield worker.process_file(in_file, out_file)
    reactor.stop()
Пример #2
0
def main(options):
    verbose = options['verbose']

    worker_creator = WorkerCreator(options.vumi_options)
    worker_creator.create_worker_by_class(
        MessageInjector, options)

    in_file = sys.stdin
    out_file = sys.stdout if verbose else None

    worker = yield MessageInjector.WORKER_QUEUE.get()
    yield worker.process_file(in_file, out_file)
    reactor.stop()
Пример #3
0
def main(options):
    vumi_options = {}
    verbose = options['verbose']
    for opt in [i[0] for i in Options.optParameters]:
        vumi_options[opt] = options.pop(opt)

    worker_creator = WorkerCreator(vumi_options)
    worker_creator.create_worker_by_class(
        MessageInjector, options)

    in_file = sys.stdin
    out_file = sys.stdout if verbose else None

    worker = yield MessageInjector.WORKER_QUEUE.get()
    yield worker.process_file(in_file, out_file)
    reactor.stop()
Пример #4
0
def main(options):
    worker_creator = WorkerCreator(options.vumi_options)
    service = worker_creator.create_worker_by_class(
        ContactMigrationWorker, options.get_vumigo_config())
    service.startService()

    worker = yield ContactMigrationWorker.WORKER_QUEUE.get()
    yield worker.migrate_contacts_for_account(options['user-account-key'])
    reactor.stop()
Пример #5
0
def main(options):
    worker_creator = WorkerCreator(options.vumi_options)
    service = worker_creator.create_worker_by_class(
        ContactMigrationWorker, options.get_vumigo_config())
    service.startService()

    worker = yield ContactMigrationWorker.WORKER_QUEUE.get()
    yield worker.migrate_contacts_for_account(options['user-account-key'])
    reactor.stop()
Пример #6
0
def main(options):
    worker_creator = WorkerCreator(options.vumi_options)
    service = worker_creator.create_worker_by_class(
        JsBoxSendWorker, options.get_vumigo_config())
    service.startService()

    worker = yield JsBoxSendWorker.WORKER_QUEUE.get()
    yield worker.send_jsbox(
        options['user-account-key'], options['conversation-key'],
        options['hz'], options['exclude-addresses-file'])
    reactor.stop()
Пример #7
0
def main(options):
    worker_creator = WorkerCreator(options.vumi_options)
    service = worker_creator.create_worker_by_class(
        JsBoxSendWorker, options.get_vumigo_config())
    service.startService()

    worker = yield JsBoxSendWorker.WORKER_QUEUE.get()
    yield worker.send_jsbox(options['user-account-key'],
                            options['conversation-key'], options['hz'],
                            options['exclude-addresses-file'])
    reactor.stop()
Пример #8
0
 def create_worker(self):
     config = self.config
     worker_creator = WorkerCreator({
         'hostname': config.amqp_hostname,
         'port': config.amqp_port,
         'username': config.amqp_username,
         'password': config.amqp_password,
         'vhost': config.amqp_vhost,
         'specfile': config.amqp_spec,
     })
     return worker_creator.create_worker_by_class(
         MetricWorker, {'prefix': config.prefix})
Пример #9
0
def run_bench(loops):
    opts = VumiOptions()
    opts.postOptions()
    worker_creator = WorkerCreator(opts.vumi_options)

    app = worker_creator.create_worker_by_class(
        BenchApp, {
            "transport_name": "dummy",
            "javascript": """
            api.on_inbound_message = function(command) {
                this.request('outbound.reply_to', {
                    content: 'reply',
                    in_reply_to: command.msg.message_id,
                },
                function (reply) {
                    this.done();
                });
            };
        """,
            "sandbox": {
                'log': {
                    'cls': 'vumi.application.sandbox.LoggingResource',
                },
                'outbound': {
                    'cls': 'vumi.application.sandbox.OutboundResource',
                },
            },
        })

    transport = worker_creator.create_worker_by_class(
        BenchTransport, {
            "transport_name": "dummy",
        })

    yield transport.startService()
    log.msg("Waiting for transport ...")
    yield BenchTransport.WORKER_QUEUE.get()

    yield app.startService()
    log.msg("Waiting for worker ...")
    yield BenchApp.WORKER_QUEUE.get()

    print "Starting %d loops ..." % (loops, )
    timer = Timer()
    for i in range(loops):
        with timer:
            transport.publish_message(
                content="Hi!",
                to_addr="+1234",
                from_addr="+5678",
                transport_type="ussd",
            )
            reply = yield transport.message_queue.get()
            log.msg("Reply ID: %s" % reply['message_id'])

    print "Total time: %.2f" % timer.total()
    print "Time per message: %g" % timer.mean()
    print "  max: %g, min: %g" % (timer.max(), timer.min())
    print "  loops: %d" % timer.loops()

    yield transport.stopService()
    yield app.stopService()
    reactor.stop()
Пример #10
0
def run_bench(loops):
    opts = VumiOptions()
    opts.postOptions()
    worker_creator = WorkerCreator(opts.vumi_options)

    app = worker_creator.create_worker_by_class(BenchApp, {
        "transport_name": "dummy",
        "javascript": """
            api.on_inbound_message = function(command) {
                this.request('outbound.reply_to', {
                    content: 'reply',
                    in_reply_to: command.msg.message_id,
                },
                function (reply) {
                    this.done();
                });
            };
        """,
        "sandbox": {
            'log': {
                'cls': 'vumi.application.sandbox.LoggingResource',
            },
            'outbound': {
                'cls': 'vumi.application.sandbox.OutboundResource',
            },
        },
    })

    transport = worker_creator.create_worker_by_class(BenchTransport, {
        "transport_name": "dummy",
    })

    yield transport.startService()
    log.msg("Waiting for transport ...")
    yield BenchTransport.WORKER_QUEUE.get()

    yield app.startService()
    log.msg("Waiting for worker ...")
    yield BenchApp.WORKER_QUEUE.get()

    print "Starting %d loops ..." % (loops,)
    timer = Timer()
    for i in range(loops):
        with timer:
            transport.publish_message(
                content="Hi!",
                to_addr="+1234",
                from_addr="+5678",
                transport_type="ussd",
            )
            reply = yield transport.message_queue.get()
            log.msg("Reply ID: %s" % reply['message_id'])

    print "Total time: %.2f" % timer.total()
    print "Time per message: %g" % timer.mean()
    print "  max: %g, min: %g" % (timer.max(), timer.min())
    print "  loops: %d" % timer.loops()

    yield transport.stopService()
    yield app.stopService()
    reactor.stop()