WXWork: 发送文件 0kb
我在使用juzi版本的wechaty 登录企业微信的时候 产生了问题 只有我刚登录或者重新登录的时候 可以正常发送附件 之后会发送0kb 如果我想正常发送 每次发送附件得断开重新登录 但是这样的话 这期间会导致收不到消息

发送语音的时候也会有这个问题 发送图片只能发送jpg 不能发送png图片
更新一下
// TODO 发送文件时 如果不重启 wechaty 库会有缓存问题 导致发送0kb的文件
if (data.type === MessageTypes.FILE) {
// await bot.stop();
// await bot.start();
//改用之后可以正常发送10kb以上的文件了 而且可以正常收到消息 但是也发现了一直有的情况Ï
// 10kb以下的文件始终无法正常发送 有概率可以发送出去 // 50kb以上文件无需任何操作可以正常发送 await bot.puppet.onStop(); await bot.puppet.onStart(); }
这个也有其他人反馈过,暂时还没修好。但你这个线索很有意义。 请提供一下操作时间和token后6位。
感谢回复,这是目前用的95ac86 我们公司与贵公司有合作 预定了很多token 希望尽快修复
在 2024-08-01 19:38:49,"NickWang" @.***> 写道:
这个也有其他人反馈过,暂时还没修好。但你这个线索很有意义。 请提供一下操作时间和token后6位。
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>
目前还发现 如果调用了一次登录 再次调用登录的时候 会发生报错 ,具体表现为 我创建了一个函数
无论是否我已经登录 再次调用都会发生错误
这个报错是因为启动一个 puppet-service 会锁上对应路径的文件作为缓存,你是同时启动了两个相同 token 的puppet产生的这个报错。(也可能是前一个没完全关闭。)
那请问我应该如何在不关闭程序的情况下,关闭之前的缓存链接和token使用,我试过用bot.stop和bot.pippet.onStop方法都不行,按道理来说,start启动了缓存,那么stop应该清除这个连接才是
---- 回复的原邮件 ---- | 发件人 | @.> | | 日期 | 2024年08月02日 16:54 | | 收件人 | @.> | | 抄送至 | @.>@.> | | 主题 | Re: [wechaty/puppet-supports] WXWork: 发送文件 0kb (Issue #533) |
这个报错是因为启动一个 puppet-service 会锁上对应路径的文件作为缓存,你是同时启动了两个相同 token 的puppet产生的这个报错。(也可能是前一个没完全关闭。)
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>
wechaty 最初设计的时候就是在构造器里绑定的缓存,而不是在 start 里。我们可以说是继承了这个缺陷。。。
但是wechaty已经登录了 再次登录,会直接跳到登录成功那个on 不会导致程序卡死
---- 回复的原邮件 ---- | 发件人 | @.> | | 日期 | 2024年08月02日 17:54 | | 收件人 | @.> | | 抄送至 | @.>@.> | | 主题 | Re: [wechaty/puppet-supports] WXWork: 发送文件 0kb (Issue #533) |
wechaty 最初设计的时候就是在构造器里绑定的缓存,而不是在 start 里。我们可以说是继承了这个缺陷。。。
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>
其实没太懂你的意思。你能用代码说明一下如何不退出程序、登录后再次登录?
如图 我有一个函数userLogin 当我调用第一次的时候 正常返回二维码 但是当我再次调用的时候 会产生如下错误
无论我之前是否已经扫码登录 是否可以在掉用前解开这个缓存锁 让我如同第一次调用这个函数一样
我尝试在第一次调用的时候 把wechaty对象加到内存里面 之后再调用的话 终止之前的缓存 但是没有成功
如果是同一个bot,你不应该在这里重新build一个新的wechaty实例,而是把旧的再start起来就可以了。
这个也有其他人反馈过,暂时还没修好。但你这个线索很有意义。 请提供一下操作时间和token后6位。
请问这个问题目前是否已经修好 ,是否准备修复 在修复了吗
这个也有其他人反馈过,暂时还没修好。但你这个线索很有意义。 请提供一下操作时间和token后6位。
请问这个问题目前是否已经修好 ,是否准备修复 在修复了吗
还在研究中,尝试进行了修复,目前在灰度状态,下周3会全量更新。
这个也有其他人反馈过,暂时还没修好。但你这个线索很有意义。 请提供一下操作时间和token后6位。
请问这个问题目前是否已经修好 ,是否准备修复 在修复了吗
你上面提供的token和时间点没有发现发文件的行为。
请问一下,你发送的时候是通过什么途径发送文件的?本地文件、oss url还是其他什么? 即 file.fromXXX 是怎么写的? 我这边测试反复发送十几次也没遇到。
目前是用的这个token 15dfd6,我的发送方式为发送了一个 fileBox (file-box
)
传入了一个buffer 和fileName
使用say 方法进行消息发送
目前测试确认的边界值为 大于 等于15k可以正常发送 小于就不行
目前是用的这个token 15dfd6,我的发送方式为发送了一个 fileBox (file-box )
传入了一个buffer 和fileName
使用say 方法进行消息发送
![]()
目前测试确认的边界值为 大于 等于15k可以正常发送 小于就不行
14k的这个文件好像是之前发过的,看日志走了缓存。这边能在用两个新文件测一下吗?
换了很多不一样的文件 txt格式 和 docx xlsx 都是小了就发不出去
换了很多不一样的文件 txt格式 和 docx xlsx 都是小了就发不出去
是,但你光这么说我看不了。我建议你找两个新文件,有空的时候操作下发送,然后留一下发送时间和token(如果还是刚才那个就不用留token了),我好去看日志。
还想反馈一个新问题 在企业微信登录之后 过几个小时 程序就会发送链接超时的错误 导致运行卡死
请尝试安装 @juzi/[email protected] 然后再次尝试。
传入了一个buffer 和fileName
使用say 方法进行消息发送
目前测试确认的边界值为 大于 等于15k可以正常发送 小于就不行 