ChannelServiceHandler 類別

  • java.lang.Object
    • com.microsoft.bot.builder.ChannelServiceHandler

public class ChannelServiceHandler

類別,可協助實作 Bot Framework 通訊協定。

建構函式摘要

建構函式 Description
ChannelServiceHandler(CredentialProvider credentialProvider, AuthenticationConfiguration authConfiguration, ChannelProvider channelProvider)

使用認證提供者,初始化 ChannelServiceHandler 類別的新實例。

方法摘要

修飾詞與類型 方法與描述
protected ChannelProvider getChannelProvider()

取得實作 ChannelProvider 的通道提供者。

java.util.concurrent.CompletableFuture<ConversationResourceResponse> handleCreateConversation(String authHeader, ConversationParameters parameters)

建立新的交談。

java.util.concurrent.CompletableFuture<java.lang.Void> handleDeleteActivity(String authHeader, String conversationId, String activityId)

刪除現有的活動。

java.util.concurrent.CompletableFuture<java.lang.Void> handleDeleteConversationMember(String authHeader, String conversationId, String memberId)

從交談中刪除成員。

java.util.concurrent.CompletableFuture<java.util.List<ChannelAccount>> handleGetActivityMembers(String authHeader, String conversationId, String activityId)

列舉活動的成員。

java.util.concurrent.CompletableFuture<java.util.List<ChannelAccount>> handleGetConversationMembers(String authHeader, String conversationId)

列舉交談的成員。

java.util.concurrent.CompletableFuture<PagedMembersResult> handleGetConversationPagedMembers(String authHeader, String conversationId, Integer pageSize, String continuationToken)

一次列舉一頁交談的成員。

java.util.concurrent.CompletableFuture<ConversationsResult> handleGetConversations(String authHeader, String conversationId, String continuationToken)

列出 Bot 參與的交談。

java.util.concurrent.CompletableFuture<ResourceResponse> handleReplyToActivity(String authHeader, String conversationId, String activityId, Activity activity)

傳送回復至活動。

java.util.concurrent.CompletableFuture<ResourceResponse> handleSendConversationHistory(String authHeader, String conversationId, Transcript transcript)

上傳交談的歷史活動。

java.util.concurrent.CompletableFuture<ResourceResponse> handleSendToConversation(String authHeader, String conversationId, Activity activity)

將活動傳送至交談結尾。

java.util.concurrent.CompletableFuture<ResourceResponse> handleUpdateActivity(String authHeader, String conversationId, String activityId, Activity activity)

編輯先前傳送的現有活動。

java.util.concurrent.CompletableFuture<ResourceResponse> handleUploadAttachment(String authHeader, String conversationId, AttachmentData attachmentUpload)

在處理企業時,將數據儲存在符合規範的存放區中。

protected java.util.concurrent.CompletableFuture<ConversationResourceResponse> onCreateConversation(ClaimsIdentity claimsIdentity, ConversationParameters parameters)

建立Conversation() API。

protected java.util.concurrent.CompletableFuture<java.lang.Void> onDeleteActivity(ClaimsIdentity claimsIdentity, String conversationId, String activityId)

DeleteActivity() API 上。

protected java.util.concurrent.CompletableFuture<java.lang.Void> onDeleteConversationMember(ClaimsIdentity claimsIdentity, String conversationId, String memberId)

刪除技能成員() API交談。

protected java.util.concurrent.CompletableFuture<java.util.List<ChannelAccount>> onGetActivityMembers(ClaimsIdentity claimsIdentity, String conversationId, String activityId)

取得活動成員() API。

protected java.util.concurrent.CompletableFuture<java.util.List<ChannelAccount>> onGetConversationMembers(ClaimsIdentity claimsIdentity, String conversationId)

取得技能交談成員() API。

protected java.util.concurrent.CompletableFuture<PagedMembersResult> onGetConversationPagedMembers(ClaimsIdentity claimsIdentity, String conversationId, Integer pageSize, String continuationToken)

