SessionItem
单条会话项,表示会话列表中的一个条目,提供置顶、免打扰、删除等操作。
属性
| 属性 | 类型 | 说明 |
|---|---|---|
name | str | 会话名称(联系人昵称或群名) |
unread_count | int | 未读消息数 |
last_message | str | 最后一条消息预览 |
timestamp | str | 最后消息时间 |
is_muted | bool | 是否消息免打扰 |
is_pinned | bool | 是否已置顶 |
方法
open()
点击打开此会话。
- 返回
SessionItem
close()
关闭(不显示)此会话。
- 返回
SessionItem
pin() / unpin()
置顶 / 取消置顶。
- 返回
SessionItem
mute() / unmute()
消息免打扰 / 允许通知。
- 返回
SessionItem
mark_as_unread() / mark_as_read()
标为未读 / 标为已读。
- 返回
SessionItem
separate()
独立窗口显示(右键菜单)。
- 返回
SessionItem
separate_by_click()
双击打开独立窗口。
- 返回
SeparateChat
hide()
不显示此会话。
- 返回
SessionItem
delete()
删除此会话。
- 返回
SessionItem
scroll_to_visible()
滚动使此会话项在列表中可见。
- 返回
bool— 是否成功滚动到可见
is_in_list()
控件是否存在于会话列表的 UIA 树中。
- 返回
bool
is_visible()
控件是否完全在会话列表的可视区域内(可被点击)。
- 返回
bool
to_dict()
将会话项信息转为字典。
- 返回
dict
示例
python
from pywxauto import Weixin
wx = Weixin()
# 遍历会话列表
for item in wx.session.iter_sessions_by_scroll(count=20):
print(f"{item.name} - 未读: {item.unread_count}")
if item.unread_count > 0:
item.open()