如何使用kik bot向所有订阅用户发送消息

时间:2016-07-30 21:16:33

标签: node.js kik

我只是一个初学者,试图学习如何为kik编写机器人。 我正在尝试使用kik提供的节点js框架来编写它。

我想向机器人的所有订阅用户发送消息;我在他们的文档中找到了这个:

bot.send(Bot.Message.text('Hey, nice to meet you!'), 'a.username');

但我对他们如何获得订阅用户的用户名感到困惑。我尝试使用bot.getUserProfile.username,但它似乎未定义。

感谢您的帮助!此外,任何有关这个机器人如何工作的提示将不胜感激!我没有网络开发经验;为什么这个机器人必须在服务器上?

1 个答案:

答案 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 }); )之前,您需要确保放置它。