取得技能交談分頁成員() API。

protected java.util.concurrent.CompletableFuture<ConversationsResult> onGetConversations(ClaimsIdentity claimsIdentity, String conversationId, String continuationToken)

取得技能交談 API。

protected java.util.concurrent.CompletableFuture<ResourceResponse> onReplyToActivity(ClaimsIdentity claimsIdentity, String conversationId, String activityId, Activity activity)

回復ToActivity() API。

protected java.util.concurrent.CompletableFuture<ResourceResponse> onSendConversationHistory(ClaimsIdentity claimsIdentity, String conversationId, Transcript transcript)

傳送技能對話歷程記錄 API。

protected java.util.concurrent.CompletableFuture<ResourceResponse> onSendToConversation(ClaimsIdentity claimsIdentity, String conversationId, Activity activity)

傳送技能ToConversation() API。

protected java.util.concurrent.CompletableFuture<ResourceResponse> onUpdateActivity(ClaimsIdentity claimsIdentity, String conversationId, String activityId, Activity activity)

UpdateActivity() API 上。

protected java.util.concurrent.CompletableFuture<ResourceResponse> onUploadAttachment(ClaimsIdentity claimsIdentity, String conversationId, AttachmentData attachmentUpload)

上傳Attachment() API。

方法繼承來源 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

建構函式詳細資料

ChannelServiceHandler

public ChannelServiceHandler(CredentialProvider credentialProvider, AuthenticationConfiguration authConfiguration, ChannelProvider channelProvider)

使用認證提供者,初始化 ChannelServiceHandler 類別的新實例。

參數:

credentialProvider - 認證提供者。
authConfiguration - 驗證組態。
channelProvider - 通道提供者。

方法詳細資料

getChannelProvider

protected ChannelProvider getChannelProvider()

取得實作 ChannelProvider 的通道提供者。

傳回:

ChannelProvider 值做為 getChannelProvider()。

handleCreateConversation

public CompletableFuture handleCreateConversation(String authHeader, ConversationParameters parameters)

建立新的交談。

參數:

authHeader - 驗證標頭。
parameters - 要從中建立交談的參數。

傳回:

代表異步作結果的 {@link CompletableFuture{TResult}}。

handleDeleteActivity

public CompletableFuture handleDeleteActivity(String authHeader, String conversationId, String activityId)

刪除現有的活動。

參數:

authHeader - 驗證標頭。
conversationId - 交談標識碼。
activityId - 活動標識碼。

傳回:

CompletableFuture,表示異步作的結果。

handleDeleteConversationMember

public CompletableFuture handleDeleteConversationMember(String authHeader, String conversationId, String memberId)

從交談中刪除成員。

參數:

authHeader - 驗證標頭。
conversationId - 交談標識碼。
memberId - 要從這個交談中刪除的成員標識碼。

傳回:

表示異步作的 CompletableFuture

handleGetActivityMembers

public CompletableFuture> handleGetActivityMembers(String authHeader, String conversationId, String activityId)

列舉活動的成員。

參數:

authHeader - 驗證標頭。
conversationId - 交談標識碼。
activityId - 活動標識碼。

傳回:

代表異步作結果的 {@link CompletableFuture{TResult}}。

handleGetConversationMembers

public CompletableFuture> handleGetConversationMembers(String authHeader, String conversationId)

列舉交談的成員。

參數:

authHeader - 驗證標頭。
conversationId - 交談標識碼。

傳回:

代表異步作結果的 {@link CompletableFuture{TResult}}。

handleGetConversationPagedMembers

public CompletableFuture handleGetConversationPagedMembers(String authHeader, String conversationId, Integer pageSize, String continuationToken)

一次列舉一頁交談的成員。

參數:

authHeader - 驗證標頭。
conversationId - 交談標識碼。
pageSize - 建議的頁面大小。
continuationToken - 接續令牌。

傳回:

代表異步作結果的 {@link CompletableFuture{TResult}}。

handleGetConversations

