Я пытаюсь добавить слушатель Open Sound Control (UDP) в программу на python, но постоянно получаю сообщение об ошибке «OSError: [WinError 10049] Запрошенный адрес недопустим в своем контексте».Программа работает при доступе к моему собственному ip, но не когда я пытаюсь добавить слушателя к другому ip.Я знаю, что не могу получить доступ к внешним IP-адресам, но компьютер, к которому я пытаюсь получить доступ, находится в одной сети.
Я пробовал разные прослушиватели OSC (pyOSC, python-osc), но они не работают.Однако установленная мной программа OSC (OSCwidgets) может получить доступ к другому компьютеру, поэтому я знаю, что это не работает только программа на python.
Вот файл, с которым я работаю (не включаяобработчики ошибок):
from OSC import OSCServer, OSCClient, OSCMessage
import types
server = OSCServer(("192.168.86.34", 8000))
def test_callback(path, tags, args, source):
if path=="/test":
print("pyOSC Receive: " + str(path) + " = " + args[0])
server.addMsgHandler("/test",test_callback)
while True:
server.handle_request()
Программа должна просто напечатать пакет OSC, полученный с указанного ip.Полная ошибка, которая возникает ниже:
Traceback (most recent call last):
File "C:/Users/red4d/Documents/GitHub/ETC-Eos-OSC-Controller/pyOSCreceivetest.py", line 5, in <module>
server = OSCServer(("192.168.86.34", 8000))
File "C:\Users\red4d\AppData\Local\Programs\Python\Python36-32\lib\site-packages\OSC.py", line 1716, in __init__
UDPServer.__init__(self, server_address, self.RequestHandlerClass)
File "C:\Users\red4d\AppData\Local\Programs\Python\Python36-32\lib\socketserver.py", line 453, in __init__
self.server_bind()
File "C:\Users\red4d\AppData\Local\Programs\Python\Python36-32\lib\socketserver.py", line 467, in server_bind
self.socket.bind(self.server_address)
OSError: [WinError 10049] The requested address is not valid in its context