Aggiungi le suonerie Sci-Fi e Buzzer al catalogo
Getta due nuovi beni di suoneria in /pubblico/suono/ringtones/ e li registra in RINGTONE CATALOG così appaiono nelle suonerie subtab e può essere impostato come...
Configurare STUN in modo che il browser ICE possa completare bidirezionale
Due parti browser-a-browser chiamate connesse allo strato SIP ma non aveva audio o direzione. Voicemail (one-way Asterisk → browser) ha lavorato perché Asterisk...
Dump WebRTC negotiation state on Established
To diagnose "call connects but no audio between parties", log the peer-connection state (ice / dtls / signaling) along with sender and receiver tracks (kind / e...
Audio dal vivo che sopravvive a interruzioni di carico, spinner centrati, ringback in uscita
Tre correzioni coordinate per il percorso audio in-call: 1. AbortError su remotoAudio.play() (visibile nella console di produzione come "La richiesta play() è ...
Hangup tears down ALL live sessions, not just the primary
Self-call edge case left a session leaked: dialing your own extension creates an outbound session, then Asterisk loops the call back as a second inbound session...
Instant connecting feedback on outbound dial
Same problem the inbound Answer button had: clicking Call kicked off the SIP INVITE round-trip (1-3 seconds) but the button kept its idle "Call" appearance the ...
Collegare l'animazione + l'audio che in realtà gioca + sbloccare suoneria
Tre correzioni coordinate per il percorso in entrata: 1. feedback visivo durante l'accettazione. Fare clic su Risposta sinistra entrambi i pulsanti — la negozi...
Mount SoftphoneProvider sopra ToolDock in modo che le finestre degli strumenti possano leggerlo
Aprire il Softphone popup ha bloccato la pagina con "Questa pagina non poteva caricare" perché le finestre degli strumenti montano dentro ToolDock, che vive in ...
Utilizzare Grid dimensione prop in modo da pannelli AV riempire la riga
MUI v7's Grid è basato su flexbox, quindi la grigliaColumn sx che stavo usando era un no-op — elementi resi alla loro larghezza naturale e lasciato vuoto spazio...
Migrare ID suoneria stale per default su carico
Se le preferenze AV salvate dell'utente fanno riferimento a una suoneria che non è più esiste nel catalogo (ad esempio "classico" da prima che il catalogo fosse...
Layout audio a tre colonne, drop salvato-banner, larghezza di riempimento
Lays the Audio subtab out as Microphone | Speaker | Advanced through the riga completa su schermi lg+ (md ancora le coppie due-up, xs stack). The La scheda avan...
Dividere le impostazioni AV in sottotitoli Audio/Video/Ringtones
Riorganizza la scheda Audio/Video in tre sottotitoli interni e laici ogni uno fuori orizzontalmente così le impostazioni si adattano all'interno della viewport ...
Aggiungere Audio / Video Impostazioni scheda e filo in softphone
Aggiunge un negozio di preferenze AV per dispositivo (localStorage, specifica per macchina, non roaming) più una scheda completa su /settings/member/hyd> per co...
Sempre su sessione SIP con auto-popup + suoneria su chiamate in entrata
Il softphone utilizzato per registrare solo mentre la finestra dello strumento popup era aperta — chiudere e le chiamate in entrata sono state silenziosamente p...
Le cifre di Dialpad ora registrano sui dispositivi touch
I pulsanti dialpad chiamati e.preventDefault() in entrambi suTouchStart e Su TouchEnd. Che impedisce al browser di sparare l'evento di clic sintetico che segue ...
Seed pbx.k1.kluster.kamocrm.com come dominio statico
Il softphone del browser ha bisogno di SIP-over-WSS per atterrare su un hostname con un reale TLS cert. Aggiungi il nome host di FreePBX admin / WS a STATIC DOM...
Host browser SIP WSS su internal.kamocrm.com (vera cert)
I browser hanno rifiutato il collegamento di WebSocket a... con il codice vicino 1006 perché Traefik stava servendo il suo cert di default auto-firmato per quel...
Titolo dinamico e descrizione da org config.json
Inline JS in title.html deriva il percorso CDN a tema dal nome host, fetches config.json, e imposta il titolo su "Meets - {siteNameShort}" e descrizione meta ta...
Utilizzare il nome e la descrizione breve org nella testa HTML
Sostituire la logica del titolo basata su org-API con il sito config.jsonNameShort così il il titolo segue lo stesso modello di altri siti: "Register - {siteNam...
Utilizzare il nome e la descrizione breve org nella testa HTML
DynamicMetaLoader ora imposta documento.title a "Login - {siteNameShort}" e scrive la descrizione org nel tag meta descrizione. Dati statici layout.tsx fallback...
Utilizzare il nome e la descrizione breve org nella testa HTML
DynamicMetaLoader ora imposta document.title al sitoNameShort (was siteName) e scrive la descrizione org nel tag meta descrizione. Fallback statico layout.tsx a...
Includere la descrizione org in config.json
Aggiungi campo descrizione per costruireConfigJson() e passare org.Descrizione() da writeConfigFiles() così il config.json a tema trasporta l'org descrizione pe...
Presenza del globo separata per il marketing chat dal vivo vs membri
Pubblico Chat widget biglietti mantenere org segnaposto come requestorId; utilizzare solo presenza di sessione media per quelle righe. Interno e altri biglietti...
Pipe sip.js passi init per accedere al server tramite beacon
Il browser-side SDK init guasto è attualmente invisibile — il popup solo dice "Phone SDK non è riuscito a inizializzare" senza messaggio, il WebSocket mai si ap...
Periodic STOMP presenza battito cardiaco per il supporto pubblico
Refresh Redis TTL per la presenza di sessione pubblica in modo che gli agenti vedano preciso stato online.
Globe utilizza la presenza di sessione media per i visitatori di marketing
Richiedi GUID di sessione a catena pubblica in snapshot di presenza; tratta online se sessione o membro del richiedente è collegato. Maniglia la busta istantane...
Traccia chat di supporto pubblico per sessione GUID in Redis
I visitatori di marketing utilizzano /ws/public-chat-native senza membroId; i biglietti ancora riferimento al titolare del posto org come richiestore. Increment...
Elenco dei biglietti di colore globo da richiesta o connessione chat
Aggiungere la ricerca della presenza del richiedente per gli agenti della lista dei biglietti
Surface SIP.js init/transport errors to browser console
Empty "Phone SDK failed to initialize" messages were hiding the actual failure from sip.js. Turn on logBuiltinEnabled so the library writes its transport / regi...
Non pulire l'assegnazione dei membri sulla sincronizzazione da fornitori che mancano di metadati
E' il momento giusto. incondizionatamente PhoneExtension.assignedMemberId con qualsiasi cosa il fornitore restituito. FreePBX (e qualsiasi fornitore che non rin...
Aggiungi includonoCompany al mercato popup e companyName a lead
Aggiungi/modificare il mercato (LeadMarketManager): - Controllo radio "Nome Compagnia Track" / "Solo Individuale" (richiesto) - Predefiniti per disattivare il n...
Aggiungi le colonne company e company name
LeadCompanyColumnRunner (Order 40) aggiunge idempotently: - lead markets.include company (BOOLEAN, nullable) — traccia se un mercato richiede il nome dell'azien...
L'esposizione include le risposte di input-config e market-config dell'azienda
Tutti e due. E poi... ora includere la bandiera includereCompany in modo che il frontend sa se mostrare campo nome azienda sulla creazione di piombo.
Aggiungi includereCompany a LeadMarket e companyName a Lead
- LeadMarket entità ottiene include company (Boolean, nullable) - L'entità di piombo ottiene company name (String, max 50, nullable) - LeadMarketDTO, CreateLead...
Mostra il nome del fornitore in modalità vista + estensione propria in riepilogo
Due cimici addosso. 1. Modalità di visualizzazione scaricato UUID grezzo — "Instance 32f520b0-347a-..." — perché l'elenco delle istanze è stato caricato solo d...
Serialize ExtensionDto.assignedMemberId come una stringa
overflows della gamma safe-integer di JS (ad esempio 1168485658174423046 round-trips come 1168485658174423000 una volta che un numero JSON colpisce il browser)....
Aggiungi registrazione diagnostica a /names endpoint
Log orgId, conteggio dei membri e risoluzione dei nomi per membro per diagnosticare perché il nome assegnato-membro non sta risolvendo correttamente.
Rendere WebRTC configurazione sopravvivere pod riavvio
L'approccio precedente (http custom.conf con [general] override) non è stato effettivamente prendere effetto perché il parser INI di Asterisk non onora più [gen...
Attivare il server HTTP integrato Asterisk su:8089 per WebRTC /ws
Un chan pjsip `protocol=ws` trasporta gite in cima a res http websocket, che a sua volta richiede che il server HTTP integrato di Asterisk sia in esecuzione. Th...
Mostra il percorso del tipo di vendita in Add Lead sottotitoli
Appendere il tipo di vendita del mercato e Sub-Tipo alla linea "Adding to" in modo da la forma rispecchia le etichette utilizzate nel popup Edit Market E' il mo...
Prioritizzare il nome reale primo / ultimo sopra il nome utenteAlias per il display
usernameAlias è funzionalemente una maniglia di login (spesso uguale a nome utente), non un nome di visualizzazione. I veri nomi umani-leggibili vivono su User....
Spostare Crea azione di piombo in intestazione, goccia barra appiccicosa
Sostituire il pulsante Annulla in alto a destra con l'azione principale Crea azione di piombo e rimuovere completamente la barra di azione appiccicosa inferiore...
Scope Aggiungere piombo scorrimento e piè di pagina alla sua area di contenuto
La forma stava usando minHeight: 100vh dentro un genitore che è già calc(100vh - 56px), forzando una barra di scorrimento esterna anche quando il contenuto si a...
Unified PhoneSdk che supporta RingCentral + sip.js (FreePBX)
L'amo softphone utilizzato per istantanare il telefono centrale-web incondizionatamente, che ha gettato su qualsiasi forma di credenziali FreePBX perché che SDK...
WSS-aware SIP credenziali per softphone del browser
Il endpoint /api/voip/sip/credentials ora restituisce le credenziali un lato del browser SIP stack può effettivamente utilizzare: trasporto WSS, dominio pubblic...
Aggiungi il trasporto WSS WebRTC per i softphone del browser
Chan pjsip di Asterisk ora lega un trasporto WebSocket semplice su 0.0.0.0:8089 E Traefik termina la TLS all'indirizzo. così kamo-internal può registrare i soft...
Come quello che vedi la spedizione?
Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.