diff --git a/lib/content_views/approach_area_page.dart b/lib/content_views/approach_area_page.dart index 5d79ffe..14c02ba 100644 --- a/lib/content_views/approach_area_page.dart +++ b/lib/content_views/approach_area_page.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:isar/isar.dart'; -import 'package:mqtt_client/mqtt_client.dart'; +import 'package:mqtt5_client/mqtt5_client.dart'; import 'package:stadtbote/content_views/utils/content_view_widget.dart'; import 'package:stadtbote/content_views/utils/header_info.dart'; import 'package:stadtbote/main.dart'; diff --git a/lib/content_views/assigned_jobs_page.dart b/lib/content_views/assigned_jobs_page.dart index b35cee5..a445077 100644 --- a/lib/content_views/assigned_jobs_page.dart +++ b/lib/content_views/assigned_jobs_page.dart @@ -2,7 +2,7 @@ import 'package:expandable/expandable.dart'; import 'package:flutter/material.dart'; import 'package:isar/isar.dart'; -import 'package:mqtt_client/mqtt_client.dart'; +import 'package:mqtt5_client/mqtt5_client.dart'; import 'package:stadtbote/content_views/utils/content_view_widget.dart'; import 'package:stadtbote/content_views/utils/header_info.dart'; import 'package:intl/intl.dart'; diff --git a/lib/content_views/main_page.dart b/lib/content_views/main_page.dart index b2fdc0a..5ab0980 100644 --- a/lib/content_views/main_page.dart +++ b/lib/content_views/main_page.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; import 'package:isar/isar.dart'; -import 'package:mqtt_client/mqtt_client.dart'; +import 'package:mqtt5_client/mqtt5_client.dart'; import 'package:stadtbote/content_views/accepted_jobs_page.dart'; import 'package:stadtbote/content_views/approach_area_page.dart'; import 'package:stadtbote/content_views/assigned_jobs_page.dart'; diff --git a/lib/content_views/messages_page.dart b/lib/content_views/messages_page.dart index 6ae0a12..bb06101 100644 --- a/lib/content_views/messages_page.dart +++ b/lib/content_views/messages_page.dart @@ -3,7 +3,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_chat_ui/flutter_chat_ui.dart'; import 'package:flutter_chat_types/flutter_chat_types.dart' as types; import 'package:isar/isar.dart'; -import 'package:mqtt_client/mqtt_client.dart'; +import 'package:mqtt5_client/mqtt5_client.dart'; import 'package:stadtbote/content_views/utils/content_view_widget.dart'; import 'package:stadtbote/content_views/utils/header_info.dart'; import 'package:stadtbote/main.dart'; diff --git a/lib/content_views/task_list_page.dart b/lib/content_views/task_list_page.dart index 29b7bcb..6c960f4 100644 --- a/lib/content_views/task_list_page.dart +++ b/lib/content_views/task_list_page.dart @@ -4,7 +4,7 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:intl/intl.dart'; import 'package:isar/isar.dart'; -import 'package:mqtt_client/mqtt_client.dart'; +import 'package:mqtt5_client/mqtt5_client.dart'; import 'package:stadtbote/content_views/utils/content_view_widget.dart'; import 'package:stadtbote/content_views/utils/header_info.dart'; import 'package:stadtbote/messages/pop_content_view_message.dart'; diff --git a/lib/popups/accept_jobs_popup.dart b/lib/popups/accept_jobs_popup.dart index d9fc841..3c3361e 100644 --- a/lib/popups/accept_jobs_popup.dart +++ b/lib/popups/accept_jobs_popup.dart @@ -4,7 +4,7 @@ import 'dart:math'; import 'package:expandable/expandable.dart'; import 'package:flutter/material.dart'; import 'package:intl/intl.dart'; -import 'package:mqtt_client/mqtt_client.dart'; +import 'package:mqtt5_client/mqtt5_client.dart'; import 'package:shared_map/shared_map.dart'; import 'package:stadtbote/main.dart'; import 'package:stadtbote/protocoll_messages/accept_job_message.dart'; diff --git a/lib/tools/messages/publish_payload_message.dart b/lib/tools/messages/publish_payload_message.dart index 7a5da19..9a12425 100644 --- a/lib/tools/messages/publish_payload_message.dart +++ b/lib/tools/messages/publish_payload_message.dart @@ -1,4 +1,4 @@ -import 'package:mqtt_client/mqtt_client.dart'; +import 'package:mqtt5_client/mqtt5_client.dart'; class PublishPayloadMessage { final String topic; diff --git a/lib/tools/mqtt_core.dart b/lib/tools/mqtt_core.dart index 74f2ae2..cd5bcf4 100644 --- a/lib/tools/mqtt_core.dart +++ b/lib/tools/mqtt_core.dart @@ -6,8 +6,8 @@ import 'package:archive/archive.dart'; import 'package:device_info_plus/device_info_plus.dart'; import 'package:http/http.dart' as http; import 'package:isar/isar.dart'; -import 'package:mqtt_client/mqtt_client.dart'; -import 'package:mqtt_client/mqtt_server_client.dart'; +import 'package:mqtt5_client/mqtt5_client.dart'; +import 'package:mqtt5_client/mqtt5_server_client.dart'; import 'package:stadtbote/model/enqueued_message.dart'; import 'package:stadtbote/model/job.dart'; import 'package:stadtbote/model/log_entry.dart'; @@ -93,6 +93,8 @@ class MqttCore { } connectionState = ConnectionStateEnum.notConnected; + + _disconnectInProgress = false; } _connectToBroker() async { @@ -165,7 +167,7 @@ class MqttCore { Future _setupMqtt() async { Util.logInfo('_setupMqtt called'); - _mqttClient!.updates?.listen((List> messages) { + _mqttClient!.updates.listen((List> messages) { for (var mqttMessage in messages) { try { final MqttPublishMessage message = mqttMessage.payload as MqttPublishMessage; @@ -175,9 +177,9 @@ class MqttCore { var topic = topicArraySplited[6]; Util.logInfo('message received\ntopic: $topic\n'); - Util.logInfo("size in bytes: ${message.payload.message.length.toString()}"); + Util.logInfo("size in bytes: ${message.payload.message!.length.toString()}"); - var payload = utf8.decode(GZipDecoder().decodeBytes(message.payload.message)); + var payload = utf8.decode(GZipDecoder().decodeBytes(message.payload.message!)); Util.logInfo('$topic\nmessage: $payload'); @@ -235,7 +237,7 @@ class MqttCore { if (previousMqttSubscription != fromServerTopic) { Util.logInfo('topic changed -> unsubscribe from $previousMqttSubscription'); - _mqttClient!.unsubscribe(previousMqttSubscription); + _mqttClient!.unsubscribeStringTopic(previousMqttSubscription); } _mqttClient!.subscribe(_fromServerTopic, MqttQos.exactlyOnce); diff --git a/pubspec.lock b/pubspec.lock index 93d7bbf..b8ee1b6 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -976,14 +976,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.0.5" - mqtt_client: + mqtt5_client: dependency: "direct main" description: - name: mqtt_client - sha256: "001861aba553eaf419aab60b7956227af47a9d1e1efe0d2fcb3957d3fc30d110" + name: mqtt5_client + sha256: d5d26200bc5f6d3a18cd7d007d5aa6bb04866150a8d42221ca5cecf2c807779c url: "https://pub.dev" source: hosted - version: "10.2.1" + version: "4.4.0" open_filex: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index 443eb68..64c2558 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -43,7 +43,7 @@ dependencies: open_filex: ^4.3.2 path_provider: ^2.0.14 split_view: ^3.2.1 - mqtt_client: ^10.2.1 + mqtt5_client: ^4.4.0 isar_flutter_libs: ^3.1.0+1 isar: ^3.1.0+1 json_serializable: ^6.6.2