- Shipped
- 26 de abril de 2026 a las 21:18 UTC
- Author
- kamo
- Commit
- 6e267ce
El subérculo utilizado para registrarse sólo mientras la ventana de la herramienta emergente estaba abierta. Cerca de ella y las llamadas entrantes se perdieron silenciosamente. Levanta la sesión en un SoftphoneProvider montado en AuthenticatedToolWrapper, así que SIP REGISTER is mantenidos continuamente mientras el operador está firmado en y cualquier INVITE entrante llama la atención del operador. - app/ganchos/useSoftphone.ts: renombrar el gancho de implementación a useSoftphoneSession para reforzar que debe montarse exactamente una vez por sesión (spropiácese de las credenciales de SIP y del REGISTER). - ******************* nuevo SoftphoneProvider dirige la sesión Engancha una vez, expone el estado a través de contexto, y reacciona a hasIncomingCall transiciones - estalla la ventana de la herramienta de suave a través de una herramienta: evento personalizado abierto (Single-instance, por lo que sólo se centra si ya abierto) con identificación de llamada en el título, y juega /sounds/ringtone.mp3 en un bucle hasta el usuario acepta/rechaza/el control remoto cuelga. Uso públicoSoftphone() Lee gancho del contexto. - ******************* la importación al contexto. - **************** envolver el árbol de herramientas con SoftphoneProvider para que la sesión viva tanto como el estado de Auth. clásica cadencia NA (440Hz 480Hz, 2s on, 4s silence) por lo que audio.loop=true produce un patrón natural de anillo/pausa/anillo. 72 KB. Los navegadores pueden bloquear la jugada inicial () hasta que el usuario ha señalado en el página; el operador normalmente ha hecho clic al menos una vez para el momento una llamada Llega, así que rara vez se trata de un problema en la práctica.