2

Webchat チャネルに接続するボットを作成しています。ただし、ユーザーが入力した特定のメッセージで、既に接続している Directline チャネルの別のユーザーにメッセージを送信したいと考えています。

Directline チャネルのユーザーの ID、名前、会話 ID があるので、次のようなことを試しました。

var msg1 = await result as Activity;       //Message from Webchat channel
IMessageActivity message = Activity.CreateMessageActivity();

message.From = new ChannelAccount(name: "Bolo", id: "bol24x7");
message.Recipient = new ChannelAccount(name: "Auto", id: "aa24x7");
message.Conversation = new ConversationAccount(id: "GxBTy2R7nDq94FEvAvBd5A");
message.ChannelId = "directline";
message.Text = "1234";

var connector3 = new ConnectorClient(new Uri("https://directline.botframework.com/"));

if (msg1.Text == "1234") {
await connector3.Conversations.SendToConversationAsync((Activity)message);
}

ただし、「申し訳ありませんが、ボット コードに問題があります」というエラーが表示されます。私に何ができる?

4

1 に答える 1

0

directline チャネルは送信元のメッセージとは異なるためconnector3、次のように、そのサービス URL を信頼済みとしてマークし、初期化する必要があります。

MicrosoftAppCredentials.TrustServiceUrl("https://directline.botframework.com/", DateTime.Now.AddDays(1));

var account = new MicrosoftAppCredentials("MicrosoftAppId", "MicrosoftAppPassword");

var connector3 = new ConnectorClient(new Uri("https://directline.botframework.com/"), account);
于 2017-06-25T11:51:24.790 に答える