wechatbot-webhook icon indicating copy to clipboard operation
wechatbot-webhook copied to clipboard

[alpha] wine + docker + Windows 版微信计划

Open danni-cool opened this issue 2 years ago • 43 comments

[!CAUTION] 目前该分支正在 WIP 中,如果遇到预期之外的问题,请留言

背景

  • windows协议替换web协议版本 https://github.com/danni-cool/docker-wechatbot-webhook/issues/22 分支:windows

目前尝试方案(基于wechaty-puppet-engine + hook)

  • wine环境 和 docker 相关

    • [x] 解决 wine 环境Windows 版本 Node 无法运行的问题,以及 sidecar 的 frida 模块找不到 Process的问题
    • [x] 解决无法运行wechat的问题
    • [x] 解决遇到wsl编译的微信但在纯ubuntu上dockfile构建不成功 https://github.com/danni-cool/docker-wechatbot-webhook/issues/54
    • [x] 替换 sureer/wine-box:8.0.2(占用率极高)100% -> 50%
    • [x] 重新编写镜像
    • [x] wine 环境重启崩溃无法重启问题修复
    • [x] 降级windows版本,使用hook版本,确保成功
    • [x] nodeService 跟随docker镜像自动化
  • windows 服务部署

    • [x] 使用hook版本 替换frida协议
    • [ ] webhook 服务编写

历史方案(废弃)(基于puppet-wechaty-xp)

danni-cool avatar Dec 02 '23 15:12 danni-cool

windows docker运行后 不能显示登录二维码是什么原因 image

dgo2dance avatar Dec 04 '23 05:12 dgo2dance

@dgo2dance 貌似你百度也上不去,docker容器没网吗

danni-cool avatar Dec 04 '23 07:12 danni-cool

@dgo2dance 貌似你百度也上不去,docker容器没网吗

是的 docker容器没网 其他docker容器可以的 不知道原因在哪里 mac系统 mac上面装的docker

dgo2dance avatar Dec 04 '23 07:12 dgo2dance

@dgo2dance 重新创建容器、桥接网络等,先排除下环境因素

danni-cool avatar Dec 04 '23 07:12 danni-cool

@dgo2dance 重新创建容器、桥接网络等,先排除下环境因素

重新创建容器可以了,收发消息目前分支可以吗

dgo2dance avatar Dec 04 '23 07:12 dgo2dance

@dgo2dance 重新创建容器、桥接网络等,先排除下环境因素

重新创建容器可以了,收发消息目前分支可以吗

我再推一个镜像上去,目前都得手动(启动服务、安装微信、崩溃后重启等),功能支持性看issue,收到不支持的消息如图片、视频、语音等微信会崩溃

danni-cool avatar Dec 04 '23 07:12 danni-cool

discord可以邀请一下不?

KevinGong2013 avatar Dec 04 '23 08:12 KevinGong2013

@KevinGong2013 https://discord.gg/GFXwsqKG

danni-cool avatar Dec 04 '23 08:12 danni-cool

@dgo2dance 重新推了windows镜像 和 更新了readme

danni-cool avatar Dec 04 '23 08:12 danni-cool

@dgo2dance 重新推了windows镜像 和 更新了readme

确实会存在机率 应用崩溃的问题

dgo2dance avatar Dec 28 '23 13:12 dgo2dance

@dgo2dance 重新推了windows镜像 和 更新了readme

确实会存在机率 应用崩溃的问题

应用崩溃的问题,有思路吗,崩溃是影响可用性

dgo2dance avatar Dec 30 '23 08:12 dgo2dance

@dgo2dance WIP 分支,暂时无法保证稳定可用性,还有很多底层问题要解决,有兴趣可以一起研究

danni-cool avatar Dec 31 '23 04:12 danni-cool

安装完成后发现还是很容易崩溃,正在想办法定位问题。目前发现崩溃后重启字体就会失效,出现口口口口。

techctu avatar Feb 01 '24 09:02 techctu

@techctu 目测是frida守护启动问题,后面有计划下掉这个服务,字体的话不前不打算解决

danni-cool avatar Feb 01 '24 14:02 danni-cool

有无可能支持读取公众号的api?想把关注的公众号的推文用rss输出给阅读器

ShiFangJuMie avatar Feb 14 '24 19:02 ShiFangJuMie

有无可能支持读取公众号的api?想把关注的公众号的推文用rss输出给阅读器

https://docs.rsshub.app/routes/social-media#xin-bang-wei-xin-gong-zhong-hao

danni-cool avatar Feb 15 '24 03:02 danni-cool

有无可能支持读取公众号的api?想把关注的公众号的推文用rss输出给阅读器

https://docs.rsshub.app/routes/social-media#xin-bang-wei-xin-gong-zhong-hao

这个已经down了,我现在用的就是RSSHUB,主要还是数据源的问题,这里绝大多数的数据源我都试过了,基本上现在能用的就二十次幂。

用电报转发的方案我是没试过,不确定是不是可以稳定用。

主要吧,已经在用本项目做bot了,真的没有那么多微信号(和手机)可以分配到其他的项目上。 手机上还不能切换成其他的号,一个号就锁定一台手机

ShiFangJuMie avatar Feb 15 '24 13:02 ShiFangJuMie

