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.