Persist stregoneria contatto=memory fix e bloccare lo scanner SIP in startup.sh
- Inject [res pjsip] contact=memory in sorcery.conf prima che Asterisk inizi; il backup predefinito strery-astdb SQLite scende silenziosamente tutti i contatti ...
Sub-tab content fills full content-area width
Drop the centered max-width constraint (was 920 / 1200 / 680 / 720 depending on tab) on SubTabShell. The page already lives inside SettingsView's content column...
Fix attachment parsing and hasAttachment false positives
Three fixes to EmailImapService: 1. toEnvelope: narrow multipart check to multipart/mixed only — plain HTML+text emails (multipart/alternative) no longer sh...
Add download button to classic view attachment section
The classic view (MessageBrowser) had its own attachment list that was missing the download button — only the conversation view was fixed previously. Also align...
Add com.kamo.z.shared.commerce to EnableJpaRepositories scan
**************** (required by **************** in the shared library) lives under com.kamo.z.shared.commerce but was not included in the JPA repository scan, ca...
Proper layout, imbottitura e logo del fornitore
Telaio / spaziatura correzioni: - Tutte e sei le schede (Provider, Estensioni, Utenti telefonici, Dispositivi, Voce, Salute) ora avvolgere il loro contenuto in ...
Correct field name and type in getFromAddresses response
Backend was sending 'email' key but frontend expected 'address', and sent type 'shared_mailbox' when frontend expected 'shared'. Also fixes hasMailboxes flag wh...
Load FROM addresses from accessible mailboxes and aliases
Replaces the broken getFromAddresses() endpoint (which sent 'email' instead of 'address') with getAccessibleMailboxes() + listMemberAliases(), matching the same...
Utilizzare CockroachDB-compatibile DROP INDICE CASCADE sintassi
CockroachDB rifiuta ALTER TABLE ... DROP CONSTRAINT per vincoli UNICI con: unimplementato: non può cadere il vincolo UNICO "uk org oauth provider" utilizzando ...
Goccia VOIPService spec md da repo
Per convenzione di progetto (i file md non spediscono con i servizi).
Include com.kamo.z.shared.commerce nella scansione del repository
Ultimi propagatori di kamo-shared-library Non e' vero. (donotmodify.dao.services) che ha una dipendenza del costruttore E' il momento giusto. E' il momento gius...
Schede di configurazione della piattaforma (Generale / VOIP & SMS / System User / Advanced)
Wraps ********************************************************************************** in ImpostazioniView con quattro schede: - Generale: panoramica della p...
Aggiungi il pulsante di download dell'allegato e decouple mark-as-read
- Aggiungi un pulsante icona Download a ogni riga di allegato in modo che gli utenti possano forzare una file download invece di aprire solo in una nuova scheda...
Lavoro di sincronizzazione VOIP globale (intervallo regolabile)
VoipGlobalSyncCategoria professionale zecche ogni minuto e, su ogni zecca, legge il SystemConfiguration singleton per decidere se una sincronizzazione globale è...
Endpoint System-config + platform-overview
Superficie di configurazione a livello di piattaforma, recintata dal proprietario di alto livello esistente guardia (tappeggi SystemUserConfigController richied...
Per-instance controller delle risorse + org aggregato + sincronizzazione interna
CRUD (estensione / utenti / dispositivi / segreteria): - VoipExtensionsController a... - VoipUsersController a /api/voip/instances/{id}/users - VoipDevicesContr...
Multi-instance provider refactor + full FreePBX + Flowroute SMS
Core model change: one org → many VoipProviderInstances (was: one per org). Every provider API call is now instance-scoped. PhoneProvider interface: - New meth...
Multi-instance telefono/SMS provider migrazione
Esegue dopo Hibernate ddl-auto:aggiornamento crea nuovi tavoli (VOIP PROVIDER INSTANCE, BULK TEXT PROVIDER INSTANCE, PHONE EXTENSION, PHONE END USER, PHONE DEVI...
Multi-instance telefono / fornitore SMS fondazione schema
- Rinomina VoipProviderConfig → VoipProviderInstance; drop UNIQUE(org id), aggiungere ista name, config json, last sync at, last sync error. - Rinomina BulkText...
Spostare hostPath da MinIO (rclone FUSE) a locale /var/lib/pbx
MinIO via rclone FUSE non supporta POSIX chmod o symlink() — entrambi richiesto dal sistema modulo di FreePBX. Cambiato tutti FreePBX e MariaDB volumi hostPath ...
Wrap fwconsole/amportal tramite php per MinIO FUSE hostPath
/var/lib/asterisk è supportato da MinIO tramite rclone FUSE che non supporta POSIX chmod, quindi gli script fwconsole non possono essere eseguibili su quel volu...
Aggiungi PreStop gancio e terminazioneGracePeriodSeconds
I container si bloccavano a Terminating perché lo sfondo Asterisk processi continuati in esecuzione dopo l'uscita di apache2ctl (PID 1). PreStop hook invia SIGT...
Aggiungere bootstrap.php richiedono rigenerazione /etc/freepbx.conf
L'installatore scrive freepbx.conf con datasource=''' e un request once per bootstrap.php, che config.php dipende da caricare la classe FreePBX. La nostra versi...
Rigenerare /etc/freepbx.conf in riavvio
/etc è ephemeral (non un hostPath), quindi /etc/freepbx.conf scritto da installatore è perso su ogni pod riavvio. Aggiunto altro ramo per rigenerare esso da env...
Bypass start asterisk, attendere la presa di controllo
start asterisk utilizza `pidof asterisk` che restituisce un falso positivo sul pod riavvia, causando il ciclo di attesa-per-Asterisk per appendere. Ora startup....
Avviare Asterisk in background, attendere per esso, quindi eseguire installer
Il entrypoint.sh non esegue il programma di installazione FreePBX: inizia solo servizi. startup.sh ora replica i passaggi di impostazione del punto di entrata, ...
Lascia installare la maniglia entrypoint, non startup.sh
FreePBX installer (php install -n) richiede Asterisk di essere già Correre. La nostra startup.sh lo chiamava prima che Asterisk iniziasse, causando "Errore comu...
Mount /etc/asterisk only, not /etc, per correggere l'errore PHP simplexml
Montaggio completo /etc come un volume hostPath stava corrompendo l'estensione PHP caricamento anche dopo la semina dall'immagine — simplexml load file non defi...
Ridurre i limiti della CPU al rapporto 2:1 per eliminare il sovraimpegno
Docs 4→1 core, jibri 4→2 core, libretranslate 2→1 core, bergamotto 2→1 core, coturn 1→0.5 core. Risparmia ~7.5 core dai limiti del nodo.
Passare a escomputers/freepbx:17 con architettura corretta
stanchezza/freepbx non ha immagine FreePBX 17 (abbandonata dal 2022). escomputers/freepbx:17 (aggiornamento apr 2026, Asterisk 21 + FreePBX 17) richiede un pod ...
Getta l'ingresso pubblico di admin; accesso via http://k[12]m1:8088
L'interfaccia utente è ora interna solo su LAN/WireGuard sulla porta 8088 (FreePBX's nginx vincolato direttamente su hostNetwork). Nessun percorso Traefik, no L...
Deploy FreePBX 17 + ponte Jigasi SIP su k1m1 e k2m1
FreePBX (tiredofit/freepbx:17-latest) funziona con hostNetwork così SIP/RTP preserva i veri IP client, pinned one-per-node tramite nodeSelector. SIP su 5060 UDP...
Parse formData prima di inoltrare per prevenire la corruzione binaria
request.text() su multipart/form-data corrompere i byte dei file binari; pass parsed FormData come init.body so forwardToApi skips request.text() e lascia prend...
Rimuovere minHeight:100vh causando doppie barre di scorrimento
Il minHeight:100vh ha superato il polpaccio del layout (100vh - 56px) contenitore, che ha causato sia lo scorrimento del livello del browser che l'interno overf...
Intestazione della pagina dell'editor di goccia, rinomina sub-tab generale
- Rimuove il tasto posteriore IconButton + icona schermo + titolo + sottotitolo da la parte superiore del modello di sicurezza / master-model editor. Il pulsant...
Goccia stale Intestazione colonna Pay dalla tabella modelli di sicurezza
Quando il campo Employee Self-Pay Kamo Fees è stato rimosso, la corrispondenza TableCell nel corpo di riga è stato cancellato, ma la riga di intestazione aveva ...
Superficie vera ragione dietro GoDaddy 400 errore
GoDaddy ora restituisce HTTP 400 con codice=UNABLE TO AUTHENTICATE e corpo "Bad Request: Bad Request" quando un account non soddisfa la loro corrente produzione...
La censura sub-tab ora rende ATF prima per spec
Reorders the Censorship sub-tab cards to match the richiesto order: 1. Alcol, tabacco e armi da fuoco 2. Gamma di età dei membri consentiti 3. Ammessi dipendent...
Utilizzare il logo a tema semplice su home e impostazioni intestazioni indice
Piattaforma-admin view, paginazione, ricerca dal vivo, filtri, logo org
Gli amministratori della piattaforma (proprietario di org di livello superiore) ora vedono ogni org del sistema tramite il nuovo /api/security/org/all-networks ...
Aggiungi GET /api/security/org/all-networks per gli amministratori della piattaforma
I proprietari di org di livello superiore possono ora prendere tutte le organizzazioni nel sistema con informazioni relative al chiamante. Org dove il chiamante...
Sottotitoli nell'editor di modelli di sicurezza + pulizia
- L'editore di modelli di sicurezza su... in quattro sottotitoli: Generale (Informazione base, Visibilità, Chi può creare, Impostazioni della piattaforma, Confi...
Drop teamMemberPayFeesSetting da DataLoader
Il provvidente modello master non passa più le spese di pagamento rimosse impostazione quando si crea il modello di sicurezza principale — il campo è andato da ...
Drop teamMemberPayFeesSetting parametro
Specchi il cambiamento della biblioteca condivisa — SecurityModelController, MasterModelController e AppliedModelController non più leggere/scrittura teamMember...
Goccia squadraMemberPayFeesSetting
La politica di pagamento dei dipendenti è sparita — le maniglie del refattore BillingGroup fatturazione per gruppo, non tramite il modello di sicurezza. Rimuove...
Domini di carico attivo tramite findByIdWithDomains, drop @Transactional
@Transactional su un metodo di controllo mantiene una connessione DB aperta attraverso l'intero caricamento del MinIO, e anche rischia LazyInitializationExcepti...
Rimuovi duplicato?type= da apiPath
forwardToApi già aggiunge incomingSearch (?type=...) dall'originale richiesta URL. Embedding ?type= una seconda volta nell'apiPath prodotto ?type=full?type=full...
Ripristinare la casella di posta per gli ID membri int64
Utilizzare getMemberIdString per mailboxs/member fetch, normalizzare id/mailboxId da EmailService, e guidare il commutatore da personale accessibile caselle di ...
Alias visibilità UI + Subdomain Branches pulsante sulla pagina dei rami
SubdomainBranchesDialog: - L'editor Alias ha sostituito l'elenco dei chip con una lista delle righe in stile tabella Membri e membri del team caselle di control...
Filtro di visibilità Alias + auto-verificare la proprietà subdomini
OrganizzazioneController: - Web-alias org creazione ora auto-marks proprietàVerified=true e isDnsVerified=true on the create OrgDomain — no TXT record necessari...
Come quello che vedi la spedizione?
Tutto questo arriva nel vostro spazio di lavoro da solo. Iniziare sul piano gratuito e leggere di nuovo questa pagina in un mese.
