sendData method
Implementation
sendData(int handleId, Callbacks callbacks) {
Plugin pluginHandle = this.pluginHandles[handleId.toString()];
if (pluginHandle == null) {
Janus.warn("Invalid handle");
callbacks.error("Invalid handle");
return;
}
var data = callbacks.text || callbacks.data;
if (!data) {
Janus.warn("Invalid data");
callbacks.error("Invalid data");
return;
}
var label = callbacks.label ? callbacks.label : Janus.dataChanDefaultLabel;
if (pluginHandle.dataChannels[label] == null) {
// Create new data channel and wait for it to open
createDataChannel(handleId, label, null, data);
callbacks.success();
return;
}
if (pluginHandle.dataChannels[label]['readyState'] != "open") {
pluginHandle.dataChannels[label]['pending'].add(data);
callbacks.success();
return;
}
Janus.log("Sending data on data channel <" + label + ">");
Janus.debug(data);
// TODO attach send
pluginHandle.dataChannels[label].send(data);
callbacks.success();
}