/// <summary> /// Sends Notification /// </summary> /// <param name="request">The request received from the client.</param> /// <param name="cancellationToken">The context of the server-side call handler being invoked.</param> /// <returns>The response to send back to the client (wrapped by a task).</returns> public async Task <NotificationQueueResponse> SendNotificationAsync(NotificationQueueRequest request, CancellationToken cancellationToken = default) { var notificationQueueResponse = new NotificationQueueResponse(); DoFibonacci(); Log.Information("Send Notfication is successful!"); notificationQueueResponse.Success = true; notificationQueueResponse.Value = 0; return(notificationQueueResponse); }
#pragma warning restore S1118 // Utility classes should not have public constructors static public ISelectPushSenderType CreateSelectedObject(NotificationQueueRequest queueRequest) { ISelectPushSenderType selectedObj = null; if (queueRequest.PushPlatformType == PlatformType.Android) { selectedObj = new AndroidPushMessage(); } if (queueRequest.PushPlatformType == PlatformType.IOS || queueRequest.PushPlatformType == PlatformType.Other) { selectedObj = new IosPushMessage(); } return(selectedObj); }
public PushMessage PreparePushMessage(NotificationQueueRequest queueRequest, RecipientAddress pushId) { int timeToLive = ConfigurationHelper.GetConfiguration <int>(Constants.PushFireBaseTimeToLive, Constants.PushFireBaseTimeToLiveDefault); PushMessage pushRequest = new PushMessage { to = pushId?.Adress //"eRArK-0TwkM:APA91bH7APab_SVh2NeOqvlC0IQu9jcutjEIzCHwu8HATlLI_5mSdLIC6eDkH3WUlcklG-g9nlwtiIn2DGr5XJt1j4cx-Yl7fVXeNsh__LH6iJ8FcsQRcxveMwp7HOYejH5RJq6nq73rM-w_v3dwqmZpgvCBGaiDEg"; //for a topic to": "/topics/foo-bar" }; PushMessageData notification = new PushMessageData(); string subject = queueRequest.Subject; string content = queueRequest.Content; try { content = CommonOperation.EncodeJavaUnicodes(queueRequest.Content); subject = CommonOperation.EncodeJavaUnicodes(queueRequest.Subject); } catch (Exception ex) { log.WarnFormat("PreparePushMessage-EncodeJavaUnicodes Error :{0} ; Content:{1}, Subject:{2}, TransactionId:{3}, Customer : {4}", ex, queueRequest.Content, queueRequest.Subject, queueRequest.TransactionId, queueRequest.CustomerNumber); } notification.title = subject; notification.body = content; notification.sound = "default"; notification.badge = queueRequest.PushBadge; pushRequest.notification = notification; pushRequest.mutable_content = true; PushExtraData data = new PushExtraData { tranCode = queueRequest.TransactionCode, pushResponseId = queueRequest.ResponseID }; var credentials = PushSenderHelper.GetRsaCredentials(); data.pushRegisterId = PushSenderHelper.EncryptPushRegisterId(queueRequest.PushRegisterId.ToString(), credentials.Password); data.tranData = JsonConvert.DeserializeObject(queueRequest.TranData); pushRequest.time_to_live = timeToLive; pushRequest.data = data; return(pushRequest); }