react-nativo-webrtc-simple
Un módulo simple y fácil de usar que ayude a hacer una videollamada para React Native. Implementado utilizando react-native-webrtc.
Empezando
npm install react - native - webrtc - simple -- save
o
yarn add react - native - webrtc - simple
Ahora necesitamos instalar react-nativo-webrtc
Documento
Webrtcsimple
| Método | Descripción |
|---|
| comenzar | Crear conexiones |
| detener | Detener las conexiones |
| getsessionid | Obtenga su ID de sesión |
| getLocalstream | Obtenga su transmisión de video |
| getRemotressream | Obtener transmisión de video remota |
| escucha | Eventos de llamadas de escuchas |
| eventos | Eventos de llamadas de método |
Webrtcsimple.
| Valor | Tipo | Descripción |
|---|
| opcional | Objeto o nulo | Opción Configuración de pares (https://peerjs.com/) |
| llave | Cadena | Tu ID de sesión |
De igual a igual
Webrtcsimple.listenings.allevents
| Valor | Tipo | Descripción |
|---|
| Start_call | Cadena | Su estado de llamada de inicio |
| Recibido_call | Cadena | Llamada de la llamada recibida |
| Aceptar_CALL | Cadena | Llame al estado de aceptivo |
| End_call | Cadena | Llame al estado final |
| MENSAJE | Cadena | Escucha un mensaje |
Webrtcsimple.EVENTES
| Método | Parámetros | Descripción |
|---|
| llamar | sessionID: string, datos: cualquier | Iniciar una llamada |
| aceptar | No | Aceptar una llamada |
| endcall | No | Rechazar una llamada |
| cámaras | No | Cámara de interrupción |
| videoenable | No | Video de encendido/apagado |
| audiolable | No | Encendido/apagado de audio |
| mensaje | Datos: cualquier | Eventos Enviar mensaje |
Múltiple par
Webrtcsimple.listenings.allevents
| Valor | Tipo | Descripción |
|---|
| Start_group_call | Cadena | Su estado de llamada de inicio |
| Recibido_group_call | Cadena | Llamada de la llamada recibida |
| Join_group_call | Cadena | Llamada de la llamada recibida |
| Leave_group_call | Cadena | Estado de rechazo de llamadas |
Webrtcsimple.EVENTES
| Método | Parámetros | Descripción |
|---|
| grupos | GroupsessionId: String [], userData: Object = {} | Iniciar llamada grupal |
| grupo de joyas | arrsessionID: cadena [] | Unirse a la llamada grupal |
| grupo de licencia | No | Deja la llamada grupal |
| addstream | SessionID: String | Crear una transmisión |
| cámaras | No | Cámara de interrupción |
| videoenable | No | Video de encendido/apagado |
| audiolable | No | Encendido/apagado de audio |
| mensaje | Datos: cualquier | Eventos Enviar mensaje |
Uso
import WebrtcSimple from 'react-native-webrtc-simple' ;
useEffect ( ( ) => {
const configuration = {
optional : null ,
key : Math . random ( ) . toString ( 36 ) . substr ( 2 , 4 ) , //optional
} ;
WebrtcSimple . start ( configuration )
. then ( ( status ) => {
if ( status ) {
const stream = WebrtcSimple . getLocalStream ( ) ;
console . log ( 'My stream: ' , stream ) ;
WebrtcSimple . getSessionId ( ( id : string ) => {
console . log ( 'UserId: ' , id ) ;
} ) ;
}
} )
. catch ( ) ;
WebrtcSimple . listenings . callEvents ( ( type , userData ) => {
console . log ( 'Type: ' , type ) ;
// START_CALL
// RECEIVED_CALL
// ACCEPT_CALL
// END_CALL
// MESSAGE
// START_GROUP_CALL
// RECEIVED_GROUP_CALL
// JOIN_GROUP_CALL
// LEAVE_GROUP_CALL
} ) ;
WebrtcSimple . listenings . getRemoteStream ( ( remoteStream ) => {
console . log ( 'Remote stream' , remoteStream ) ;
} ) ;
} , [ ] ) ;
const callToUser = ( userId ) => {
const data = { } ;
WebrtcSimple . events . call ( userId , data ) ;
} ;
const acceptCall = ( ) => {
WebrtcSimple . events . acceptCall ( ) ;
} ;
const endCall = ( ) => {
WebrtcSimple . events . endCall ( ) ;
} ;
const switchCamera = ( ) => {
WebrtcSimple . events . switchCamera ( ) ;
} ;
const video = ( enable : boolean ) => {
WebrtcSimple . events . videoEnable ( enable ) ;
} ;
const audio = ( enable : boolean ) => {
WebrtcSimple . events . audioEnable ( enable ) ;
} ;
const sendMessage = ( message : any ) => {
WebrtcSimple . events . message ( message ) ;
} ;
const groupCall = ( sessionId : string [ ] ) => {
const data = { } ;
WebrtcSimple . events . groupCall ( sessionId , data ) ;
} ;
const joinGroup = ( groupSessionId : string [ ] ) => {
WebrtcSimple . events . joinGroup ( groupSessionId ) ;
} ;
const leaveGroup = ( ) => {
WebrtcSimple . events . leaveGroup ( ) ;
} ;