Python Skype4Py:更改群聊成员的角色

Python Skype4Py:更改群聊成员的角色,python,skype4py,Python,Skype4py,我有一个带命令的skypebot。我正在尝试实现的命令之一是“升级到主控”: 机器人是主机,目标是用户。不会引发任何错误,但不会在聊天中更改成员的角色。我确实看到了日志条目打印类型(成员)显示,似乎无法更改角色,但我不确定 在群聊中,指挥官使用:!推广用户 运行后,使用/whois user给出: member: user role: USER subscribed: YES banned: NO online locations: [scrubbed] 有什么想法吗?要想达到我想要的目的,还

我有一个带命令的skypebot。我正在尝试实现的命令之一是“升级到主控”:

机器人是主机,目标是用户。不会引发任何错误,但不会在聊天中更改成员的角色。我确实看到了日志条目<代码>打印类型(成员)显示
,似乎无法更改角色,但我不确定

在群聊中,指挥官使用:
!推广用户
运行后,使用
/whois user
给出:

member: user
role: USER
subscribed: YES
banned: NO
online locations: [scrubbed]

有什么想法吗?

要想达到我想要的目的,还需要两个额外的步骤:

  • 当我需要聊天时,我正在使用
    chat.Members
  • 这个机器人必须是我的三个测试账户的
    创建者。这可能与谁添加了哪个用户有关。以前,我的bot是
    主程序
    ,user1是
    创建者
    。我不知道用户的AddedBy属性如何影响用户,但它确实起到了作用。既然我的机器人是
    创建者
    ,我就可以影响其他用户的角色了

  • 我也有一个Skype机器人
    您可以这样做:

                            elif msg.startswith('!listener '):
                        debug.action('!listener command executed.')
                        string = msg.replace('!listener ', '', 1)
                        send('/setrole '+string+' listener')
    
    那就做吧

                            elif msg.startswith('!helper '):
                        debug.action('!helper command executed.')
                        string = msg.replace('!helper ', '', 1)
                        send('/setrole '+string+' helper')
    
    以此类推,这样你就可以在Skype聊天中键入一个命令,通过bot对用户进行降级/升级

    祝你好运:)

                            elif msg.startswith('!helper '):
                        debug.action('!helper command executed.')
                        string = msg.replace('!helper ', '', 1)
                        send('/setrole '+string+' helper')