vik*_*ant 6 bots node.js skypedeveloper skype-bots
我正在尝试构建skype bot.
我按照给出的文档skype-sdk但未能使用它创建它.无法从机器人获得回复.
const fs = require('fs');
const restify = require('restify');
const skype = require('skype-sdk');
const botService = new skype.BotService({
messaging: {
botId: 'xxxxxxxx-xxx-xxx-xxx-xxxxxxxxxxxx',
serverUrl : "https://example.net",
requestTimeout : 15000,
appId: 'xxxxxxxx-xxx-xxx-xxx-xxxxxxxxxxxx',
appSecret: 'xxxxxxxxxxxxxxxxxxxxxxxx'
}
});
botService.on('contactAdded', (bot, data) => {
console.log("bot replay");
bot.reply('Hello ${data.fromDisplayName}!', true);
});
botService.on('personalMessage', (bot, data) => {
console.log("person replay");
bot.reply('Hey ${data.from}. Thank you for your message: "${data.content}".', true);
});
const server = restify.createServer();
server.use(skype.ensureHttps(true));
server.use(skype.verifySkypeCert({}));
server.post('/skbot', skype.messagingHandler(botService));
const port = process.env.PORT || 8080;
server.listen(port);
console.log('Listening for incoming requests on port ' + port);
Run Code Online (Sandbox Code Playgroud)
谢谢
在提供的示例中,由于指定了错误的服务器,机器人未连接到 Skype 服务器:
serverUrl : "https://example.net"
Run Code Online (Sandbox Code Playgroud)
您必须指定有效的 Skype 服务器:
serverUrl : "https://apis.skype.com"
Run Code Online (Sandbox Code Playgroud)
您还指定了错误的 API uri server.post(实际上这取决于您的 webhook 设置,但没有提供它们,所以我假设默认值):
server.post('/skbot', skype.messagingHandler(botService));
Run Code Online (Sandbox Code Playgroud)
您必须用于'/v1/chat'消息传递。尝试一下这个教程。