I have a background job where i need to have tenantId.
I did authenticate and I tested the tenantId, it is not null. I used other endpoints and it works wonderful but when I test the backgroundjob tenantId is always null.
I don't know if I am missing something or I need to send tenantId in the args.
This is the BJ
public class BackgroundNotificationJob : AsyncBackgroundJob<NotificationArgs>, ITransientDependency
{
private readonly FirebaseAppService _firebaseAppService;
private readonly IUnitOfWorkManager _unitOfWorkManager;
public BackgroundNotificationJob (
FirebaseAppService firebaseAppService ,
IUnitOfWorkManager unitOfWorkManager)
{
_firebaseAppService = firebaseAppService;
_unitOfWorkManager = unitOfWorkManager;
}
public override async Task ExecuteAsync (NotificationArgs args)
{
foreach (var notification in args.Notifications)
{
await _firebaseAppService.CreateMessage(notification.Key, notification.Value.ToString(), args.UserId);
}
}
}
The config:
public override void ConfigureServices ( ServiceConfigurationContext context )
{
var configuration = context.Services.GetConfiguration();
ConfigureHangfire(context, configuration);
}
private void ConfigureHangfire (ServiceConfigurationContext context, IConfiguration configuration)
{
context.Services.AddHangfire(config =>
{
config.UseSqlServerStorage(configuration.GetConnectionString("Default"));
});
}