sendData method

dynamic sendData (
  1. int handleId,
  2. Callbacks callbacks
)

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();
}