Class PushServiceClient
A Web Push Protocol compliant client for push service.
Inheritance
Inherited Members
Namespace: Lib.Net.Http.WebPush
Assembly: Lib.Net.Http.WebPush.dll
Syntax
public class PushServiceClient
Remarks
The PushServiceClient should be considered an expensive object as it internally holds an instance of System.Net.Http.HttpClient class. In order to avoid Improper Instantiation antipattern a shared singleton instance should be created or a pool of reusable instances should be used.
Constructors
PushServiceClient()
Creates new instance of PushServiceClient class.
Declaration
public PushServiceClient()
PushServiceClient(HttpClient)
Creates new instance of PushServiceClient class.
Declaration
public PushServiceClient(HttpClient httpClient)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Net.Http.HttpClient | httpClient | The HttpClient instance. |
Properties
AutoRetryAfter
Gets or sets the value indicating if client should automatically attempt to retry in case of 429 Too Many Requests.
Declaration
public bool AutoRetryAfter { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
DefaultAuthentication
Gets or sets the default authentication details.
Declaration
public VapidAuthentication DefaultAuthentication { get; set; }
Property Value
| Type | Description |
|---|---|
| VapidAuthentication |
DefaultAuthenticationScheme
Gets or sets the default VapidAuthenticationScheme to be used.
Declaration
public VapidAuthenticationScheme DefaultAuthenticationScheme { get; set; }
Property Value
| Type | Description |
|---|---|
| VapidAuthenticationScheme |
DefaultTimeToLive
Gets or sets the default time (in seconds) for which the message should be retained by push service. It will be used when TimeToLive is not set.
Declaration
public int DefaultTimeToLive { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
MaxRetriesAfter
Gets or sets the value indicating the maximum number of automatic attempts to retry in case of 429 Too Many Requests (<= 0 means unlimited).
Declaration
public int MaxRetriesAfter { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
Methods
RequestPushMessageDeliveryAsync(PushSubscription, PushMessage)
Requests delivery of push message by push service as an asynchronous operation.
Declaration
public Task RequestPushMessageDeliveryAsync(PushSubscription subscription, PushMessage message)
Parameters
| Type | Name | Description |
|---|---|---|
| PushSubscription | subscription | The push service subscription. |
| PushMessage | message | The push message. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | The task object representing the asynchronous operation. |
RequestPushMessageDeliveryAsync(PushSubscription, PushMessage, VapidAuthentication)
Requests delivery of push message by push service as an asynchronous operation.
Declaration
public Task RequestPushMessageDeliveryAsync(PushSubscription subscription, PushMessage message, VapidAuthentication authentication)
Parameters
| Type | Name | Description |
|---|---|---|
| PushSubscription | subscription | The push service subscription. |
| PushMessage | message | The push message. |
| VapidAuthentication | authentication | The authentication details. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | The task object representing the asynchronous operation. |
RequestPushMessageDeliveryAsync(PushSubscription, PushMessage, VapidAuthentication, VapidAuthenticationScheme)
Requests delivery of push message by push service as an asynchronous operation.
Declaration
public Task RequestPushMessageDeliveryAsync(PushSubscription subscription, PushMessage message, VapidAuthentication authentication, VapidAuthenticationScheme authenticationScheme)
Parameters
| Type | Name | Description |
|---|---|---|
| PushSubscription | subscription | The push service subscription. |
| PushMessage | message | The push message. |
| VapidAuthentication | authentication | The authentication details. |
| VapidAuthenticationScheme | authenticationScheme | The VapidAuthenticationScheme to use. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | The task object representing the asynchronous operation. |
RequestPushMessageDeliveryAsync(PushSubscription, PushMessage, VapidAuthentication, VapidAuthenticationScheme, CancellationToken)
Requests delivery of push message by push service as an asynchronous operation.
Declaration
public async Task RequestPushMessageDeliveryAsync(PushSubscription subscription, PushMessage message, VapidAuthentication authentication, VapidAuthenticationScheme authenticationScheme, CancellationToken cancellationToken)
Parameters
| Type | Name | Description |
|---|---|---|
| PushSubscription | subscription | The push service subscription. |
| PushMessage | message | The push message. |
| VapidAuthentication | authentication | The authentication details. |
| VapidAuthenticationScheme | authenticationScheme | The VapidAuthenticationScheme to use. |
| System.Threading.CancellationToken | cancellationToken | The cancellation token to cancel operation. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | The task object representing the asynchronous operation. |
RequestPushMessageDeliveryAsync(PushSubscription, PushMessage, VapidAuthentication, CancellationToken)
Requests delivery of push message by push service as an asynchronous operation.
Declaration
public Task RequestPushMessageDeliveryAsync(PushSubscription subscription, PushMessage message, VapidAuthentication authentication, CancellationToken cancellationToken)
Parameters
| Type | Name | Description |
|---|---|---|
| PushSubscription | subscription | The push service subscription. |
| PushMessage | message | The push message. |
| VapidAuthentication | authentication | The authentication details. |
| System.Threading.CancellationToken | cancellationToken | The cancellation token to cancel operation. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | The task object representing the asynchronous operation. |
RequestPushMessageDeliveryAsync(PushSubscription, PushMessage, CancellationToken)
Requests delivery of push message by push service as an asynchronous operation.
Declaration
public Task RequestPushMessageDeliveryAsync(PushSubscription subscription, PushMessage message, CancellationToken cancellationToken)
Parameters
| Type | Name | Description |
|---|---|---|
| PushSubscription | subscription | The push service subscription. |
| PushMessage | message | The push message. |
| System.Threading.CancellationToken | cancellationToken | The cancellation token to cancel operation. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | The task object representing the asynchronous operation. |