public async Task <bool> SenderToFirebaseAsync2(String dataJson) { bool bStatus = true; var ind = dataJson.IndexOf("Index"); var indexVal = dataJson.Substring(ind, 10); Console.WriteLine("Processing Messsage " + indexVal); var registrationId = "dARiEevCnFo:APA91bFTev5UB_plXxXKmYTrkx79isGzjIeCSy0UST-KNaVQsnGICoF7qgbEYyFu-3n1y807iPNmFI5IbzIlNLpJQ6q-OMqAZmWZeEURmoO3TIlA2TmR9ZSL4Bq4INzHqPmtRsAIxg0Y"; var serverKey = "AAAAkwlfmpI:APA91bElre6S3XNPQUzrLjhF5zPgUJFFWHrzblzNxcIpxAgzVEoay_RdS9wTbW-99Gq8KMvd9ecimKgBjJLh_Zjbrv4wQ-Hjl_gFEOYeGNzPUjxWljH7lIwVwyXvn3QCMFEvFF-Jh9_Q"; FCMClient client = new FCMClient(serverKey); var message = new Message { To = registrationId, Notification = new AndroidNotification() { Body = "great match!", Title = "Portugal vs. Denmark", Icon = "myIcon" } }; try{ DownstreamMessageResponse result = (DownstreamMessageResponse)await client.SendMessageAsync(message); Console.WriteLine("After FCMClient: SendMessageAsync"); Console.WriteLine($"Success: {result.Success} " + " Message" + indexVal); }catch (Exception error) { Console.WriteLine($"Text: '{error.Message}'"); } return(bStatus); }
private void WriteStatistics(DownstreamMessageResponse response) { }
public async Task <bool> SenderDataToFirebaseAsync(String dataJson) { bool bStatus = true; Interlocked.Increment(ref _sendingInstances); while (_sendingInstances > 90) { Thread.Sleep(50); } var ind = dataJson.IndexOf("Index"); var indexVal = dataJson.Substring(ind, 12); //Console.WriteLine("Processing Messsage " + indexVal + " CurrentTghreadId = " + Thread.CurrentThread.ManagedThreadId); var registrationId = "dARiEevCnFo:APA91bFTev5UB_plXxXKmYTrkx79isGzjIeCSy0UST-KNaVQsnGICoF7qgbEYyFu-3n1y807iPNmFI5IbzIlNLpJQ6q-OMqAZmWZeEURmoO3TIlA2TmR9ZSL4Bq4INzHqPmtRsAIxg0Y"; var serverKey = "AAAAkwlfmpI:APA91bElre6S3XNPQUzrLjhF5zPgUJFFWHrzblzNxcIpxAgzVEoay_RdS9wTbW-99Gq8KMvd9ecimKgBjJLh_Zjbrv4wQ-Hjl_gFEOYeGNzPUjxWljH7lIwVwyXvn3QCMFEvFF-Jh9_Q"; FCMClient client = new FCMClient(serverKey); Dictionary <string, string> values = JsonConvert.DeserializeObject <Dictionary <string, string> >(dataJson); var message = new Message { To = registrationId, Data = values //Dictionary<string, string> // { // { "content", "BigText Text Content ............. " }, // { "title", msg }, // { "veryLongText", "1 The quick brown fox jumps over the lazy dog \n 2 The quick brown fox jumps over the lazy dog \n 3 The quick brown fox jumps over the lazy dog \n 4 The quick brown fox jumps over the lazy dog " }, // { "type", "BigText" } // } }; Stopwatch stopWatchFcm = new Stopwatch(); try{ stopWatchFcm.Start(); var size = dataJson.Length; //Console.WriteLine($"Message Size: '{size}'"); DownstreamMessageResponse result = (DownstreamMessageResponse)await client.SendMessageAsync(message); // Console.WriteLine("After FCMClient: SendMessageAsync"); if (1 == result.Success) { //Console.WriteLine($"********* Success: {result.Success} " + "\n Message " + indexVal + " SendingInstances = " + _sendingInstances); Interlocked.Increment(ref _numOfSuccessfuleMsg); } else { Interlocked.Increment(ref _numOfFailedeMsg); Console.WriteLine($"********* Failed: {result.Failure} " + "\n Message " + indexVal + " SendingInstances = " + _sendingInstances); } stopWatchFcm.Stop(); }catch (Exception error) { Interlocked.Increment(ref _numOfFailedeMsg); Console.WriteLine($"********* Failed:" + "\n Message " + indexVal + " SendingInstances = " + _sendingInstances); Console.WriteLine($"Text: '{error.Message}'"); bStatus = false; } Interlocked.Decrement(ref _sendingInstances); return(bStatus); }
public async Task <bool> SenderDataPayloadToFirebaseAsync(Dictionary <String, String> data, String [] recievedRegistration_ids, FCMClient client) { bool bStatus = true; Interlocked.Increment(ref _sendingInstances); while (_sendingInstances > 80) { Thread.Sleep(2); } var ind = data["msg_index"]; var registrationId = "dARiEevCnFo:APA91bFTev5UB_plXxXKmYTrkx79isGzjIeCSy0UST-KNaVQsnGICoF7qgbEYyFu-3n1y807iPNmFI5IbzIlNLpJQ6q-OMqAZmWZeEURmoO3TIlA2TmR9ZSL4Bq4INzHqPmtRsAIxg0Y"; var serverKey = "AAAAkwlfmpI:APA91bElre6S3XNPQUzrLjhF5zPgUJFFWHrzblzNxcIpxAgzVEoay_RdS9wTbW-99Gq8KMvd9ecimKgBjJLh_Zjbrv4wQ-Hjl_gFEOYeGNzPUjxWljH7lIwVwyXvn3QCMFEvFF-Jh9_Q"; client.TestMode = true; int msg_id = Convert.ToInt32(data["msg_index"]); FirebaseTestSender.MessagesStatus.AddOrUpdate(msg_id, false, (k, v) => false); var message = new Message { RegistrationIds = recievedRegistration_ids, Data = data }; try{ var size = JsonConvert.SerializeObject(message).Length; // Console.WriteLine($"********* Success: 100 " + "\n Message " + ind + " SendingInstances = " + _sendingInstances); // Thread.Sleep(100); //Console.WriteLine($"Message Size: '{size}'"); Task <IFCMResponse> taskResponse = (Task <IFCMResponse>)client.SendMessageAsync(message); //Thread.Sleep(1); DownstreamMessageResponse result = (DownstreamMessageResponse)await taskResponse; Interlocked.Add(ref _numOfSuccessfuleMsg, result.Success); Interlocked.Add(ref _numOfFailedeMsg, result.Failure); Interlocked.Decrement(ref _sendingInstances); if (result.Success >= 1) { // Console.WriteLine($"********* Success: {_numOfSuccessfuleMsg} " + "\n Message " + ind + " SendingInstances = " + _sendingInstances); } else { // Console.WriteLine($"********* Failed: {_numOfFailedeMsg} " + "\n Message " + ind + " SendingInstances = " + _sendingInstances); } // Interlocked.Add(ref _numOfSuccessfuleMsg, 100); // Interlocked.Add(ref _numOfFailedeMsg, 0); }catch (Exception error) { Interlocked.Add(ref _numOfFailedeMsg, recievedRegistration_ids.Length); Console.WriteLine($"********* Failed:" + "\n Message " + ind + " SendingInstances = " + _sendingInstances); Console.WriteLine($"Text: '{error.Message}'"); bStatus = false; } MessagesStatus.AddOrUpdate(msg_id, true, (k, v) => true); return(bStatus); }