地址中的Python-OSC通配符

时间:2015-04-11 17:45:59

标签: python wildcard osc

我发现主题OSC message handlers with wildcards几乎与我的主题相同。我希望有一个通用的处理程序,而不是8个地址的8个处理程序。 代码片段显示调度程序1 ... 8以及一般和一个处理程序的调用。

# dispatcher.map("/presets/1", preset_handler_1, preset01)
# dispatcher.map("/presets/2", preset_handler_2, preset02)
# dispatcher.map("/presets/3", preset_handler_3, preset03)
# dispatcher.map("/presets/4", preset_handler_4, preset04)
# dispatcher.map("/presets/5", preset_handler_5, preset05)
# dispatcher.map("/presets/6", preset_handler_6, preset06)
# dispatcher.map("/presets/7", preset_handler_7, preset07)
# dispatcher.map("/presets/8", preset_handler_8, preset08)
dispatcher.map("/presets/*", preset_handler, activePreset)

def preset_handler_8(unused_addr, args, val):
  if (val==1):
    print (args[0],"active")
    activePreset=8

def preset_handler(addr, args, val):
  print("phNDLER active")
  if (val==1):
    PRINT("HANDLER ACTIVE")
    preset_num=str(addr[-1])
    print (preset_num)
    activePreset=preset_num

似乎我只能在我的OSC消息中实现通配符来触发多个处理程序,但反之亦然。 还是有机会在处理程序调用中使用通配符吗? 干杯斯蒂芬

1 个答案:

答案 0 :(得分:0)

我想要同样的事情,所以刚刚创建了一个python-osc的拉取请求。试试我的叉子,让我知道它是否适合你: https://github.com/jsheedy/python-osc