async def main(*args, **kwargs): arguments = docopt(__doc__, version=get_version()) #print(arguments) formatter = "[%(asctime)s] :: %(levelname)s - %(message)s" if arguments['-d']: level = logging.DEBUG else: level = logging.INFO logging.basicConfig(level=level, format=formatter) config = None if arguments['-c']: config = read_yaml_config(arguments['-c']) else: config = read_yaml_config(os.path.join(os.path.dirname(os.path.realpath(__file__)), 'default_client.yaml')) logger.debug("Using default configuration") client_id = arguments.get("-i", None) if not client_id: client_id = _gen_client_id() if arguments['-k']: config['keep_alive'] = int(arguments['-k']) if arguments['--will-topic'] and arguments['--will-message'] and arguments['--will-qos']: config['will'] = dict() config['will']['topic'] = arguments['--will-topic'] config['will']['message'] = arguments['--will-message'].encode('utf-8') config['will']['qos'] = int(arguments['--will-qos']) config['will']['retain'] = arguments['--will-retain'] async with open_mqttclient(client_id=client_id, config=config) as C: await do_pub(C, arguments)
def main(*args, **kwargs): if sys.version_info[:2] < (3, 4): logger.fatal("Error: Python 3.4+ is required") sys.exit(-1) arguments = docopt(__doc__, version=get_version()) formatter = "[%(asctime)s] :: %(levelname)s - %(message)s" #debug mode if arguments['-d']: level = logging.DEBUG else: level = logging.INFO logging.basicConfig(level=level, format=formatter) config = None if arguments['-c']: config = read_yaml_config(arguments['-c']) else: config = read_yaml_config( os.path.join(os.path.dirname(os.path.realpath(__file__)), 'config.yaml')) logger.debug("Using default configuration") loop = asyncio.get_event_loop() #啟動broker broker = Broker(config) try: loop.run_until_complete(broker.start()) loop.run_forever() except KeyboardInterrupt: loop.run_until_complete(broker.shutdown()) finally: loop.close()
def main(*args, **kwargs): if sys.version_info[:2] < (3, 4): logger.fatal("Error: Python 3.4+ is required") sys.exit(-1) arguments = docopt(__doc__, version=get_version()) formatter = "[%(asctime)s] :: %(levelname)s - %(message)s" if arguments['-d']: level = logging.DEBUG else: level = logging.INFO logging.basicConfig(level=level, format=formatter) config = None if arguments['-c']: config = read_yaml_config(arguments['-c']) else: config = read_yaml_config(os.path.join(os.path.dirname(os.path.realpath(__file__)), 'default_broker.yaml')) logger.debug("Using default configuration") loop = asyncio.get_event_loop() broker = Broker(config) try: loop.run_until_complete(broker.start()) loop.run_forever() except KeyboardInterrupt: loop.run_until_complete(broker.shutdown()) finally: loop.close()
def main(): if sys.version_info[:2] < (3, 4): logger.fatal("Error: Python 3.4+ is required") sys.exit(-1) config = None config = read_yaml_config(os.path.join(os.path.dirname(os.path.realpath(__file__)), 'default_client.yaml')) logger.debug("Using default configuration") loop = asyncio.get_event_loop() client_id = "mqtt_publisher_exp" client = MQTTClient(client_id=client_id, config=config, loop=loop) try: logger.info("%s Connecting to broker" % client.client_id) loop.run_until_complete(client.connect(uri=BROKER_URL)) qos = QOS_1 topic = "topic_1" for _, row in data.iterrows(): row['TIMING_client_request_timestamp'] = time() message = row.to_json().encode(encoding='utf-8') logger.info("%s Publishing to '%s'" % (client.client_id, topic)) loop.run_until_complete(client.publish(topic, message, qos)) sleep(0.01) except KeyboardInterrupt: loop.run_until_complete(client.disconnect()) logger.info("%s Disconnected from broker" % client.client_id) except ConnectException as ce: logger.fatal("connection to '%s' failed: %r" % (BROKER_URL, ce)) except asyncio.CancelledError as cae: logger.fatal("Publish canceled due to prvious error")
def main(*args, **kwargs): if sys.version_info[:2] < (3, 4): logger.fatal("Error: Python 3.4+ is required") sys.exit(-1) formatter = "[%(asctime)s] :: %(levelname)s - %(message)s" level = logging.INFO logging.basicConfig(level=level, format=formatter) config = read_yaml_config( os.path.join(os.path.dirname(os.path.realpath(__file__)), 'broker_config.yaml')) logger.debug("Using default configuration") print(config) loop = asyncio.get_event_loop() broker = Broker(config) try: loop.run_until_complete(broker.start()) loop.run_forever() except KeyboardInterrupt: loop.run_until_complete(broker.shutdown()) finally: loop.close()
def main(*args, **kwargs): if sys.version_info[:2] < (3, 6): logger.fatal("Error: Python 3.6+ is required") sys.exit(-1) arguments = docopt(__doc__, version=hbmqtt.__version__) # print(arguments) formatter = "[%(asctime)s] :: %(levelname)s - %(message)s" if arguments["-d"]: level = logging.DEBUG else: level = logging.INFO logging.basicConfig(level=level, format=formatter) if arguments["-c"]: config = read_yaml_config(arguments["-c"]) else: config = read_yaml_config( os.path.join( os.path.dirname(os.path.realpath(__file__)), "default_client.yaml" ) ) logger.debug("Using default configuration") loop = asyncio.get_event_loop() client_id = arguments.get("-i", None) if not client_id: client_id = _gen_client_id() if arguments["-k"]: config["keep_alive"] = int(arguments["-k"]) if ( arguments["--will-topic"] and arguments["--will-message"] and arguments["--will-qos"] ): config["will"] = dict() config["will"]["topic"] = arguments["--will-topic"] config["will"]["message"] = arguments["--will-message"].encode("utf-8") config["will"]["qos"] = int(arguments["--will-qos"]) config["will"]["retain"] = arguments["--will-retain"] client = MQTTClient(client_id=client_id, config=config, loop=loop) loop.run_until_complete(do_pub(client, arguments)) loop.close()
def main(*args, **kwargs): if sys.version_info[:2] < (3, 4): logger.fatal("Error: Python 3.4+ is required") sys.exit(-1) arguments = docopt(__doc__, version=get_version()) #print(arguments) formatter = "[%(asctime)s] :: %(levelname)s - %(message)s" if arguments['-d']: level = logging.DEBUG else: level = logging.INFO logging.basicConfig(level=level, format=formatter) config = None if arguments['-c']: config = read_yaml_config(arguments['-c']) else: config = read_yaml_config( os.path.join(os.path.dirname(os.path.realpath(__file__)), 'default_client.yaml')) logger.debug( os.path.join(os.path.dirname(os.path.realpath(__file__)), 'default_client.yaml')) logger.debug("Using default configuration") loop = asyncio.get_event_loop() client_id = arguments.get("-i", None) if not client_id: client_id = _gen_client_id() if arguments['-k']: config['keep_alive'] = int(arguments['-k']) if arguments['--will-topic'] and arguments['--will-message'] and arguments[ '--will-qos']: config['will'] = dict() config['will']['topic'] = arguments['--will-topic'] config['will']['message'] = arguments['--will-message'].encode('utf-8') config['will']['qos'] = int(arguments['--will-qos']) config['will']['retain'] = arguments['--will-retain'] client = MQTTClient(client_id=client_id, config=config, loop=loop) loop.run_until_complete(do_sub(client, arguments)) loop.close()
def _read_password_file(self): try: password_file = self.auth_config.get('password-file', None) if password_file: self._users = read_yaml_config(password_file) else: self.context.logger.debug( "Configuration parameter 'password_file' not found") except FileNotFoundError: pass
async def main(*args, **kwargs): arguments = docopt(__doc__, version=get_version()) formatter = "[%(asctime)s] :: %(levelname)s - %(message)s" if arguments['-d']: level = logging.DEBUG else: level = logging.INFO logging.basicConfig(level=level, format=formatter) config = None if arguments['-c']: config = read_yaml_config(arguments['-c']) else: config = read_yaml_config(os.path.join(os.path.dirname(os.path.realpath(__file__)), 'default_broker.yaml')) logger.debug("Using default configuration") async with create_broker(config) as broker: while True: await anyio.sleep(99999)
def main(*args, **kwargs): if sys.version_info[:2] < (3, 4): logger.fatal("Error: Python 3.4+ is required") sys.exit(-1) arguments = docopt(__doc__, version=get_version()) #print(arguments) formatter = "[%(asctime)s] :: %(levelname)s - %(message)s" if arguments['-d']: level = logging.DEBUG else: level = logging.INFO logging.basicConfig(level=level, format=formatter) config = None if arguments['-c']: config = read_yaml_config(arguments['-c']) else: config = read_yaml_config(os.path.join(os.path.dirname(os.path.realpath(__file__)), 'default_client.yaml')) logger.debug(os.path.join(os.path.dirname(os.path.realpath(__file__)), 'default_client.yaml')) logger.debug("Using default configuration") loop = asyncio.get_event_loop() client_id = arguments.get("-i", None) if not client_id: client_id = _gen_client_id() if arguments['-k']: config['keep_alive'] = int(arguments['-k']) if arguments['--will-topic'] and arguments['--will-message'] and arguments['--will-qos']: config['will'] = dict() config['will']['topic'] = arguments['--will-topic'] config['will']['message'] = arguments['--will-message'].encode('utf-8') config['will']['qos'] = int(arguments['--will-qos']) config['will']['retain'] = arguments['--will-retain'] client = MQTTClient(client_id=client_id, config=config, loop=loop) loop.run_until_complete(do_sub(client, arguments)) loop.close()
def _read_acl_file(self): try: self._users = read_yaml_config(self.acl_file) except FileNotFoundError: pass
def main(*args, **kwargs): if sys.version_info[:2] < (3, 4): logger.fatal("Error: Python 3.4+ is required") sys.exit(-1) arguments = docopt(__doc__, version=get_version()) formatter = "[%(asctime)s] :: %(levelname)s - %(message)s" if arguments['-d']: level = logging.DEBUG else: level = logging.INFO logging.basicConfig(level=level, format=formatter) config = None if arguments['-c']: config = read_yaml_config(arguments['-c']) else: config = read_yaml_config(os.path.join(os.path.dirname(os.path.realpath(__file__)), 'default_client.yaml')) logger.debug("Using default configuration") loop = asyncio.get_event_loop() client_id = arguments.get("-i", None) if not client_id: client_id = _gen_client_id() if arguments['-k']: config['keep_alive'] = int(arguments['-k']) if arguments['--will-topic'] and arguments['--will-message'] and arguments['--will-qos']: config['will'] = dict() config['will']['topic'] = arguments['--will-topic'] config['will']['message'] = arguments['--will-message'].encode('utf-8') config['will']['qos'] = int(arguments['--will-qos']) config['will']['retain'] = arguments['--will-retain'] if arguments['--schnorr'] or arguments['--ecdsa']: arguments['--clean-session'] = True msg = schnorr.hash_sha256( datetime.datetime.utcnow().isoformat()[:18] + client_id ) if arguments['--schnorr'] is not None: arg = _load_if_is_file(arguments["--schnorr"]) prk = schnorr.hash_sha256(arg) sig = binascii.hexlify(schnorr.sign(msg, prk)) else: arg = _load_if_is_file(arguments["--ecdsa"]) prk = ecdsa.hash_sha256(arg) sig = binascii.hexlify(ecdsa.sign(msg, prk)) parse = urlparse.urlparse(arguments["--url"]) puk = binascii.hexlify( schnorr.encoded_from_point( schnorr.G * schnorr.int.from_bytes(prk, byteorder="big") ) ) arguments["--url"] = urlparse.urlunparse( parse._replace(netloc="%s:%s@%s" % ( puk.decode("utf-8"), sig.decode("utf-8"), parse.netloc.split("@")[-1] )) ) client = MQTTClient(client_id=client_id, config=config, loop=loop) loop.run_until_complete(do_pub(client, arguments)) loop.close()
def _read_password_file(self): try: self._users = read_yaml_config(self.password_file) except: pass