🚀 用户服务合并
当特定用户决定连接到特定的狙击机器人时,我们的服务必须提供一种机制来安全地将用户链接到狙击机器人,因此每个狙击机器人必须添加一个条件(当用户发送消息时),以下是最流行的 Node.js 库的示例node-telegram-bot-api ,如何做到这一点:
const TelegramBot = require('node-telegram-bot-api');
const TRIGGER_KEY = 'LOTUSMARKET';
// API-KEYS
const TELEGRAM_TOKEN = 'YOUR_TELEGRAM_BOT_TOKEN';
const LOTUSMARKET_API_KEY = 'YOUR_LOTUS_MARKET_API_KEY';
(() => {
const bot = new TelegramBot(TELEGRAM_TOKEN, {
polling: true,
});
bot.on('message', async (data) => {
const {
text,
chat: { id },
} = data;
if (text.startsWith(TRIGGER_KEY)) {
const response = await fetch('https://lotusmarket.io/api/v1/sniper-bots/verify', {
method: 'POST',
headers: {
‘Accept’: ‘application/json’,
'Content-Type': 'application/json',
'Api-Key': LOTUSMARKET_API_KEY,
},
body: JSON.stringify({
verificationCode: text,
id,
}),
});
if (response.status === 200) {
// NOTIFY USER THAT EVERYTHING IS OKAY
bot.sendMessage(id, 'You was connected to LotusMarket terminal!');
return;
}
// NOTIFY USER THAT EVERYTHING IS OKAY
bot.sendMessage(id, "Now you can't connect to LotusMarket terminal!");
}
});
})();
在这里,您可以看到狙击机器人将需要在阅读此类型的消息时发送额外的请求部分,下面是如何使用上述示例中显示的路由的详细说明。
https://lotusmarket.io/api/v1/sniper-bots/verify
小心!由于以下原因,您的访问可能会受到限制:
- 您的 IP 地址已更改,现在 API 不可用, 请通知我们
- 您尝试了太多次的请求,我们的限制是每分钟 60 次请求
- 有时我们需要刷新白名单,在这个时候服务器可能无法使用
Accept: application/json
Content-Type: application/json
Api-Key: <YOUR_API_KEY>
{
"id": 0,
"verificationCode": "VERIFICATION_CODE",
}
身份
号码
用户写入验证代码的 Telegram 聊天 id
verificationCode
字符串
用户从终端复制的连接到狙击机器人的代码
如果请求成功通过所有条件,响应将以以下格式返回
{
"status": 200,
"message": "用户验证成功!"
}
如果请求失败,响应中将提供代码和原因
{
"status": 404,
"message": "找不到验证代码!"
}
如果 API-KEY 无效,响应将以以下格式返回
{
"status": 403,
"message": "未经授权"
}
如果用户已通过给定的验证代码激活,响应将以以下格式返回
{
"status": 400,
"message": "用户已经被激活"
}
当用户尝试次数过多时,响应将以以下格式返回
{
"status": 429,
"message": "每分钟不超过 60 次请求"
}
每分钟不超过 60 次请求
号码
内部 API 中的错误代码
消息
号码/p>
描述请求失败的原因