Table of Contents

Class OAuth2WebExtension

Namespace
DisCatSharp.Extensions.OAuth2Web
Assembly
DisCatSharp.Extensions.OAuth2Web.dll

Represents a OAuth2WebExtension.

public sealed class OAuth2WebExtension : BaseExtension
Inheritance
OAuth2WebExtension
Inherited Members
Extension Methods

Properties

Logger

Gets the logger for this extension.

OAuth2Client

Gets the oauth2 client.

ServiceProvider

Gets the service provider this OAuth2 Web module was configured with.

Methods

GenerateOAuth2Url(ulong, IEnumerable<string>, bool)

Generates an OAuth2 url and ads it to the pending urls.

RefreshAccessTokenAsync(DiscordUser)

Refreshes an access token for user.

Fires an AccessTokenRefreshed event.

RefreshAccessTokenAsync(ulong)

Refreshes an access token for userId.

Fires an AccessTokenRefreshed event.

RefreshAllAccessTokensAsync()

Refreshes all access tokens.

Fires an AccessTokenRefreshed event for every refreshed token.

RevokeAccessTokenAsync(DiscordUser)

Revokes an access token for user.

Fires an AccessTokenRevoked event.

RevokeAccessTokenAsync(ulong)

Revokes an access token for userId.

Fires an AccessTokenRevoked event.

RevokeAllAccessTokensAsync()

Revokes all access tokens.

Fires an AccessTokenRevoked event for every refreshed token.

Setup(DiscordClient)

DO NOT USE THIS MANUALLY.

Start()

Starts the web server.

StopAsync()

Stops the web server.

SubmitPendingOAuth2Url(Uri)

Adds a url to pending urls.

TryGetAccessToken(DiscordUser, out DiscordAccessToken?)

Gets an access token for user.

TryGetAccessToken(ulong, out DiscordAccessToken?)

Gets an access token for userId.

WaitForAccessTokenAsync(DiscordUser, Uri, TimeSpan?)

Waits for an access token.

Make sure to submit uri to SubmitPendingOAuth2Url(Uri) before calling.

WaitForAccessTokenAsync(DiscordUser, Uri, CancellationToken)

Waits for an access token.

Make sure to submit uri to SubmitPendingOAuth2Url(Uri) before calling.

Events

AccessTokenRefreshed

Triggered when an access token was refreshed.

AccessTokenRevoked

Triggered when an access token was revoked.

AuthorizationCodeExchanged

Triggered when an authorizaton code was exchanged.

AuthorizationCodeReceived

Triggered when an authorizaton code was received.