mongoose/docs/c-api/mqtt-broker.h/mg_mqtt_broker.md
2016-07-25 17:26:05 +01:00

901 B

title decl_name symbol_kind signature
mg_mqtt_broker() mg_mqtt_broker func void mg_mqtt_broker(struct mg_connection *brk, int ev, void *data);

Processes a MQTT broker message.

The listening connection expects a pointer to an initialised mg_mqtt_broker structure in the user_data field.

Basic usage:

mg_mqtt_broker_init(&brk, NULL);

if ((nc = mg_bind(&mgr, address, mg_mqtt_broker)) == NULL) {
  // fail;
}
nc->user_data = &brk;

New incoming connections will receive a mg_mqtt_session structure in the connection user_data. The original user_data will be stored in the user_data field of the session structure. This allows the user handler to store user data before mg_mqtt_broker creates the session.

Since only the MG_EV_ACCEPT message is processed by the listening socket, for most events the user_data will thus point to a mg_mqtt_session.