1 回答

TA貢獻(xiàn)1809條經(jīng)驗(yàn) 獲得超8個(gè)贊
解決你的問題
我的猜測(cè)是您收到此錯(cuò)誤:
System.ArgumentNullException: '值不能為空。參數(shù)名稱:clientId'
這是因?yàn)槟鷽]有指定appIdin new ConnectorClient。您可以忽略這一點(diǎn),因?yàn)槟詈米鲆恍╊愃频氖虑椋?/p>
await stepContext.Context.Adapter.ContinueConversationAsync("<yourAppId>", messageDetails.RelatesTo, async (ITurnContext turnContext, CancellationToken cancel) =>
{
? ? await turnContext.SendActivityAsync(triggerReply);
}, cancellationToken);
關(guān)鍵是確保您擁有ConversationReference
需要向其發(fā)送主動(dòng)消息的用戶。如果您沒有,您應(yīng)該能夠CreateConversation
建立一個(gè)
請(qǐng)注意,您還擁有:
if?(messageDetails.IsTrustedServiceUrl) { ????MicrosoftAppCredentials.TrustServiceUrl(messageactivity.ServiceUrl); }
這基本上是說,“如果我們已經(jīng)信任 serviceUrl,請(qǐng)?jiān)俅涡湃嗡?。相反,您需要?code>if (!messageDetails.IsTrustedServiceUrl)
主動(dòng)機(jī)器人如何工作
以下是主動(dòng)示例如何工作的簡(jiǎn)要說明。我建議下載并使用它以更好地理解。
機(jī)器人在
api/messages
(所有機(jī)器人都執(zhí)行此操作)和api/notify
(只有此機(jī)器人執(zhí)行此操作)上建立偵聽器。當(dāng)用戶向機(jī)器人發(fā)送消息時(shí),它會(huì)
api/messages
通過.ActivityHandler
對(duì)于任何消息,機(jī)器人都會(huì)保存對(duì)話參考
當(dāng)有人訪問時(shí)
<theBotUrl>/api/notify
,它會(huì)循環(huán)訪問每個(gè)保存的對(duì)話引用,調(diào)用ContinueConversation,并將消息發(fā)送給保存的對(duì)話引用中的所有用戶。
- 1 回答
- 0 關(guān)注
- 173 瀏覽
添加回答
舉報(bào)