I am getting error builder.payload while connecting to mqtt in Flutter

Viewed 85

While trying to connect to mqtt with flutter, I get an error in the code below. How can I fix.

      final MqttClientPayloadBuilder builder = MqttClientPayloadBuilder();
      builder.addString(message);

      print('Publishing message "$message" to topic ${'Dart/Mqtt_client/testtopic'}');
      client.publishMessage('Dart/Mqtt_client/testtopic', MqttQos.exactlyOnce, builder.payload);
    } 

I am getting builder.payload error. How can I fix. Could you help ?

1 Answers

This worked for me.

First import typed_buffers

import 'package:typed_data/typed_buffers.dart';

Then create your data buffer this way.

Uint8List data = Uint8List.fromList("testmessage".codeUnits);
Uint8Buffer dataBuffer = Uint8Buffer();
dataBuffer.addAll(data);

client.publishMessage('mytopic', MqttQos.exactlyOnce, dataBuffer);
Related