还有一种方式,是用EFB的方案,他也是和本项目类似。 https://github.com/DIYgod/RSSHub/issues/2172#issuecomment-968624482

所以有个新的思路,本项目支持公众号推文链接,所以应该是可以监听到这个消息然后转发到TG频道这样子,就可以用同一个微信号既要又要

edit: 傻了呀,都已经接收到信息了,还转TG干嘛,自己写进数据库就好了嘛~

edit2: 实践了,如果一个推文有多篇文章的话,只能得到第一条主推文的信息,下面的推拿不到

ShiFangJuMie avatar Feb 16 '24 15:02 ShiFangJuMie

@ShiFangJuMie 一个推文多篇文章是如何实现的,不是每次推文通过bot的收消息接口,入库一次吗

danni-cool avatar Feb 17 '24 03:02 danni-cool

@ShiFangJuMie 一个推文多篇文章是如何实现的,不是每次推文通过bot的收消息接口,入库一次吗

我的意思是,发文的人是发了多篇,通过接口是只接收到了一篇

以这个为例,C919那篇是没办法拿到

{
	"description": "",
	"thumbnailUrl": "https://mmbiz.qpic.cn/sz_mmbiz_jpg/oq1PymRl9D6qg8YXiaVFVOicJp5b3Hzhib14QZXs1Xsr2cibV27PUghGlQkia9tJGdEH0PFVhp2FOKEPTprQnwCCJXg/640?wxtype=jpeg&wxfrom=0",
	"title": "最后50米连超5人!中国队上演“超级逆转”",
	"url": "http://mp.weixin.qq.com/s?__biz=MTI0MDU3NDYwMQ==&mid=2657613431&idx=1&sn=8ca0f669044cb7c4739c85eedd451b0c&chksm=7b824b8865ad93b1ee2ff09fb9d840a2348aed79762d2463cd6f6e59b8375e46aa80a1c7128c&scene=0&xtrack=1#rd"
}

推文是这样的: image

ShiFangJuMie avatar Feb 17 '24 07:02 ShiFangJuMie

我将这两天折腾公众号转RSS这件事整理了一下,发布在这里:

https://linux.do/t/topic/15122/1

ShiFangJuMie avatar Feb 17 '24 19:02 ShiFangJuMie

我将这两天折腾公众号转RSS这件事整理了一下,发布在这里:

https://linux.do/t/topic/15122/1

重新发一下吧,没有了

9k001 avatar Feb 18 '24 02:02 9k001

我将这两天折腾公众号转RSS这件事整理了一下,发布在这里: https://linux.do/t/topic/15122/1

重新发一下吧,没有了

被站长移入高级区了,不登录以后水点帖子升级,没法看到了=、= 我发个副本 https://granite-ocarina-4d0.notion.site/RSS-RSS-e960f34f46d44321b2c2add9ed1f0a2e?pvs=4

ShiFangJuMie avatar Feb 18 '24 05:02 ShiFangJuMie

我将这两天折腾公众号转RSS这件事整理了一下,发布在这里: https://linux.do/t/topic/15122/1

重新发一下吧,没有了

被站长移入高级区了,不登录以后水点帖子升级,没法看到了=、= 我发个副本 https://granite-ocarina-4d0.notion.site/RSS-RSS-e960f34f46d44321b2c2add9ed1f0a2e?pvs=4

我还专门注册了一个号进去,还是没给看。 我反复看了半天,业务逻辑是

wechatbot-webhook 获得公众号文章 -->webhook--> 发送至 Python Flask Docker --> 生成 RSS

FreshRSS订阅上述RSS 我改天试试 Python 的项目写的不错,给了很大的启发

9k001 avatar Feb 19 '24 03:02 9k001

高级区里有很多好东西,要发点/回点帖子升到1级

ShiFangJuMie avatar Feb 19 '24 07:02 ShiFangJuMie

高级区里有很多好东西,要发点/回点帖子升到1级

空了常去看看。。。 你那个业务逻辑是我说得那样么?。。

9k001 avatar Feb 19 '24 09:02 9k001

高级区里有很多好东西,要发点/回点帖子升到1级

空了常去看看。。。 你那个业务逻辑是我说得那样么?。。

说业务逻辑这个词就稍微大了一点,其实也没啥逻辑,就是个顺序: (收)通过RECVD_MSG_API接收url_link类型的消息 -> (写)存入数据库 -> (读)从数据中读出来生成RSS

ShiFangJuMie avatar Feb 19 '24 19:02 ShiFangJuMie

我现在有一个长期开机的windows虚拟机并长期登录着windows版微信,请问有没有什么方法可以利用这个使用bot呢?

Jiabccc avatar Feb 20 '24 04:02 Jiabccc

@Jiabccc windows分支还有很多问题,目前计划替换掉原先基于puppet-xp那套,所以暂时还不能稳定部署和调用,目前可稳定运行的仍然是web协议,windows 协议会有空陆续迭代

danni-cool avatar Feb 20 '24 05:02 danni-cool

linux版微信来了,不知是否有意义 https://www.52pojie.cn/thread-1896902-1-1.html

ShiFangJuMie avatar Mar 07 '24 16:03 ShiFangJuMie