【发布时间】:2013-02-24 07:33:52
【问题描述】:
有没有办法检查聊天是否是群聊?或者至少要找出一个组中有多少用户。
比如查用户号,如果是2,那么明明是1-1(Single),但如果是其他的话,那就是群聊了。
【问题讨论】:
有没有办法检查聊天是否是群聊?或者至少要找出一个组中有多少用户。
比如查用户号,如果是2,那么明明是1-1(Single),但如果是其他的话,那就是群聊了。
【问题讨论】:
聊天对象的Type 属性将是chatTypeDialog 或chatTypeMultiChat,后者是群聊。您可以放心地忽略其他旧枚举值。
【讨论】:
message.Chat.Type 总是挂起,最终失去与 Skype 的连接
这是我为另一个问题here. 编写的代码的轻微修改以下代码检查打开的聊天或已添加书签的聊天中是否有任何群聊。您应该传入 topic 以查找有关该主题的聊天。
def checkGroupChat(topic=""):
"""
Checks if a group exists.
"""
import Skype4Py as skype
skypeClient = skype.Skype()
skypeClient.Attach()
for elem in skypeClient.ActiveChats: # Looks in active chats and returns True if chat is found.
if len(elem.Members) > 2 and elem.Topic == topic:
return True
for chat in skypeClient.BookmarkedChats: # Looks in Bookmarked Chats.
if chat.Topic == topic:
return True
return False
【讨论】:
skypeClient.ActiveChats 部分负责这一点,如果您有一条消息并想从中识别聊天,那么您可以对上述代码进行少量修改。
这对我有用:
def on_message(message, status):
len(message.Chat.Members) > 2:
# this is a private chat
s = Skype4Py.Skype()
s.OnMessageStatus = on_message
s.Attach()
message.Chat.Type 总是为我挂起,然后几秒钟后与 Skype 的连接丢失。好像是个bug
【讨论】: