过去很多管理员都使用sms-gate从他们的系统发送重要信息,例如“断电,UPS现在正在工作!”,“上电,UPS关闭!”或“CPU温度过高!”。今天在Facebook时代我们使用messenger而不是SMS,所以我想知道我是否可以为这样的事情创建一个命令行bash或php脚本。
这个想法 - cron每10分钟检查一次这个条件,如果是,则向我的信使发送消息。
问题:
我找到了通知应用程序,但我认为它不会向Messenger发送消息,所以它将毫无用处。
答案 0 :(得分:6)
Chat API已使用Graph API的v2.0删除,无法再使用API发送消息。顺便说一下,消息是用于真实用户之间的通信,它们不应该用作通知系统。对于那些警告,短信仍然是一个很好的选择。
使用Page和/conversations
端点也不起作用:
页面只能回复消息 - 他们无法发起对话。此外,一个页面只能响应特定消息两次,另一方必须在他们再次回复之前做出响应。
来源:https://developers.facebook.com/docs/graph-api/reference/v2.3/conversation/messages#publish
答案 1 :(得分:2)
我认为,出于特殊目的,推特可能是更好的选择。 Twitter接受来自API的推文。因此,您需要设置一个帐户,以定期或事件触发方式发布您的系统状态,并在您自己的个人帐户中关注它。 并且已经有很多开源项目专注于通过API进行推文,t是我目前使用的。
答案 2 :(得分:1)
我刚刚为该用例发布了一项服务: https://www.nimrod-messenger.io/
它处于早期阶段。反馈非常受欢迎: - )
答案 3 :(得分:0)
因此,有几个命令行应用程序可以执行此操作。
有一个libpurple扩展(https://github.com/dequis/purple-facebook)可以工作。然而紫色似乎不支持消息历史的想法。这是一个耻辱,因为我想大多数人使用Facebook是离线消息的默认方式。
还有一个用于facebook的命令工具:https://www.npmjs.com/package/fb-messenger-cli,它支持历史记录。不幸的是,这是一个TUI而不是命令行应用程序,似乎并不依赖于一个单独的Facebook库。 一些黑客或可怕的期望胶水可以解决这个问题。
答案 4 :(得分:0)
想法
我需要一个检查服务器的脚本(可在我的工作/本地Mac上运行)。如果有问题,脚本会在Facebook上向我发送消息。
依赖项
需要安装: https://github.com/mjkaufer/Messer
FB_SENDER_LOGIN=""
FB_SENDER_PASSWORD=""
function send_fb_message {
FB_MESSER_COMAND="messer $FB_SENDER_LOGIN $FB_SENDER_PASSWORD --command='m \"$1\" $2'"
eval "$FB_MESSER_COMAND"
}
RECIPIENT_NAME_DISPLAYED_IN_FACEBOOK_WEBSITE="Vasily Bodnarchuk"
MESSAGE="Houston, we have a problem!!!"
send_fb_message "$RECIPIENT_NAME_DISPLAYED_IN_FACEBOOK_WEBSITE" "$MESSAGE"
答案 5 :(得分:0)
我一直在寻找类似的东西,发现梅塞尔是行之有效的方式。
看看这个名为Messer https://github.com/mjkaufer/Messer的仓库
(它也适用于2FA,但不适用于应用密码)
请参阅自述文件
我需要它自动运行,因此我将其与bash脚本一起使用为非交互模式:
message="Hey, what\'s up bro"
FULLPATH/node_modules/.bin/messer --command="m \"Myfriends Name\" $message"
/node_modules/.bin/messer
可执行文件。