我试图让我的机器人开始与用户进行对话,但我不知道代码中应该从哪里发送消息.启动convo的文档在这里,但它并没有超级帮助:http://docs.botframework.com/connector/new-conversations/#navtitle.我也尝试在HandleSystemMessages中回复(如果我更改了消息类型,它与模拟器一起工作)但它仍然不会发送第一条消息.
我正在使用Microsoft Bot Connector和C#.
// Idk如何在stackoverflow中进行语法高亮显示//这是我在MessageController类中的代码
public async Task<Message> Post([FromBody]Message message)
{
if (message.Type == "Message")
{
return message.CreateReplyMessage($"You said:{message.Text}");
}
else
{
return HandleSystemMessage(message);
}
}
Run Code Online (Sandbox Code Playgroud)
我花了很多时间研究这个问题。结果,我成功地代表机器人发送消息。我的示例向群组对话发送一条消息。下面的代码是草稿,但它可以工作:
class Program
{
static void Main(string[] args)
{
var connector = new ConnectorClient(new Uri("https://skype.botframework.com"));
var conversationId = "19:ConversationAccountId@thread.skype";
var conversation = new ConversationAccount(true, conversationId);
var botAccount = new ChannelAccount("28:74a05skypeBotChannelAccountId", "your bot name");
IMessageActivity message = Activity.CreateMessageActivity();
message.From = botAccount;
message.Conversation = conversation;
message.ChannelId = "skype";
message.Text = "some text";
message.Locale = "en-En";
connector.Conversations.SendToConversation((Activity)message);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3200 次 |
| 最近记录: |