using FirebaseAdmin; using FirebaseAdmin.Messaging; using Google.Apis.Auth.OAuth2; using Microsoft.AspNetCore.Mvc; namespace firebase.net7API.Controllers { [ApiController] [Route("[controller]")] public class WeatherForecastController : ControllerBase { private static readonly string[] Summaries = new[] { "Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching" }; private readonly ILogger _logger; public WeatherForecastController(ILogger logger) { _logger = logger; } [HttpGet(Name = "GetWeatherForecast")] public IEnumerable Get() { return Enumerable.Range(1, 5).Select(index => new WeatherForecast { Date = DateOnly.FromDateTime(DateTime.Now.AddDays(index)), TemperatureC = Random.Shared.Next(-20, 55), Summary = Summaries[Random.Shared.Next(Summaries.Length)] }) .ToArray(); } [HttpPost(Name = "Post Notification")] public async Task PushNotifications() { try { //var testApp = new AppOptions //{ // Credential = GoogleCredential.FromFile(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "push-notification-api-c8613-firebase-adminsdk-pv5a8-1e337ca32a.json")) //}; //FirebaseApp.Create(testApp); var message = new Message() { Notification = new Notification { Title = "Hello", Body = "03/11/23", }, Token = "c9jYkaOeR0ypxJXqIuTfBr:APA91bEWUoncjxEyqMN2p5onHBRzF6N5XXrE48cu2TeGvhUFrNLdy6L6Yr72di4fXcc1HUINOk9HOs8wclnXLklNDQRpoPJ6l7GIdxJ87ym4BECXRyMfWhNw2VgxzCVImis4MEti7Enw", }; var response = await FirebaseMessaging.DefaultInstance.SendAsync(message); } catch (Exception ex) { throw; } } } }