V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xh3ccc
V2EX  ›  宽带症候群

寻一开源的 self-hosted 的消息推送服务端/客户端,实现 Wake On Lan

  •  
  •   xh3ccc · 2018-06-03 21:54:33 +08:00 · 3363 次点击
    这是一个创建于 2365 天前的主题,其中的信息可能已经有所发展或是发生改变。
    租房:我有一个闲置的 Android 手机在租房中,我希望通过这个手机控制(Wake On Lan 唤醒 /开机;程序执行;...)同一局域网下的台式机 (唤醒以后就可以用 teamviewer 什么来直接控制台式机了)。Android 上可通过 Tasker 或 Automate 定义 task 来实现 wol,但没有一个好的工具 [远程] 触发这个 task。

    这个帖子和我一样的需求 https://post.smzdm.com/p/376730/ 它里面提到了国内一款免费的叫做[Server 酱]的的免费推送工具,用户发送个 http 请求就可以向自己的客户端推送通知了。这个[Server 酱]我工作日测了很多次都能推送正常(手机移动数据,没连 WiFi)。

    然而周末回父母家后,想远程下租房里的台式机。然而却发现用[Server 酱]发送了很多次请求(显示发送成功),台式机上的 Teamviewer 始终显示未登录。我原以为是不是台式机上的 Teamviewer 账户登录失败的缘故,结果今晚回到租房,发现台式机压根没唤醒,查看了闲置手机也未收到通知。于是我在租房内用手机( 4g 信号)再次用[Server 酱]发送了一次请求,闲置手机接收成功,电脑成功唤醒。这让我感觉到[Server 酱]的不稳定性。

    我希望找到一个开源的消息推送工具,能在自己 VPS 上搭建服务,能有一个开源的 Android 客户端接收 /发送通知。功能就是简单的 A->Server->B。不需要支持 n 个客户,不需要复杂的消息队列。不知道有没有根据 RPC 框架(如 gRPC) 用 C++/go 写的。谢谢。
    第 1 条附言  ·  2018-06-04 23:19:54 +08:00
    已用 QQ 小号。。
    第 2 条附言  ·  2018-06-05 00:38:04 +08:00
    Android 下 用 QQ 国际版省电,不要用 TIM。
    第 3 条附言  ·  2018-06-05 22:26:20 +08:00
    轻聊版最省电。。
    12 条回复    2018-06-04 12:39:20 +08:00
    xh3ccc
        1
    xh3ccc  
    OP
       2018-06-03 21:58:12 +08:00
    对了,运营商提供的不是公网 ip,所以通过路由器 DDNS 等方式是不通的。
    tomczhen
        2
    tomczhen  
       2018-06-03 22:05:53 +08:00 via Android   ❤️ 1
    大妈那篇是我写的,如果你能控制网关,可以用映射或者虚拟网络来实现唤醒。

    另外 automate 的其他功能也可以看看,短信也是可以读的。
    xh3ccc
        3
    xh3ccc  
    OP
       2018-06-03 22:28:11 +08:00
    @tomczhen 好巧。。好像 Server 酱的作者也在 v2ex。

    非公网 ip 映射不了的。闲置手机为了省电,都飞行模式,也没额外的手机卡。微信,qq 这些耗电的程序也没装(倒是有个 QQ 小号)。
    xh3ccc
        4
    xh3ccc  
    OP
       2018-06-03 22:29:59 +08:00
    @tomczhen 话说那个 Jenkins,它注册为 Windows 的一个 Server,这样是无法启动图形界面的。比如我用它调用一个批处理文件,里面如打开一个 notepad 都是不成功的。
    xh3ccc
        5
    xh3ccc  
    OP
       2018-06-03 22:31:00 +08:00
    @tomczhen Server -> Service
    tomczhen
        6
    tomczhen  
       2018-06-03 22:59:27 +08:00 via Android   ❤️ 1
    那篇文章是写给非计算机相关人士看的,有公网 VPS 可以操作的方式不要太多,就别搞 Jenkins 了。

    比较好的办法是弄台刷了 lede 的路由器代替手机,即使没有公网 VPS,也可以 zerotire 连。

    ifttt 有自定义 hook,automate/tasker 还能配合 mqtt client 来搞。关机可以找找 PowerShell 的方法,应该是有的。
    dbw9580
        7
    dbw9580  
       2018-06-03 23:00:01 +08:00 via Android   ❤️ 1
    用微信啊
    注册个小号,用微信给小号发消息,然后用 automate 监听微信的通知,控制发送 wol
    Osk
        8
    Osk  
       2018-06-03 23:11:02 +08:00 via Android   ❤️ 1
    路由器登陆 vps ssh,创建反向隧道,远程通过这个隧道登陆路由器 ssh,转发 8080 端口到路由 80 端口,然后打开 http://localhost:8080,web 界面 wol 或者使用 luci 的 shell commands app 运行命令发送 wol 包。我就用差不多的方法,前提是路由器是 openwrt 的,rom 能安装下 openssh,wol 等包,用半年多没有出现连不上的问题,除了断网停电
    xh3ccc
        9
    xh3ccc  
    OP
       2018-06-03 23:20:57 +08:00
    @tomczhen @Osk 路由器房东的,没办法

    @dbw9580 目前来看,快捷方便的办法还真是 qq 微信小号之类的了
    oovveeaarr
        10
    oovveeaarr  
       2018-06-03 23:45:53 +08:00
    发短信)
    linxijun
        11
    linxijun  
       2018-06-04 02:56:51 +08:00 via iPad
    楼主可以试试 airdroid,要在外网访问的话每个月 18 块钱,包年便宜点。。跟 vps 价格相比差的不止是一点点,虽然我也用远程 ddns 唤醒,但是我现在路由器里都设置定时任务,自动唤醒电脑,自动关闭电脑直接用系统里的任务和计划程序来达成自动关机。。。
    wdv2ly
        12
    wdv2ly  
       2018-06-04 12:39:20 +08:00
    手机装一个 Telegram,然后花 10 分钟写个推送机器人,over。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1813 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 16:35 · PVG 00:35 · LAX 08:35 · JFK 11:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.