60 lines
2.2 KiB
Dart
60 lines
2.2 KiB
Dart
// import 'dart:async';
|
||
// import 'dart:math';
|
||
// import 'package:mqtt_client/mqtt_client.dart';
|
||
// import 'package:mqtt_client/mqtt_server_client.dart';
|
||
|
||
// class MqttService {
|
||
// late MqttServerClient client;
|
||
// final String server = '5.75.200.241';
|
||
// final int port = 1883;
|
||
|
||
// Future<void> connect(String token) async {
|
||
// // 1. معادلسازی پارامترها
|
||
// final String clientId = 'nest-' + Random().nextInt(0xFFFFFF).toRadixString(16).padLeft(6, '0');
|
||
// final String username = 'ignored';
|
||
// final String password = token; // ✨ توکن شما مستقیماً به عنوان پسورد در نظر گرفته میشود
|
||
|
||
// // 2. ساخت کلاینت
|
||
// client = MqttServerClient.withPort(server, clientId, port);
|
||
// client.logging(on: true);
|
||
// client.keepAlivePeriod = 60;
|
||
// client.autoReconnect = false; // معادل reconnectPeriod: 0
|
||
// client.setProtocolV311();
|
||
|
||
// // 3. ساخت پیام اتصال با پارامترهای تعریف شده
|
||
// final connMessage = MqttConnectMessage()
|
||
// .withClientIdentifier(clientId)
|
||
// .startClean()
|
||
// .authenticateAs(username, password); // ارسال نام کاربری و رمز عبور (توکن)
|
||
|
||
// client.connectionMessage = connMessage;
|
||
|
||
// // 4. تعریف Callbackها و اتصال
|
||
// client.onConnected = () {
|
||
// print('✅ MQTT Connected');
|
||
// client.updates!.listen((List<MqttReceivedMessage<MqttMessage>> c) {
|
||
// final MqttPublishMessage recMess = c[0].payload as MqttPublishMessage;
|
||
// final String payload =
|
||
// MqttPublishPayload.bytesToStringAsString(recMess.payload.message);
|
||
// print('Received message: "$payload" from topic: ${c[0].topic}');
|
||
// });
|
||
|
||
// client.subscribe('test/topic', MqttQos.atLeastOnce);
|
||
// };
|
||
|
||
// client.onDisconnected = () {
|
||
// print('❌ MQTT Disconnected');
|
||
// };
|
||
|
||
// client.onSubscribed = (String topic) {
|
||
// print('✅ Subscribed to $topic');
|
||
// };
|
||
|
||
// try {
|
||
// await client.connect();
|
||
// } catch (e) {
|
||
// print('Exception: $e');
|
||
// client.disconnect();
|
||
// }
|
||
// }
|
||
// } |