繁体   English   中英

你如何使用pyOSC发送消息?

[英]How do you send a message using pyOSC?

我是python的新手,甚至不太熟悉pyOSC。 有人可以发布一个简单的例子,说明如何从我的计算机向另一台计算机发送字符串消息吗? 我查看了这个pyOSC链接 ,它给了我一些指导,但我不确定为什么addressSet()采用“/ startup”。 这是在另一端接收消息的功能还是其他的功能?

我非常感谢您提供的任何指导!

OSC具有消息地址的概念,该地址与您要连接的设备的网络地址不同。 我们的想法是,您发送的消息可以路由到网络连接另一端的许多不同处理程序之一。 每个处理程序都有自己的地址,通常用'/'前缀指定。

使用您引用的问题中的相同客户端代码:

import OSC

c = OSC.OSCClient()
c.connect(('127.0.0.1', 57120))   # localhost, port 57120
oscmsg = OSC.OSCMessage()
oscmsg.setAddress("/startup")
oscmsg.append('HELLO')
c.send(oscmsg)

首先,运行此服务器代码:

import OSC

def handler(addr, tags, data, client_address):
    txt = "OSCMessage '%s' from %s: " % (addr, client_address)
    txt += str(data)
    print(txt)

if __name__ == "__main__":
    s = OSC.OSCServer(('127.0.0.1', 57120))  # listen on localhost, port 57120
    s.addMsgHandler('/startup', handler)     # call handler() for OSC messages received with the /startup address
    s.serve_forever()

然后从另一个终端运行客户端。 在服务器端,你应该得到类似的东西:

OSCMessage '/startup' from ('127.0.0.1', 55018): ['HELLO']

了解如何使用pyOSC的最佳方法是阅读源代码。 这一切都在OSC.py中并且不会太长。 文件底部有一个测试方法,它给出了如何使用大多数(如果不是全部)协议功能的相当详细的示例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM