Pin direct media=no, e correggere il reclamo "(+) non può sovrascrivere"

Fixkamo-asterisk-support
Spegnimento
3 settembre 2026 alle ore 00:06 UTC
Autore
Kamo
Impegno
a2eebfc

Il driver PJSip di FreePBX predefinisce direct media a YES (generateDefaultDeviceSettings, PJSip.class.php:210) e il GraphQL addExtension mutation non ha campo da sovrascrivere, quindi ogni estensione KamoCRM crea arriva con i media consentiti di fluire endpoint-to-endpoint. Tutti i 21 le estensioni create attraverso la GUI su k1m1 sono `no`; quella creata attraverso l'API era l'unica `sì`. Quando i media diretti sono negoziati Asterisk lascia il percorso multimediale, e la registrazione MixMonitor() di tutto il programma esiste per caricare cattura il silenzio. Il commit precedente ha sostenuto che questo non poteva essere risolto dal file su ordinazione-post perché "un blocco (+) può solo ADD un'opzione, mai override — primo valore vince". Questo era sbagliato, e sbagliato per un motivo imbarazzante: l'esperimento dietro di esso usato `pjsip reload`, che lo stesso commit dimostra non riprocess (+) gli appends. Quindi il blocco non è mai stato applicato e il punto finale ha mantenuto il suo valore originale, che assomigliava esattamente al primo-valore-vino. Ricorrere correttamente contro un endpoint il cui config generato detto direct media=yes, appending direct media=no e ricarica con `module reload res pjsip.so`: direct media and true -> false. Il valore finale vince. Nessuna credenziali di database FreePBX necessaria, che conta perché l'agente ha nessuno su una scatola dei clienti. Così il conciliare ora emette direct media=no pure. Le due preoccupazioni sono tracciato separatamente per estensione piuttosto che differito l'uno dall'altro: - Le impostazioni WebRTC sono nostre solo quando nessun altro ha scritto un blocco per questo estensione, perché altrimenti duplicare o contraddire il gallo. - direct media è nostra incondizionata. Un blocco di roster non lo imposta, quindi un estensione il cui blocco WebRTC qualcun altro possiede ancora registra il silenzio senza E' cosi'. Tale estensione ottiene un secondo (+) blocco che trasporta direttamente media da solo. NORMALIZE DIRECT MEDIA default ON — a differenza del blocco WebRTC è sicuro per ogni tipo di telefono, ed è quadrato dentro ciò che il README già promette ("controlla se il tuo sistema telefonico è impostato per registrare le chiamate come Kamo si aspetta, e apporta i cambiamenti per voi"). È un puntatore in modo che un esplicito falso è distinguibile da assente; un bool normale non poteva essere spento. Live verificato: una nuova estensione creata da API leggere direct media=true, e dopo uno riconciliare più un modulo ricaricare leggere falso, con le altre 21 estensioni e il tronco Erik Primary invariato e il roster KlusterServices conservato byte for byte. Tutte le 22 estensioni live ora leggono direct media=false.

Tutte le modifiche

Come quello che vedi la spedizione?

Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.

Inizia gratis per sempreVisualizza il prezzo