如何使用 kik bot 向所有订阅用户发送消息
How to send a message to all subscribed users with kik bot
我只是一个尝试学习如何为 kik 编写机器人的初学者。
我正在尝试使用kik提供的node js框架来编写它。
我想向机器人的所有订阅用户发送消息;我在他们的文档中找到了这个:
bot.send(Bot.Message.text('Hey, nice to meet you!'), 'a.username');
但我对他们如何获得订阅用户的用户名感到困惑。我尝试使用 bot.getUserProfile.username,但它似乎未定义。
感谢您的帮助!此外,任何有关此机器人如何工作的提示都将不胜感激!我没有网络开发经验;为什么这个机器人必须在服务器上?
首先,如果您想向所有用户群发消息,我建议您使用广播 API,它允许您以 100 条为一组发送消息(而不是 25 条)常规 send()
API)。
您可以像这样使用广播 API:
bot.broadcast(Bot.Message.text('some message'), ['username1', 'username2']);
可以找到此方法的文档 here。
至于向所有用户发送消息,您需要在某处(例如在数据库中)有一个用户名列表。目前,Kik 不提供获取订阅者列表的方法。
像这样的东西会起作用:
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
});
您需要确保在声明任何其他处理程序(例如 bot.onTextMessage()
)之前放置它。
我只是一个尝试学习如何为 kik 编写机器人的初学者。 我正在尝试使用kik提供的node js框架来编写它。
我想向机器人的所有订阅用户发送消息;我在他们的文档中找到了这个:
bot.send(Bot.Message.text('Hey, nice to meet you!'), 'a.username');
但我对他们如何获得订阅用户的用户名感到困惑。我尝试使用 bot.getUserProfile.username,但它似乎未定义。
感谢您的帮助!此外,任何有关此机器人如何工作的提示都将不胜感激!我没有网络开发经验;为什么这个机器人必须在服务器上?
首先,如果您想向所有用户群发消息,我建议您使用广播 API,它允许您以 100 条为一组发送消息(而不是 25 条)常规 send()
API)。
您可以像这样使用广播 API:
bot.broadcast(Bot.Message.text('some message'), ['username1', 'username2']);
可以找到此方法的文档 here。
至于向所有用户发送消息,您需要在某处(例如在数据库中)有一个用户名列表。目前,Kik 不提供获取订阅者列表的方法。
像这样的东西会起作用:
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
});
您需要确保在声明任何其他处理程序(例如 bot.onTextMessage()
)之前放置它。