ruby实现potato机器人发送消息
2019-11-07 本文已影响0人
程序员小哥哥
需求:有些时候我们需要进行报警提示,可能有时候发送错误日志,可能无法及时去看到,就想着如果能发送到聊天软件上,这样我可以随时看到消息,及时处理错误,在国外一般聊天工具是potato chat,那么如何往pt发送消息呢
一、选择‘机器人大厅’
1二、选择‘机器人管家(BotFather)’
2 3三、创建新的机器人即可
4备注:这里会让你给机器人起名,按照提示来即可
四、获取群组信息
首先把机器人拉到你创建的群组里,然后把bot_token
按照下面的格式对应填好,复制到浏览器即可
格式
https://api.sydney.im:8443/<bot_token>/getGroups
比如我的是
https://api.sydney.im:8443/10121168:M8cG3zt6u6Z3bsmNFW0Hf4Sai/getGroups
potato机器人api
{"ok":true,"result":{"Groups":[{"PeerID":11190202,"PeerName":"bot test"}]}}
五、代码
potato_notify.rb
class PotatoNotify
def self.warn(type, params)
send_message({ chat_type: 2, chat_id: CONFIG.warn_group, text: params.to_s })
end
# 发送消息
def self.send_message(params)
RestClient.log = 'stdout'
headers = { content_type: :json, accept: :json }
Rails.logger.info params
RestClient.post(CONFIG.potato_host_url, params.to_json, headers)
end
end
app.yml
# potato bot
potato_host_url: https://api.sydney.im:8443/10121168:M8cG3zt6u6Z3bsmNFW0Hf4Sai/sendTextMessage
warn_group: 11190202
发送返回
{
"ok": true,
"result": {
"message_id": 12007
}
}
代表成功