|
@@ -2,10 +2,9 @@ import 'dart:convert';
|
|
|
|
|
|
|
|
import 'package:nanoid/nanoid.dart';
|
|
import 'package:nanoid/nanoid.dart';
|
|
|
import 'package:web_socket_channel/io.dart';
|
|
import 'package:web_socket_channel/io.dart';
|
|
|
-import 'package:web_socket_channel/web_socket_channel.dart';
|
|
|
|
|
-import 'package:web_socket_channel/status.dart' as status;
|
|
|
|
|
|
|
|
|
|
-import 'config.dart';
|
|
|
|
|
|
|
+import './config.dart';
|
|
|
|
|
+import './controller.dart';
|
|
|
|
|
|
|
|
String getApiUrlWithProtocol() {
|
|
String getApiUrlWithProtocol() {
|
|
|
final String baseUrl = config['apiUrl'];
|
|
final String baseUrl = config['apiUrl'];
|
|
@@ -37,8 +36,14 @@ Future keepalive(IOWebSocketChannel channel) {
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-void connect(String name) async {
|
|
|
|
|
- final String uniqueName = getUniqueName(name);
|
|
|
|
|
|
|
+void connect(Controller controller) async {
|
|
|
|
|
+ if (controller.name.value.length == 0) {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ final String uniqueName = getUniqueName(controller.name.value);
|
|
|
|
|
+ controller.setUniqueName(uniqueName);
|
|
|
|
|
+
|
|
|
final String webSocketUrl = getWebSocketUrl();
|
|
final String webSocketUrl = getWebSocketUrl();
|
|
|
final String pubsubUrl = "$webSocketUrl?client-name=$uniqueName";
|
|
final String pubsubUrl = "$webSocketUrl?client-name=$uniqueName";
|
|
|
|
|
|
|
@@ -47,7 +52,7 @@ void connect(String name) async {
|
|
|
var channel = IOWebSocketChannel.connect(Uri.parse(pubsubUrl));
|
|
var channel = IOWebSocketChannel.connect(Uri.parse(pubsubUrl));
|
|
|
|
|
|
|
|
channel.stream.listen((message) {
|
|
channel.stream.listen((message) {
|
|
|
- print("Received message: $message");
|
|
|
|
|
|
|
+ controller.onRemoteMessage(message);
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
keepalive(channel);
|
|
keepalive(channel);
|