Ok. we have requirmnet where Requestor and Approver roles need to be created. Users, who are in these role, will raise request or approve for there specific supplier or buyer. we can create Requestor and Approver roles and can map users to these roles through ABP identity module. but how roles can be mapped to Supplier or group of buyers ? can this achive through ABP identity module ? Please check the Roles hierarchy
i didnt try steps given in microsoft documnet as it required install Microsoft.AspNetCore.SignalR.StackExchangeRedis and add config setp services.AddSignalR().AddStackExchangeRedis("<your_Redis_connection_string>");
But i tried your suggeted preconfig in my appservice module but it didnt worked in AWS ECS. please find below current config and let me know, if anything else is required
public override void PreConfigureServices(ServiceConfigurationContext context)
{
var hostingEnvironment = context.Services.GetHostingEnvironment();
var configuration = context.Services.GetConfiguration();
if (!hostingEnvironment.IsDevelopment())
{
context.Services.PreConfigure<ISignalRServerBuilder>(builder =>
{
builder.Services.AddStackExchangeRedisCache(options =>
{
options.Configuration = configuration["Redis:Configuration"];
});
});
}
}
Hi,
As per Microsoft document, we need to add services.AddSignalR().AddStackExchangeRedis("<your_Redis_connection_string>"); in configservices but as per ABP documement, it says that You don't need to use the services.AddSignalR() and the app.UseEndpoints(...), it's done by the AbpAspNetCoreSignalRModule. we are using AbpAspNetCoreSignalRModule module
https://docs.abp.io/en/abp/latest/SignalR-Integration
Yes, we can create Role and assign persmissions and users to Roles but how can i assign my suppliers or buyers to the user, who are in Requestor or Approver Role through ABP idnenity module. Please advise.
Yes, i did. here is sample code. i dont get option for AddStackExchangeRedis
public override void PreConfigureServices(ServiceConfigurationContext context) { var hostingEnvironment = context.Services.GetHostingEnvironment();
var configuration = context.Services.GetConfiguration();
if (!hostingEnvironment.IsDevelopment())
{
context.Services.PreConfigure<ISignalRServerBuilder>(builder =>
{
builder.Services.AddStackExchangeRedisCache(options =>
{
options.Configuration = configuration["Redis:Configuration"];
});
});
}
}
also, do you mein i need to add services.AddSignalR().AddStackExchangeRedisCache("<your_Redis_connection_string>"); in configservice as well ?
Hi,
I tried with given approach but no success. still facing same issue. SingalR pub/sub is working fine with single ECS container but not with multiple.
public override void PreConfigureServices(ServiceConfigurationContext context)
{
var hostingEnvironment = context.Services.GetHostingEnvironment();
var configuration = context.Services.GetConfiguration();
if (!hostingEnvironment.IsDevelopment())
{
var redis = configuration["Redis:Configuration"];
context.Services.PreConfigure<ISignalRServerBuilder>(builder =>
{
builder.AddStackExchangeRedis(redis, options =>
{
options.Configuration.ChannelPrefix = "InvoiceManagement";
});
});
}
}
Hi,
There is no issue found in logs related to SignalR but it is not working as expected . 1 ECS container message is not getting to other container.
Hi,
there is no issue log in browser either. as said we are running this invoice service in multiple container so one only get the hub notification to the user connetced to the same container and rest users connected to other container not getting notification. this should be solve by Redis backplane but given solution is not working.
Hi No, there no change in current tanant as i loging with platform admin or abp admin. then how i can pull all the teanant user details.
I mean. If i login with ABP admin then i should get all the details of teanant users. wherever link you shared there i have to switch between teanant to get the details?