softphone - ¿Compartir pantalla con WebRTC?
softphone web open source (4)
Estamos explorando WebRTC pero hemos visto información conflictiva sobre lo que es posible y lo que se admite hoy.
Con WebRTC, es posible recrear un servicio de pantalla compartida similar a join.me o WebEx donde:
- Puedes compartir una porción de la pantalla.
- Usted puede dar el control a la otra parte.
- No son necesarias descargas
¿Es esto posible hoy en día con cualquiera de los navegadores WebRTC? ¿Qué tal Chrome en iOS?
La API chrome.tabCapture está disponible para las aplicaciones y extensiones de Chrome.
Esto hace posible capturar el área visible de la pestaña como un flujo que puede usarse localmente o compartirse a través de addStream () de RTCPeerConnection.
Para obtener más información, consulte la propuesta de captura de contenido de la pestaña WebRTC .
El uso compartido de la pantalla se admitió inicialmente para páginas web ''normales'' usando getUserMedia con la restricción chromeMediaSource, pero esto no se ha permitido.
EDITAR 1 de abril de 2015: editado ahora que la pantalla compartida solo es compatible con Chrome en las aplicaciones y extensiones de Chrome.
Por lo que yo sé, no es posible en este momento con ninguno de los navegadores, aunque el equipo de Google Chrome ha dicho que eventualmente intentará admitir este escenario (consulte el punto de "Compartir pantalla" en su roadmap ); y sospecho que esto significa que eventualmente seguirán otros navegadores, presumiblemente con IE y Safari a la vanguardia. Pero es probable que todo eso esté en algún lugar después de febrero, que es cuando deben finalizar el estándar WebRTC actual y enviar los bits de producción. (Es de esperar que la llave inglesa de último minuto de Microsoft en el trabajo no lo arruine). Es posible que haya perdido algo reciente, pero he estado siguiendo el proyecto con mucho cuidado, y no creo que el uso compartido de pantalla lo haya logrado. en Chrome Canary todavía, por no hablar de dev / beta / prod. Opera es el único navegador que se ha mantenido a la par de Chrome en su implementación de WebRTC (FireFox parece estar atrasado unos seis meses), y tampoco he visto nada de ese equipo sobre el uso compartido de pantallas.
Me han dicho que hay una forma de hacerlo ahora mismo, que es escribir su propio controlador de cámara web, de modo que su pantalla local aparezca en la API getUserMedia () de WebRTC como otra fuente de video. No sé si alguien ha hecho esto, y por supuesto, requeriría instalar el controlador en la máquina en cuestión. Para cuando todo esté dicho y hecho, probablemente sería más fácil usar VNC o algo parecido.
Sé que estoy respondiendo un poco tarde, pero espero que ayude a aquellos que se topan con la página, si no el OP.
En este momento, tanto Firefox como Chrome admiten compartir la pantalla completa o parte de ella (alguna ventana de la aplicación que puede seleccionar) con sus compañeros a través de WebRTC como un flujo de medios al igual que la alimentación de su cámara / micrófono, por lo que no hay opción para permitir que otra parte tome el control de tu escritorio todavía. Aparte de eso, hay otro problema, su sitio web debe estar ejecutándose en modo https
y, tanto en Firefox como en Chrome, los usuarios tendrán que instalar extensiones.
Puede probarlo en esta demostración de pantalla compartida de Muaz Khan, la página también contiene las extensiones necesarias.
P. S: Si no desea instalar una extensión para ejecutar la demostración, en Firefox (no hay forma de escapar de las extensiones en Chrome), solo necesita modificar dos marcas,
- ir a
about:config
- establece
media.getusermedia.screensharing.enabled
comotrue
. - agregue
*.webrtc-experiment.com
amedia.getusermedia.screensharing.allowed_domains
flag. - actualice la página de demostración y haga clic en el botón Compartir pantalla.
Ustedes probablemente saben que la captura de pantalla (no tabCapture) está disponible en Chrome Canary (26+). Recientemente, publicamos una demostración en; https://screensharing.azurewebsites.net
Tenga en cuenta que debe ejecutarlo en https: //,
video: {
mandatory: {
chromeMediaSource: ''screen''
}
También puedes encontrar un ejemplo aquí; https://html5-demos.appspot.com/static/getusermedia/screenshare.html