connect method
The supervisor will ensure connection to the topic auth
Implementation
void connect(Supervisor supervisor,
{OnSecureChannelFailed? onSecureChannelFailed}) {
supervisor.listen(getTopic(), (phoenixChannel) {
this.phoenixChannel = phoenixChannel;
phoenixChannel.messages.listen((event) async {
if (event.isReply == true && event.payload != null) {
if (event.payload!.containsKey('response')) {
dynamic response = event.payload!['response'];
if (response.runtimeType == List) {
// Topic List Answer
List<dynamic> data = event.payload!['response'];
for (int i = 0; i < data.length; i++) {
_processMessage(data[i]);
}
} else {
if (response.containsKey('error')) {
print("IT IS A error WITH RESPONSE ${response['error']}");
}
}
}
} else {
_processMessage(event.payload!);
}
});
for (int i = 0; i < waitingTopicAuths.length; i++) {
WaitingTopicAuth waitingTopicAuth = waitingTopicAuths[i];
secureChannel(
channel: waitingTopicAuth.channel,
secret: waitingTopicAuth.secret,
metadata: waitingTopicAuth.metadata);
}
}, messagingTopic: false);
}