Sub Client_MessageArrived (Topic As String, Payload() As Byte)
Dim msg As Message = serializator.ConvertBytesToObject(Payload)
Select Topic
Case "clients/whosConnected"
Send("master/connected", "")
'....
End Sub
Sub Send(Topic As String, Payload As Object)
If Client.Connected Then
Client.Publish2(Topic, serializator.ConvertObjectToBytes(CreateMessage(Payload)), 0, False)
Else
Log($"Error sending message: NOT CONNECTED"$)
End If
End Sub
Sub CreateMessage(Payload As Object) As Message
Dim msg As Message
msg.Initialize
msg.Payload = Payload
msg.FromClient = Main.CLIENT_ME
msg.Id = Misc.GenerateUniqueId
msg.TimestampSent = DateTime.Now
Return msg
End Sub