私は以下のコードを使用して、ネットワーク上のコンピュータにOSCメッセージを送信しようとしています。私はoscというパッケージを使用しています。ノードのoscパッケージでOSCメッセージを送信できません。マシンのポートが開いているにもかかわらず、ポートクローズエラーです。
私はOSCサーバを実行するマシンにメッセージを送信し、OSCメッセージを送信しようとする場合は、以下のエラーを受け取ることができないよ:
Error: Uncaught, unspecified "error" event. (Can't send packets on a closed osc.Port object. Please open (or reopen) this Port by calling open().)
コード
let osc = require('osc');
let oscUDP = new osc.UDPPort({
remoteAddress: "192.168.1.5",
remotePort: 8004
});
oscUDP.send({
address: "/carrier/frequency",
args: 440
});
oscUDP.open();
私が入れた場合の前にoscUDP.open()
と呼びます。別のエラーが表示されます。
Error: send EINVAL 192.168.1.5:8004
at Object.exports._errnoException (util.js:1007:11)
at exports._exceptionWithHostPort (util.js:1030:20)
at SendWrap.afterSend [as oncomplete] (dgram.js:402:11)
OSXをOSX上でサーバーとして実行しています。上のコードは別のマシンにあります。私は、IPアドレスにnmap
を実行すると、ポートが開いている:
osc --host 192.168.1.5:8004 /test 1 2 3
だから、それは問題のISNを思わ:私はosc-cliを使用している場合
nmap 192.168.1.5 -p 8004
Starting Nmap 6.40 (http://nmap.org) at 2016-08-30 08:22 BST
Nmap scan report for 192.168.1.5
Host is up (0.13s latency).
PORT STATE SERVICE
8004/tcp open unknown
は、メッセージがOSCサーバーを実行しているマシン上で受信され、 osc-cliを使用しているときにメッセージが送受信されるので、閉じたポートはまったくありません。
アイデア?