def get_client(project_id: str, cloud_region: str, registry_id: str, device_id: str, password: str, mqtt_bridge_hostname: str, mqtt_bridge_port: str, ca_certs: str): client_id = 'projects/{}/locations/{}/registries/{}/devices/{}'.format( project_id, cloud_region, registry_id, device_id) secho('Client ID: ', fg='bright_green', nl=False) echo('\'{}\''.format(client_id)) client = Client(client_id=client_id) client.username_pw_set(username='******', password=password) client.tls_set(ca_certs=ca_certs, tls_version=ssl.PROTOCOL_TLSv1_2) # Assign callbacks client.on_connect = on_connect client.on_publish = on_publish client.on_disconnect = on_disconnect client.on_message = on_message # Connect to MQTT bridge client.connect(mqtt_bridge_hostname, mqtt_bridge_port) client.loop_start() return client
def init_client(): #variabili di sistema settate access_key = os.environ["AWS_ACCESS_KEY_ID"] secret_key = os.environ["AWS_SECRET_ACCESS_KEY"] port = 443 region = "us-east-2" # This is specific to your AWS account host = "a3pwbt0axh6wnd-ats.iot.us-east-2.amazonaws.com".format(region) extra_headers = functools.partial( get_amazon_auth_headers, access_key, secret_key, region, host, port, ) client = Client(transport="websockets") client.ws_set_options(headers=extra_headers) # Use client as normal from here client.on_connect = on_connect client.on_message = on_message client.on_publish = on_publish client.tls_set() client.connect(host, 443,60) return client
def publicarResultados(lista): cliente = Client() cliente.connect("wild.mat.ucm.es") cliente.on_publish = on_publish topic = 'clients/resultadosAhorcado' mensaje = "RESULTADO EN LA PARTIDA "+str(lista[0])+" para el jugador con apodo "+lista[1]+": "+" Propuso la palabra "+lista[3]+" y finaliza el juego con el estado "+lista[4]+"." print ('Mensaje a publicar en ', topic, ': ', mensaje) cliente.publish(topic,mensaje)
def main(): parser = argparse.ArgumentParser( description='Command line utility for quick MQTT publishes') parser.add_argument('--broker-port', type=int, default=1883) parser.add_argument('broker_address') parser.add_argument('topic') parser.add_argument('message', default='') args = parser.parse_args() client = Client() client.on_publish = print_publish_info client.connect(args.broker_address, args.broker_port) client.publish(args.topic, args.message) client.disconnect()
'location': lambda t: json.dumps({ "lat": 43.650883 + random.uniform(-0.005, 0.005), "lng": -96.201642 + random.uniform(-0.005, 0.005) }) } c = Client() c.connect('127.0.0.1', 1883) def on_publish(client, userdata, result): print("gateway_sim: {} published: {}".format(client.name, result)) c.on_publish = on_publish c.loop_start() config_io = json.loads(sys.stdin.read()) class ChannelSim(StoppableThread): def __init__(self, **kwargs): StoppableThread.__init__(self, name=kwargs.get('name')) self.client = kwargs.get('client') setattr(self.client, 'name', kwargs.get('name')) self.sim_lambda = sim_lambdas[self.name.split('/')[2]] def run(self): print("running channel simulator: {}".format(self.name)) nums = range(1, 10)
msg = { 'color': { 'h': 1, 's': 0 }, 'brightness': 1, 'on': status, 'client': "pi" } status = not status return msg mqtt = Client() mqtt.on_message = on_message mqtt.on_connect = on_connect mqtt.on_publish = on_publish mqtt.connect("localhost", 1883, 3600) sleep(0.5) mqtt.subscribe("/sparti/transport/bus_schedule", 0) mqtt.subscribe("/sparti/android/sleep", 0) sleep(0.5) mqtt.loop_forever()
retain=True) def on_publish(mqttc, obj, mid): print("on publish") def on_subscribe(mqttc, obj, mid, granted_qos): pass def on_log(mqttc, obj, level, string): print(string) mqttc = Client() mqttc.on_message = on_message mqttc.on_connect = on_connect mqttc.on_publish = on_publish mqttc.on_subscribe = on_subscribe mqttc.connect("localhost", 1883, 60) sleep(0.5) mqttc.subscribe("/sparti/android/sleep", 0) sleep(0.5) mqttc.loop_forever()
from paho.mqtt.client import Client client = Client(client_id="client_1") def on_publish(client, userdata, mid): print("Messaggio pubblicato") client.on_publish = on_publish client.connect("192.168.86.111") client.loop_start() messaggio = "22" client.publish(topic="test", payload=messaggio) client.loop_stop() client.disconnect()