void Listener_OnGroupUpdated(FizzGroupUpdateEventData eventData) { FizzGroupModel group = GetGroup(eventData.GroupId); if (group != null && OnGroupUpdated != null) { group.Update(eventData); OnGroupUpdated.Invoke(group); } }
private void OnMessage(object sender, byte[] messagePayload) { try { string payload = Encoding.UTF8.GetString(messagePayload); FizzTopicMessage message = new FizzTopicMessage(payload); FizzLogger.D("OnMessage with id: " + message.Id); switch (message.Type) { case "CMSGP": if (OnMessagePublished != null) { OnMessagePublished.Invoke(AdaptTo(message)); } break; case "CMSGU": if (OnMessageUpdated != null) { OnMessageUpdated.Invoke(AdaptTo(message)); } break; case "CMSGD": if (OnMessageDeleted != null) { OnMessageDeleted.Invoke(AdaptTo(message)); } break; case "GRPMA": if (OnGroupMemberAdded != null) { OnGroupMemberAdded.Invoke(ParseMemberEventData(message)); } break; case "GRPMU": if (OnGroupMemberUpdated != null) { OnGroupMemberUpdated.Invoke(ParseMemberEventData(message)); } break; case "GRPMR": if (OnGroupMemberRemoved != null) { OnGroupMemberRemoved.Invoke(ParseMemberEventData(message)); } break; case "GRPU": if (OnGroupUpdated != null) { OnGroupUpdated.Invoke(ParseGroupUpdateEventData(message)); } break; case "USRPU": if (OnUserUpdated != null) { OnUserUpdated.Invoke(ParsePresenceUpdateEventData(message)); } break; case "USRU": if (OnUserUpdated != null) { OnUserUpdated.Invoke(ParseUserUpdateEventData(message)); } break; default: FizzLogger.W("unrecognized packet received: " + payload); break; } } catch { FizzLogger.W("received invalid message: " + messagePayload); } }