WebRTC - API RTCDataChannel

WebRTC non è solo bravo a trasferire flussi audio e video, ma qualsiasi dato arbitrario che potremmo avere. È qui che entra in gioco l'oggetto RTCDataChannel.

API RTCDataChannel

Proprietà

  • RTCDataChannel.label (read only) - Restituisce una stringa contenente il nome del canale di dati.

  • RTCDataChannel.ordered (read only) - Restituisce vero se l'ordine di consegna dei messaggi è garantito o falso se non è garantito.

  • RTCDataChannel.protocol (read only) - Restituisce una stringa contenente il nome del sottoprotocollo utilizzato per questo canale.

  • RTCDataChannel.id (read only) - Restituisce un ID univoco per il canale che è impostato alla creazione dell'oggetto RTCDataChannel.

  • RTCDataChannel.readyState (read only)- Restituisce l'enumerazione RTCDataChannelState che rappresenta lo stato della connessione. I possibili valori -

    • connecting- Indica che la connessione non è ancora attiva. Questo è lo stato iniziale.

    • open - Indica che la connessione è in esecuzione.

    • closing- Indica che la connessione è in fase di chiusura. I messaggi memorizzati nella cache sono in fase di invio o ricezione, ma nessuna attività appena creata accetta.

    • closed - Indica che non è stato possibile stabilire la connessione o che è stata interrotta.

  • RTCDataChannel.bufferedAmount (read only)- Restituisce la quantità di byte che sono stati accodati per l'invio. Questa è la quantità di dati che non è stata ancora inviata tramite RTCDataChannel.send ().

  • RTCDataChannel.bufferedAmountLowThreshold- Restituisce il numero di byte in cui RTCDataChannel.bufferedAmount viene occupato il più basso. Quando RTCDataChannel.bufferedAmount scende al di sotto di questa soglia, viene generato l'evento bufferedamountlow.

  • RTCDataChannel.binaryType- Restituisce il tipo di dati binari trasmessi dalla connessione. Può essere "blob" o "arraybuffer".

  • RTCDataChannel.maxPacketLifeType (read only) - Restituisce uno short non firmato che indica la lunghezza in millisecondi della finestra quando la messaggistica è in modalità inaffidabile.

  • RTCDataChannel.maxRetransmits (read only) - Restituisce un breve senza segno che indica il numero massimo di volte in cui un canale ritrasmetterà i dati se non viene consegnato.

  • RTCDataChannel.negotiated (read only) - Restituisce un valore booleano che indica se il canale è stato negoziato dallo user-agent o dall'applicazione.

  • RTCDataChannel.reliable (read only) - Restituisce un valore booleano che indica che la connessione può inviare messaggi in modalità inaffidabile.

  • RTCDataChannel.stream (read only) - Sinonimo di RTCDataChannel.id

Gestori di eventi

  • RTCDataChannel.onopen- Questo gestore di eventi viene chiamato quando viene attivato l'evento open. Questo evento viene inviato quando la connessione dati è stata stabilita.

  • RTCDataChannel.onmessage- Questo gestore di eventi viene chiamato quando viene generato l'evento di messaggio. L'evento viene inviato quando un messaggio è disponibile sul canale dati.

  • RTCDataChannel.onbufferedamountlow- Questo gestore di eventi viene chiamato quando viene attivato l'evento bufferedamoutlow. Questo evento viene inviato quando RTCDataChannel.bufferedAmount scende al di sotto della proprietà RTCDataChannel.bufferedAmountLowThreshold.

  • RTCDataChannel.onclose- Questo gestore di eventi viene chiamato quando viene attivato l'evento di chiusura. Questo evento viene inviato quando la connessione dati è stata chiusa.

  • RTCDataChannel.onerror- Questo gestore di eventi viene chiamato quando viene generato l'evento di errore. Questo evento viene inviato quando si è verificato un errore.

Metodi

  • RTCDataChannel.close() - Chiude il canale dati.

  • RTCDataChannel.send()- Invia i dati nel parametro tramite il canale. I dati possono essere un BLOB, una stringa, un ArrayBuffer o un ArrayBufferView.