public CompletableFuture handleGetConversations(String authHeader, String conversationId, String continuationToken)

列出 Bot 參與的交談。

參數:

authHeader - 驗證標頭。
conversationId - 交談標識碼。
continuationToken - 略過或接續令牌。

傳回:

代表異步作結果的 {@link CompletableFuture{TResult}}。

handleReplyToActivity

public CompletableFuture handleReplyToActivity(String authHeader, String conversationId, String activityId, Activity activity)

傳送回復至活動。

參數:

authHeader - 驗證標頭。
conversationId - 交談標識碼。
activityId - 回復的活動標識碼。
activity - 要傳送的活動。

傳回:

代表異步作結果的 {@link CompletableFuture{TResult}}。

handleSendConversationHistory

public CompletableFuture handleSendConversationHistory(String authHeader, String conversationId, Transcript transcript)

上傳交談的歷史活動。

參數:

authHeader - 驗證標頭。
conversationId - 交談標識碼。
transcript - 活動記錄。

傳回:

代表異步作結果的 {@link CompletableFuture{TResult}}。

handleSendToConversation

public CompletableFuture handleSendToConversation(String authHeader, String conversationId, Activity activity)

將活動傳送至交談結尾。

參數:

authHeader - 驗證標頭。
conversationId - 交談標識碼。
activity - 要傳送的活動。

傳回:

代表異步作結果的 {@link CompletableFuture{TResult}}。

handleUpdateActivity

public CompletableFuture handleUpdateActivity(String authHeader, String conversationId, String activityId, Activity activity)

編輯先前傳送的現有活動。

參數:

authHeader - 驗證標頭。
conversationId - 交談標識碼。
activityId - 要更新的活動標識碼。
activity - 取代活動。

傳回:

代表異步作結果的 {@link CompletableFuture{TResult}}。

handleUploadAttachment

public CompletableFuture handleUploadAttachment(String authHeader, String conversationId, AttachmentData attachmentUpload)

在處理企業時,將數據儲存在符合規範的存放區中。

參數:

authHeader - 驗證標頭。
conversationId - 交談標識碼。
attachmentUpload - 附件數據。

傳回:

代表異步作結果的 {@link CompletableFuture{TResult}}。

onCreateConversation

protected CompletableFuture onCreateConversation(ClaimsIdentity claimsIdentity, ConversationParameters parameters)

