public static void UseFirebase(this INotificationConfiguration configuration, Action <FirebaseNotificationConfiguration> configureAction) { var firebaseConfiguration = new FirebaseNotificationConfiguration(); configureAction(firebaseConfiguration); configuration.Configure.Services.AddTransient <INotificationChannel, FirebaseNotificationChannel>(); configuration.Configure.Services.AddSingleton(firebaseConfiguration); }
public FirebaseNotificationChannel( FirebaseNotificationConfiguration configuration, IFirebaseService firebaseService, INotificationStore notificationStore, ILogger <FirebaseNotificationChannel> logger) { _configuration = configuration; _firebaseService = firebaseService; _notificationStore = notificationStore; _logger = logger; _httpClient.DefaultRequestHeaders.UserAgent.Clear(); _httpClient.DefaultRequestHeaders.TryAddWithoutValidation("Authorization", "key={0}".FormatWith(configuration.ServerKey)); _httpClient.DefaultRequestHeaders.TryAddWithoutValidation("Sender", "id={0}".FormatWith(configuration.SenderId)); }