Amilon.GCM.Client
3.0.23
dotnet add package Amilon.GCM.Client --version 3.0.23
NuGet\Install-Package Amilon.GCM.Client -Version 3.0.23
<PackageReference Include="Amilon.GCM.Client" Version="3.0.23" />
paket add Amilon.GCM.Client --version 3.0.23
#r "nuget: Amilon.GCM.Client, 3.0.23"
// Install Amilon.GCM.Client as a Cake Addin #addin nuget:?package=Amilon.GCM.Client&version=3.0.23 // Install Amilon.GCM.Client as a Cake Tool #tool nuget:?package=Amilon.GCM.Client&version=3.0.23
Amilon GCM API Client
This client allows you to connect and use Amilon's GCM API services.
Usage
Single Tenant
You can configure the authentication parameters in the appsettings.json. Depending on your authentication type, you can configure
- ClientId
- ClientSecret
or/and optionally
- UserName
- Password
"GCM_API_Client": {
"Environment": "STG",
"ClientId": "your-client-id",
"ClientSecret": "your-client-secret",
"UserName": "your-username",
"Password": "your-password",
"Version": "2",
"GrantType": "password",
"Timeout": 60000
}
You can configure the client in your app through Dependency Injection
- Startup.cs
public IConfiguration Configuration { get; }
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public void ConfigureServices(IServiceCollection services)
{
services.AddGCMClient(Configuration);
}
- Host Builder
var builder = Host.CreateApplicationBuilder(args);
builder.Services.AddGCMClient(builder.Configuration);
Multi Tenant
You can configure the authentication parameters in the appsettings.json. Depending on your authentication type, you can configure
- ClientId
- ClientSecret
or/and optionally
- UserName
- Password
In this Multi Tenant mode, you can customize the appSettings to your own needs, it does not have to use a specific structure as the client will be initialized manually using the needed parameters in the AddGCMClient method call.
"GCM_API_Client": {
"Environment": "STG",
"Version": "2",
"GrantType": "password",
"Timeout": 60000
},
"MultiTenant": [
{
"ClientId": "your-client-id_1",
"ClientSecret": "your-client-secret_1",
"GCMCredentials": {
"UserName": "your-user-name_1",
"Password": "your-password_1"
}
},
{
"ClientId": "your-client-id_2",
"ClientSecret": "your-client-secret_2",
"GCMCredentials": {
"UserName": "your-user-name_2",
"Password": "your-password_2"
}
},
]
You can configure the client in your app through Dependency Injection. MultiTenantHelper is a placeholder for a class you can make in order to get the specific credentials for a specific ClientId.
- Startup.cs
public IConfiguration Configuration { get; }
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public void ConfigureServices(IServiceCollection services)
{
var gcmConfig = Configuration.GetSection("GCM_API_Client").Get<GCMConfig>();
services.AddGCMClient(_ =>
{
var config = new GCMConfig();
var gcmCredentials = MultiTenantHelper.GetGCMCredentials();
config.ClientId = gcmCredentials.ClientId;
config.ClientSecret = gcmCredentials.ClientSecret;
config.GrantType = gcmConfig.GrantType;
config.Version = gcmConfig.Version;
config.Password = gcmCredentials.Password;
config.UserName = gcmCredentials.UserName;
return config;
}, gcmConfig.Environment, gcmConfig.Timeout);
}
- Host Builder
var builder = Host.CreateApplicationBuilder(args);
var gcmConfig = builder.Configuration.GetSection("GCM_API_Client").Get<GCMConfig>();
builder.Services.AddGCMClient(_ =>
{
var config = new gcmConfig();
var gcmCredentials = MultiTenantHelper.GetGCMCredentials();
config.ClientId = gcmConfig.ClientId;
config.ClientSecret = gcmConfig.ClientSecret;
config.GrantType = gcmConfig.GrantType;
config.Version = gcmConfig.Version;
config.Password = gcmCredentials.Password;
config.UserName = gcmCredentials.UserName;
return config;
}, gcmConfig.Environment, gcmConfig.Timeout);
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- Amilon.Commons (>= 3.0.23)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 8.0.0)
-
net6.0
- Amilon.Commons (>= 3.0.23)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 8.0.0)
-
net8.0
- Amilon.Commons (>= 3.0.23)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 8.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated | |
---|---|---|---|
3.0.23 | 63 | 11/6/2024 | |
3.0.21 | 94 | 10/29/2024 | |
3.0.20 | 85 | 10/25/2024 | |
3.0.19 | 105 | 10/23/2024 | |
3.0.18 | 89 | 10/10/2024 | |
3.0.17 | 154 | 9/13/2024 | |
3.0.16 | 127 | 9/9/2024 | |
3.0.15 | 111 | 9/3/2024 | |
3.0.13 | 118 | 5/13/2024 | |
3.0.12 | 111 | 5/8/2024 | |
3.0.11 | 109 | 4/18/2024 | |
3.0.4 | 109 | 4/18/2024 | |
3.0.3 | 118 | 4/18/2024 | |
3.0.2 | 104 | 4/18/2024 | |
3.0.1 | 106 | 4/18/2024 | |
2.3.1 | 214 | 3/4/2024 | |
2.2.6 | 636 | 7/11/2023 | |
2.2.3 | 611 | 6/7/2023 | |
2.2.2 | 569 | 6/7/2023 | |
2.2.1 | 590 | 6/6/2023 | |
2.1.4 | 595 | 5/2/2023 | |
2.1.3 | 552 | 5/2/2023 | |
2.1.2 | 695 | 3/21/2023 | |
2.1.1 | 662 | 3/16/2023 | |
2.0.13 | 759 | 11/11/2022 | |
2.0.12 | 806 | 11/11/2022 | |
2.0.11 | 912 | 6/24/2022 | |
2.0.10 | 846 | 6/23/2022 | |
2.0.9 | 837 | 6/9/2022 | |
2.0.8 | 830 | 6/9/2022 | |
2.0.7 | 859 | 6/9/2022 | |
2.0.6 | 842 | 6/9/2022 | |
2.0.2 | 896 | 6/9/2022 | |
2.0.1 | 869 | 6/9/2022 | |
1.8.0 | 885 | 6/8/2022 | |
1.7.1-beta | 589 | 5/2/2022 | |
1.5.1 | 947 | 3/2/2021 | |
1.5.0 | 797 | 2/12/2021 | |
1.0.1 | 97 | 5/15/2024 |