BotFrameworkHttpClient Classe

public class BotFrameworkHttpClient
extends BotFrameworkClient

Classe per registrare le attività in modo sicuro in un bot usando il protocollo HTTP BotFramework. Questa classe può essere usata per pubblicare in modo sicuro le attività in un bot usando il protocollo HTTP di Bot Framework. Esistono 2 modelli di utilizzo:* L'attività di inoltro a una competenza (Bot -> Bot as a Skill) viene eseguita tramite PostActivity(fromBotId, toBotId, endpoint, serviceUrl, activity);* Registrazione di un'attività a se stessi (servizio esterno -> Bot) eseguita tramite PostActivity(botId, endpoint, attività)Quest'ultimo viene usato da servizi esterni, ad esempio processi Web che devono pubblicare attività al bot usando i bot.

Riepilogo dei costruttori

Costruttore Descrizione
BotFrameworkHttpClient(CredentialProvider credentialProvider, ChannelProvider channelProvider)

Inizializza una nuova istanza della classe BotFrameworkHttpClient.

Riepilogo dei metodi

Modificatore e tipo Metodo e descrizione
java.util.concurrent.CompletableFuture<TypedInvokeResponse<T>> <T>postActivity(String fromBotId, String toBotId, URI toUrl, URI serviceUrl, String conversationId, Activity activity, Class<T> type)

Inoltra un'attività a una competenza (bot).

java.util.concurrent.CompletableFuture<TypedInvokeResponse<T>> <T>postActivity(String botId, URI botEndpoint, Activity activity, Class<T> type)

Pubblicare l'attività nel bot usando le credenziali del bot.

protected java.util.concurrent.CompletableFuture<AppCredentials> buildCredentials(String appId, String oAuthScope)

Logica per creare un oggetto AppCredentials da usare per acquisire i token per ottenereHttpClient().

protected static java.util.Map<java.lang.String,AppCredentials> getAppCredentialMapCache()

Ottiene la cache per l'appcredenziali per velocizzare l'acquisizione del token (un token non viene richiesto a meno che non sia scaduto).

protected ChannelProvider getChannelProvider()

Ottiene il provider di canali per questa scheda.

protected CredentialProvider getCredentialProvider()

Ottiene il provider di credenziali per l'adapter.

okhttp3.OkHttpClient getHttpClient()

Ottiene il client httpper questa scheda.

Metodi ereditati da BotFrameworkClient

Metodi ereditati da java.lang.Object

java.lang.Object.clone java.lang.Object.equals java.lang.Object.finalize java.lang.Object.getClass java.lang.Object.hashCode java.lang.Object.notify java.lang.Object.notifyAll java.lang.Object.toString java.lang.Object.wait java.lang.Object.wait java.lang.Object.wait

Dettagli costruttore

BotFrameworkHttpClient

public BotFrameworkHttpClient(CredentialProvider credentialProvider, ChannelProvider channelProvider)

Inizializza una nuova istanza della classe BotFrameworkHttpClient.

Parametri:

credentialProvider - Istanza di CredentialProvider .
channelProvider - Istanza di ChannelProvider .

Dettagli metodo

<T>postActivity

public CompletableFuture> postActivity(String fromBotId, String toBotId, URI toUrl, URI serviceUrl, String conversationId, Activity activity, Class type)

Inoltra un'attività a una competenza (bot). NOTA: l'inoltro di un'attività a una competenza scarica le modifiche di UserState e ConversationState in modo che la competenza abbia uno stato accurato.

Override:

BotFrameworkHttpClient.<T>postActivity(String fromBotId, String toBotId, URI toUrl, URI serviceUrl, String conversationId, Activity activity, Class<T> type)

Parametri:

fromBotId - MicrosoftAppId del bot che invia l'attività.
toBotId - MicrosoftAppId del bot che riceve l'attività.
toUrl - URL del bot che riceve l'attività.
serviceUrl - URL di callback per l'host di competenze.
conversationId - Conversazione D da usare per la conversazione con la competenza.
activity - attività da inoltrare.
type

Restituisce:

attività con invokeResponse facoltativo.

<T>postActivity

public CompletableFuture> postActivity(String botId, URI botEndpoint, Activity activity, Class type)

Pubblicare l'attività nel bot usando le credenziali del bot.

Parametri:

botId - MicrosoftAppId del bot.
botEndpoint - URL del bot.
activity - Attività da pubblicare.
type - Tipo di .

Restituisce:

InvokeResponse.

buildCredentials

protected CompletableFuture buildCredentials(String appId, String oAuthScope)

Logica per compilare un oggetto AppCredentials da usare per acquisire i token per questo getHttpClient().

Parametri:

appId - ID applicazione.
oAuthScope - Ambito OAuth facoltativo.

Restituisce:

Credenziali dell'app da usare per acquisire i token.

getAppCredentialMapCache

protected static Map getAppCredentialMapCache()

Ottiene la cache per appCredentials per velocizzare l'acquisizione dei token (un token non viene richiesto a meno che non sia scaduto). AppCredentials viene memorizzato nella cache usando appId + scope (questo ultimo parametro viene usato solo se le credenziali dell'app vengono usate per chiamare una competenza).

Restituisce:

Il valore AppCredentialMapCache come oggetto ConcurrentDictionary statico<String, AppCredentials>.

getChannelProvider

protected ChannelProvider getChannelProvider()

Ottiene il provider di canali per questa scheda.

Restituisce:

valore ChannelProvider come getChannelProvider().

getCredentialProvider

protected CredentialProvider getCredentialProvider()

Ottiene il provider di credenziali per l'adapter.

Restituisce:

valore di CredentialProvider come getCredentialProvider().

getHttpClient

public OkHttpClient getHttpClient()

Ottiene l'oggetto HttpClient per l'adapter.

Restituisce:

valore okhttpClient come getHttpClient().

Si applica a