Las videoconferencias en KamoCRM se ejecutan en la infraestructura de medios que operamos: una unidad de reenvío selectivo, enfoque de conferencia, relé TURN, componentes de puerta de enlace de grabación y transmisión.Los medios en tiempo real son lo menos indulgente en la web y no hay manera de aprenderlo excepto ejecutándolo.
| Medida | Valor | Fuente | Medido |
|---|---|---|---|
| Componentes multimedia en tiempo real en producción | 6 (media server, conference focus, signalling, recording, telephony gateway, TURN relay) | kubectl get deployments,statefulsets -n kamo | |
| Servidor de streaming operado junto con conferencias | 1 (MediaMTX, live streaming only) | kubectl get deployments -n kamo |
Qué edificio nos enseñó
Una solicitud web que tarda doscientos milisegundos adicionales no es notable; doscientos milisegundos de fluctuación en una llamada es una discusión sobre quién está hablando sobre quién. La conectividad se negocia en lugar de configurarse —se recopilan direcciones candidatas, se prueban rutas, se utiliza un relé cuando no se puede encontrar una ruta directa— y los modos de falla son asimétricos y enfurecedores. Un participante escucha a todos, nadie los escucha, y todos los registros dicen que la llamada está bien.
El fallo del que más aprendimos fue de una conferencia que terminó cuando la segunda persona se unió, parecía un error de aplicación y no lo era: el servidor de medios se había marcado a sí mismo como no operativo y el foco de la conferencia, al no tener a dónde enrutar una segunda transmisión, destrozó la conferencia. La lección fue sobre el orden de diagnóstico — comprobar el punto final de salud del propio servidor de medios antes de leer una línea de código de aplicación — y se generaliza a todos los sistemas distribuidos en los que hemos trabajado desde entonces.
La grabación es donde las obligaciones de privacidad se hacen concretas más que teóricas, porque una grabación es un documento sobre personas identificables que alguien ahora tiene que almacenar legalmente, y eso es una restricción de diseño mucho antes de que sea un documento de política.
Construido con
- WebRTC
- Jitsi Videobridge
- Jicofo
- Prosody
- coturn
- MediaMTX
- XMPP
- ICE
- SRTP
Cuéntanos lo que estás tratando de hacer
Una breve conversación suele ser suficiente para saber si somos las personas adecuadas, si no lo somos, lo diremos y le indicaremos un lugar mejor.
