connect method
Implementation
Future<ProConnectionStatus> connect() async {
await disconnect();
if (ip.isEmpty || port == 0) return ProConnectionStatus.failed;
ws = WS('controlSocket');
controlling = false;
status = ProConnectionStatus.connecting;
socketListener = ws.messages.listen(handleResponse);
socketConnectionListener = ws.connectionStatus.listen((bool b) {
status = b ? ProConnectionStatus.connected : ProConnectionStatus.failed;
if (b == false) controlling = false;
});
ws.connect(
'ws://$ip:$port/remote',
usePing: false,
firstMessage: WSMessage(
data: {
'password': password,
'protocol': version == ProVersion.seven ? PRO7_CONTROL_PROTOCOL : PRO6_CONTROL_PROTOCOL,
'action': "authenticate",
},
),
);
return delayedConnectionCheck();
}