CreateConversation() API。 覆寫此方法以建立新的 Conversation。 POST 至此方法時,使用 * Bot 作為建立交談的 Bot * IsGroup 設為 true,如果這不是直接訊息 (預設實例為 false) * 陣組,其中包含要包含在交談中的成員。傳回值是 ResourceResponse,其中包含適合用於訊息承載和 REST API URI 的交談 D。 大部分通道只支援 Bot 起始直接訊息交談的語意。 如何執行此作業的範例為:var resource = connector.getconversations()。CreateConversation(new ConversationParameters(){ Bot = bot, members = new ChannelAccount[] { new ChannelAccount(“user1”) } ; connect.getConversations()。OnSendToConversation(resource.getId(), new Activity() ... ;結束。

參數:

claimsIdentity - bot 的 claimsIdentity 應該具有 AudienceClaim、AppIdClaim 和 ServiceUrlClaim。
parameters - 要從中建立交談的參數。

傳回:

交談資源回應的工作。

onDeleteActivity

protected CompletableFuture onDeleteActivity(ClaimsIdentity claimsIdentity, String conversationId, String activityId)

OnDeleteActivity() API。 覆寫此方法以刪除現有的活動。 某些通道可讓您刪除現有的活動,如果成功,這個方法將會移除指定的活動。

參數:

claimsIdentity - bot 的 claimsIdentity 應該具有 AudienceClaim、AppIdClaim 和 ServiceUrlClaim。
conversationId - 交談 D。
activityId - 要刪除的 activityId。

傳回:

資源回應的工作。

onDeleteConversationMember

protected CompletableFuture onDeleteConversationMember(ClaimsIdentity claimsIdentity, String conversationId, String memberId)

DeleteConversationMember() 技能 API。 覆寫此方法以刪除交談中的成員。 此 REST API 會採用 ConversationId 和 memberId(類型為 String),並從交談中移除該成員。 如果該成員是交談的最後一個成員,也會刪除交談。

參數:

claimsIdentity - bot 的 claimsIdentity 應該具有 AudienceClaim、AppIdClaim 和 ServiceUrlClaim。
conversationId - 交談 D。
memberId - 要從這個交談中刪除的成員 D。

傳回:

任務。

onGetActivityMembers

protected CompletableFuture> onGetActivityMembers(ClaimsIdentity claimsIdentity, String conversationId, String activityId)

OnGetActivityMembers() API。 覆寫此方法以列舉活動的成員。 此 REST API 會採用 ConversationId 和 ActivityId,傳回 ChannelAccount 物件的陣列,代表交談中特定活動的成員。

參數:

claimsIdentity - bot 的 claimsIdentity 應該具有 AudienceClaim、AppIdClaim 和 ServiceUrlClaim。
conversationId - 交談 D。
activityId - 活動 D.

傳回:

具有結果的工作。

onGetConversationMembers

protected CompletableFuture> onGetConversationMembers(ClaimsIdentity claimsIdentity, String conversationId)

GetConversationMembers() 技能 API。 覆寫此方法以列舉交談的成員。 此 REST API 會取得 ConversationId,並傳回代表交談成員的 ChannelAccount 物件陣列。

參數:

claimsIdentity - bot 的 claimsIdentity 應該具有 AudienceClaim、AppIdClaim 和 ServiceUrlClaim。
conversationId - 交談 D。

傳回:

回應的工作。

onGetConversationPagedMembers

protected CompletableFuture onGetConversationPagedMembers(ClaimsIdentity claimsIdentity, String conversationId, Integer pageSize, String continuationToken)

GetConversationPagedMembers() 技能 API。 覆寫此方法,以一次列舉一頁交談的成員。 此 REST API 會採用 ConversationId。 您可以選擇提供 pageSize 和/或 continuationToken。 它會傳回 PagedMembersResult,其中包含 ChannelAccounts 陣列,代表交談的成員和可用來取得更多值的接續令牌。 每個呼叫都會傳回 ChannelAccounts 記錄的一頁。 頁面中的記錄數目可能會因通道和呼叫而有所不同。 pageSize 參數可用來做為建議。 如果沒有其他結果,回應將不會包含接續令牌。 如果交談中沒有任何成員,則成員在回應中將會是空的或不存在的。 對先前要求具有接續令牌的要求回應,可能很少會從先前的要求傳回成員。

參數:

claimsIdentity - bot 的 claimsIdentity 應該具有 AudienceClaim、AppIdClaim 和 ServiceUrlClaim。
conversationId - 交談 D。
pageSize - 建議的頁面大小。
continuationToken - 接續令牌。

傳回:

回應的工作。

onGetConversations

protected CompletableFuture onGetConversations(ClaimsIdentity claimsIdentity, String conversationId, String continuationToken)

OnGetConversations() 技能 API。 覆寫此方法以列出此 Bot 參與的交談。 使用 skip Token 從這個方法取得 傳回值是 ConversationsResult,其中包含 ConversationMembers 和 skip Token 的陣列。 如果略過令牌不是空的,則會傳回其他值。 使用傳回的令牌再次呼叫這個方法,以取得更多值。 每個 ConversationMembers 物件都包含交談的 D,以及描述交談成員的 ChannelAccounts 陣列。

參數:

claimsIdentity - bot 的 claimsIdentity 應該具有 AudienceClaim、AppIdClaim 和 ServiceUrlClaim。
conversationId - conversationId。
continuationToken - 略過或接續令牌。

傳回:

ConversationsResult 的工作。

onReplyToActivity

protected CompletableFuture onReplyToActivity(ClaimsIdentity claimsIdentity, String conversationId, String activityId, Activity activity)

OnReplyToActivity() API。 覆寫此方法允許回復活動。 這與 SendToConversation(稍有不同)。 * SendToConversation(conversationId) - 會根據通道的時間戳或語意,將活動附加至交談結尾。 * ReplyToActivity(conversationId,ActivityId) - 如果通道支持活動,請將活動新增為另一個活動的回復。 如果通道不支援巢狀回復,ReplyToActivity 會回復為 SendToConversation。 在回復交談中的特定活動時,請使用 ReplyToActivity。 在所有其他情況下使用 SendToConversation。

參數:

claimsIdentity - bot 的 claimsIdentity 應該具有 AudienceClaim、AppIdClaim 和 ServiceUrlClaim。
conversationId - 交談 D。
activityId - activityId 回復為 (OPTONAL)。
activity - 要傳送的活動。

傳回:

資源回應的工作。

onSendConversationHistory

protected CompletableFuture onSendConversationHistory(ClaimsIdentity claimsIdentity, String conversationId, Transcript transcript)

SendConversationHistory() 技能 API。 將此方法覆寫至此方法,可讓您將歷史活動上傳至交談。 傳送者必須確保歷史活動具有唯一標識碼和適當的時間戳。 用戶端會使用標識碼來處理重複的活動,而用戶端會使用時間戳,以正確的順序轉譯活動。

參數:

claimsIdentity - bot 的 claimsIdentity 應該具有 AudienceClaim、AppIdClaim 和 ServiceUrlClaim。
conversationId - 交談 D。
transcript - 活動記錄。

傳回:

資源回應的工作。

onSendToConversation

protected CompletableFuture onSendToConversation(ClaimsIdentity claimsIdentity, String conversationId, Activity activity)

適用於技能的 SendToConversation() API。 這個方法可讓您將活動傳送至交談結尾。 這與 ReplyToActivity() 稍有不同。 * SendToConversation(conversationId) - 會根據通道的時間戳或語意,將活動附加至交談結尾。 * ReplyToActivity(conversationId,ActivityId) - 如果通道支持活動,請將活動新增為另一個活動的回復。 如果通道不支援巢狀回復,ReplyToActivity 會回復為 SendToConversation。 在回復交談中的特定活動時,請使用 ReplyToActivity。 在所有其他情況下使用 SendToConversation。

參數:

claimsIdentity - bot 的 claimsIdentity 應該具有 AudienceClaim、AppIdClaim 和 ServiceUrlClaim。
conversationId - conversationId。
activity - 要傳送的活動。

傳回:

資源回應的工作。

onUpdateActivity

protected CompletableFuture onUpdateActivity(ClaimsIdentity claimsIdentity, String conversationId, String activityId, Activity activity)

OnUpdateActivity() API。 覆寫此方法以編輯先前傳送的現有活動。 某些通道可讓您編輯現有的活動,以反映 Bot 交談的新狀態。 例如,您可以在某人按兩下 [核准] 按鈕之後移除按鈕。

參數:

claimsIdentity - bot 的 claimsIdentity 應該具有 AudienceClaim、AppIdClaim 和 ServiceUrlClaim。
conversationId - 交談 D。
activityId - 要更新的 activityId。
activity - 取代活動。

傳回:

資源回應的工作。

onUploadAttachment

protected CompletableFuture onUploadAttachment(ClaimsIdentity claimsIdentity, String conversationId, AttachmentData attachmentUpload)

UploadAttachment() API。 覆寫此方法,以在處理企業時將數據儲存在相容的存放區中。 回應是 ResourceResponse,其中包含適合用於附件 API 的 AttachmentId。

參數:

claimsIdentity - bot 的 claimsIdentity 應該具有 AudienceClaim、AppIdClaim 和 ServiceUrlClaim。
conversationId - 交談 D。
attachmentUpload - 附件數據。

傳回:

具有結果的工作。

適用於