我正在使用Microsoft Botframework和node.js版本的botbuilder。 我的机器人可以使用共享消息字段(botconnector 允许所有消息的字段)向 kik(和其他服务)发送消息。
但是,当我尝试将通道数据字段用于kik时,我收到400(错误请求)错误消息。 我已经调整了我的信息以使用以下提示:机器人连接器:向Kik发送自定义消息会导致400错误但我仍然缺少一些东西。
感谢您为kik正确映射消息的任何帮助。
导致 400 错误的代码:
session.send({
type: "Message",
to: { "channelId":"kik", "address": session.message.from.address},
from: { "channelId":"kik", "address": session.message.to.address},
replyToMessageId: session.message.id,
conversationId: session.message.conversationId,
channelConversationId: session.message.channelConversationId,
channelMessageId: session.message.channelMessageId,
channelData:
{
"messages": [
{
"chatId": session.message.channelConversationId,
"type": "text",
"to": session.message.from.name,
"text": "test text",
"noForward": true
}
]
}
});
我也尝试只发送 channelData 部分,但这也会导致 400 错误:
channelData:
{
"messages": [
{
"chatId": session.message.channelConversationId,
"type": "text",
"to": session.message.from.name,
"text": "test text",
"noForward": true
}
]
}
您的数据格式不正确。 Kik希望文本内容是"正文"而不是"文本"。 尝试:
"messages": [
{
"chatId": session.message.channelConversationId,
"type": "text",
"to": session.message.from.name,
"body": "test text",
"noForward": true
}