public override void OnMessageReceived(RemoteMessage message) { var notification = message.GetNotification(); Log.Debug(TAG, $"From: {message.From}"); Log.Debug(TAG, $"Data: {message.Data.ToString()}"); Log.Debug(TAG, $"{ message.ToString() }"); if (PushMessageManager.IsMarketingCloudPush(message.Data)) { Log.Debug(TAG, "Marketing Cloud Message"); MarketingCloudSdk.RequestSdk(new SdkReady { OnReady = sdk => sdk.PushMessageManager.HandleMessage(message.Data) }); } else { Log.Debug(TAG, "Normal Message"); SendNotification(notification, message.Data); } }
public override async void OnMessageReceived(RemoteMessage message) { if (!_isInitialized) { await Initialize(); } #if DEBUG Log.Debug(TAG + " : ", message.ToString()); #endif if (message.GetNotification() != null) { //These is how most messages will be received #if DEBUG Log.Debug(TAG + " : ", message.GetNotification().Body); #endif SendNotification(message.GetNotification().Body); } else { var cmd = message.Data.FirstOrDefault(x => x.Key.Equals("cmd")); var msg = message.Data.FirstOrDefault(x => x.Key.Equals("msg")); var messageBody = $"{cmd.Value} : {msg.Value}"; #if DEBUG Log.Debug(TAG + " : ", messageBody); #endif _mvxMessenger.Publish(new NotificationMessage(this, messageBody, message.Data)); if (messageBody.Contains("Agent Location Change")) { var gid = message.Data.FirstOrDefault(x => x.Key.Equals("gid")); _mvxMessenger.Publish(new TeamAgentLocationUpdatedMessage(this, gid.Value, msg.Value)); } else if (messageBody.Contains("Marker")) { var opId = message.Data.FirstOrDefault(x => x.Key.Equals("opID")); var markerId = message.Data.FirstOrDefault(x => x.Key.Equals("markerID")); if (!string.IsNullOrWhiteSpace(opId.Value) && !string.IsNullOrWhiteSpace(markerId.Value)) { await _backgroundDataUpdaterService.UpdateMarker(opId.Value, markerId.Value).ConfigureAwait(false); } } else if (messageBody.Contains("Link")) { var opId = message.Data.FirstOrDefault(x => x.Key.Equals("opID")); var linkId = message.Data.FirstOrDefault(x => x.Key.Equals("linkID")); if (!string.IsNullOrWhiteSpace(opId.Value) && !string.IsNullOrWhiteSpace(linkId.Value)) { await _backgroundDataUpdaterService.UpdateLink(opId.Value, linkId.Value).ConfigureAwait(false); } } else if (messageBody.Contains("Map Change")) { var opId = message.Data.FirstOrDefault(x => x.Key.Equals("opID")); if (!string.IsNullOrWhiteSpace(opId.Value)) { await _backgroundDataUpdaterService.UpdateOperation(opId.Value).ConfigureAwait(false); } } } }