def mqtt_post(httpClient, httpResponse): """ Send test message to MQTT server """ settings_dict = httpClient.ReadRequestContentAsJSON() test_msg = ujson.dumps({'test-message': 200}) from mqtt_client import MQTT try: test_mqtt = MQTT(settings_dict) test_mqtt.publish(test_msg) except: httpResponse.WriteResponseInternalServerError() else: httpResponse.WriteResponseOk()
def mqtt_post(httpClient, httpResponse): """ Send test message to MQTT server """ settings_dict = httpClient.ReadRequestContentAsJSON() test_msg = {'test-message': 200} str_data = ujson.dumps(test_msg) from mqtt_client import MQTT try: client = MQTT(settings_dict) client.publish(str_data) except: print('Failed to send the message to the MQTT broker.') httpResponse.WriteResponseInternalServerError() else: print('The test message has been sent successfully.') httpResponse.WriteResponseOk()
plato = round((-1 * 616.868) + (1111.14 * gravity) - (630.272 * gravity**2) + (135.997 * gravity**3), 1) if wifi.is_connected(): # 5.1. Send Specific Gravity data & battery level by MQTT if send_data_to_mqtt: from mqtt_client import MQTT hydrometer_dict = { 'temperature': temp, 'sg': sg, 'plato': plato, 'battery': battery_voltage } mqtt_data = ujson.dumps(hydrometer_dict) client = MQTT(settings) client.publish(mqtt_data) # 5.2. Send Specific Gravity data & battery level to Fermenter ESP32 by HTTP else: machine_id = int.from_bytes(machine.unique_id(), 'big') hydrometer_dict = { 'name': settings.get('apSsid'), 'ID': machine_id, 'temperature': temp, 'angle': tilt, 'battery': battery_voltage, 'fahrenheit': round(temp * 1.8 + 32, 1), 'currentGravity': sg, 'currentPlato': plato, 'batteryLevel': battery_percent, 'updateIntervalMs': int(settings['deepSleepIntervalMs']) }