public static async Task <BatchResponse> SendMessageFirebaseChatViaTokken(FCMMessageChatDTO model) { if (FirebaseApp.DefaultInstance == null) { var defaultApp = FirebaseApp.Create(new AppOptions() { Credential = GoogleCredential.FromFile(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "FBkey.json")), }); } //Convert Data to List Dictionnary var jsonData = JsonConvert.SerializeObject(model.Data); var dictionaryData = JsonConvert.DeserializeObject <Dictionary <string, string> >(jsonData); var message = new MulticastMessage() { Data = dictionaryData, Notification = new FirebaseAdmin.Messaging.Notification { Title = model.Notification.Title, Body = model.Notification.Body }, Tokens = model.Token }; var messaging = FirebaseMessaging.DefaultInstance; var result = await messaging.SendMulticastAsync(message); return(result); }
public async Task <FCMMessageChatDTO> PushChatNoti([FromBody] FCMMessageChatDTO model) { try { //Sent Noti to FireBase var output = Utils.Util.SendMessageFirebaseChatViaTokken(model); } catch (Exception ex) { _logger.LogError($"FCMMessageDTO: {ex.ToString()}"); model.ErrorCode = "005"; model.Message = Utils.ConstMessage.GetMsgConst("005"); } return(model); }