我只是一个初学者,试图学习如何为kik编写机器人。 我正在尝试使用kik提供的节点js框架来编写它。
我想向机器人的所有订阅用户发送消息;我在他们的文档中找到了这个:
bot.send(Bot.Message.text('Hey, nice to meet you!'), 'a.username');
但我对他们如何获得订阅用户的用户名感到困惑。我尝试使用bot.getUserProfile.username,但它似乎未定义。
感谢您的帮助!此外,任何有关这个机器人如何工作的提示将不胜感激!我没有网络开发经验;为什么这个机器人必须在服务器上?
答案 0 :(得分:1)
首先,如果你想向所有用户发送一个爆炸,我建议使用广播API,它允许你批量发送消息100(而不是常规{{1} 25。 API)。 您可以像这样使用广播API:
send()
可以找到此方法的文档here。
至于向所有用户发送消息,您需要在某处(例如,在数据库中)有一个用户名列表。目前,Kik没有提供获取订阅者列表的方法。
这样的事情会起作用:
bot.broadcast(Bot.Message.text('some message'), ['username1', 'username2']);
在声明任何其他处理程序(例如bot.use((msg, next) => {
let username = msg.from; // Find the username from the incoming message
registerInDatabase(username); // Save it somewhere
next(); // Keep processing the message
});
)之前,您需要确保放置它。