diff --git a/scripts/developer/tests/messagesTests.js b/scripts/developer/tests/messagesTests.js new file mode 100644 index 0000000000..27ac33bc9d --- /dev/null +++ b/scripts/developer/tests/messagesTests.js @@ -0,0 +1,38 @@ + +var channelName = "com.highfidelity.example.dataMessages"; + +Messages.subscribe(channelName); + +//messageReceived(QString channel, QString message, QUuid senderUUID, bool localOnly); +Messages.messageReceived.connect(function(channel, message, sender, local) { + print("message recieved on ", channel, " message:", message, " from:", sender, " local:", local); +}); + +Messages.dataReceived.connect(function(channel, data, sender, local) { + var int8data = new Int8Array(data); + var dataAsString; + for (var i = 0; i < int8data.length; i++) { + if (i > 0) { + dataAsString += ", "; + } + dataAsString += int8data[i]; + } + print("data recieved on ", channel, " from:", sender, " local:", local, "length of data:", int8data.length, " data:", dataAsString); +}); + +var counter = 0; +Script.update.connect(function(){ + counter++; + if (counter == 100) { + Messages.sendMessage(channelName, "foo"); + } else if (counter == 200) { + var data = new Int8Array([0,1,10,2,20,3,30]); + print("about to call sendData() data.length:", data.length); + Messages.sendData(channelName, data.buffer); + counter = 0; + } +}); + +Script.scriptEnding.connect(function(){ + Messages.unsubscribe(channelName); +});