Python 使用SoCo创建Sonos组
有人知道是否可以通过编程方式使用SoCo创建一个组吗 例如,假设我想将5台设备分组并指定协调器:Python 使用SoCo创建Sonos组,python,sonos,Python,Sonos,有人知道是否可以通过编程方式使用SoCo创建一个组吗 例如,假设我想将5台设备分组并指定协调器: ZoneGroup(uid='...', coordinator=SoCo("192.168.0.115"), members=set([SoCo("192.168.0.101"), SoCo("192.168.0.111"), SoCo("192.168.0.102"), SoCo("192.168.0.100"), SoCo("192.168.0.115")])) 我可以在本地实例化此对象,但
ZoneGroup(uid='...', coordinator=SoCo("192.168.0.115"), members=set([SoCo("192.168.0.101"), SoCo("192.168.0.111"), SoCo("192.168.0.102"), SoCo("192.168.0.100"), SoCo("192.168.0.115")]))
我可以在本地实例化此对象,但不知道如何将配置发送到设备以设置拓扑。是。首先,取消加入您想成为组长的区域。这会将其从以前的任何组中删除。然后将其他每个分区连接到该分区。你知道你的网络,所以你可以想出更好的名字
one, two, three, four, five = [SoCo("192.168.0.101"), SoCo("192.168.0.111"), SoCo("192.168.0.102"), SoCo("192.168.0.100"), SoCo("192.168.0.115")]
one.unjoin()
two.join(one)
three.join(one)
four.join(one)
five.join(one)
您可以使用one.group(属性,而不是方法)检查组成员资格
从SoCo对象访问所有内容。无需直接处理ZoneGroup类。是。首先,取消加入您想成为组长的区域。这会将其从以前的任何组中删除。然后将其他每个分区连接到该分区。你知道你的网络,所以你可以想出更好的名字
one, two, three, four, five = [SoCo("192.168.0.101"), SoCo("192.168.0.111"), SoCo("192.168.0.102"), SoCo("192.168.0.100"), SoCo("192.168.0.115")]
one.unjoin()
two.join(one)
three.join(one)
four.join(one)
five.join(one)
您可以使用one.group(属性,而不是方法)检查组成员资格
从SoCo对象访问所有内容。无需直接处理ZoneGroup类。您可以调用
partymode()
将所有可用扬声器分组为一个组:
#!/usr/bin/env python
import soco
# Use a specific speaker named Livingroom to be the master
device = soco.discovery.by_name("Livingroom")
device.group.coordinator.partymode()
如果你不关心哪位演讲者应该是大师,你可以找到他们中的任何一位:
# Use any speaker as the master
device = soco.discovery.any_soco()
有关更多详细信息,请参阅。您可以调用
partymode()
将所有可用的扬声器分组到一个组中:
#!/usr/bin/env python
import soco
# Use a specific speaker named Livingroom to be the master
device = soco.discovery.by_name("Livingroom")
device.group.coordinator.partymode()
如果你不关心哪位演讲者应该是大师,你可以找到他们中的任何一位:
# Use any speaker as the master
device = soco.discovery.any_soco()
有关更多详细信息,请参阅。顺便说一句,如果这是所有sonos设备,则有一个快捷方式:one.partymode()。顺便说一句,如果这是所有sonos设备,则有一个快捷方式:one.partymode()。