wechaty / python-wechaty

Python Wechaty is a Conversational RPA SDK for Chatbot Makers written in Python
https://wechaty.readthedocs.io/zh_CN/latest/
Apache License 2.0
1.56k stars 229 forks source link

关于room.id和contact.id的问题。 #273

Open xinxinyihao opened 2 years ago

xinxinyihao commented 2 years ago

requirements

Describe your problem

group_id = room.room_id
user_id = from_contact.contact_id

结果
Room <@@724b63ef84f0a545ca67b3e4e67f0629d4d43037185c742956c3e23b57d7cfdd>
Contact <@8d29cafa964809409bbc4d5149c0573fd23dde3225981b94f2aa7689387ca9c4>

是不是每次重启docker以后,通过上面这个获取的群组id和个人id,就会发生变化啊?那我想建立数据库,保存用户id和群组id,然后记录个人在群组中的各种数据,来提供更多的玩法。那我能否获得一个用户id和群组id唯一不变的标志呀。就像qq群号和qq号那样。

JoffreyN commented 2 years ago

同求!

lixiyu commented 2 years ago

+1, 我也需要。 我也需要一个可以区分不同用户、不同群的唯一标识符。不要万一重启 docker 以后这个值会变,因为将来可能docker又升级了导致我原来的容器不能用必须重新创建,也可能需要把程序迁移到新的机器上。所以这个唯一标识符最好能和微信官方提供的唯一标识符一致,比如直接用微信号。 我用 talker.weixin() 拿不到微信号,返回值是 NULL

ghost commented 1 year ago

我试了好几个方法都取不到微信号

wj-Mcat commented 1 year ago

you can try to get all info from payload attribute:

print(contact.payload)
ghost commented 1 year ago

print(Contact.payload) 输出的是 <property object at 0x101ac44f0> 是方法不对吗

wj-Mcat commented 1 year ago

你这个通过类来获取属性啊,肯定会错误啊。

你要通过实例化对象来。