Risolvere l'estensione della cronologia delle chiamate da member voip config, non phone extension
E' stato NULL per delle estensioni anche quando... member voip config correttamente mappato il membro alla loro estensione. Utilizzo member voip config (stessa ...
Surface imaging fallback when provider has no call history
KamoPBXProvider.getCallHistory now returns null instead of throwing **************** so the 501 response no longer bypasses the imaging fallback. The provider c...
Fall back to imaging recordings for call history + voicemails
FreePBX 17 doesn't expose voicemail messages over REST or GraphQL on this install (the GraphQL voiceMail type returns mailbox config, not messages, and /admin/a...
Resolve member→extension before VM/CDR provider lookup
CallController was passing memberId where FreePBX (and other PBX-style providers) expect an extension number — voicemail listing returned empty because no PBX e...
Riproduzione di registrazione, archivio segreteria, paginated voicemail, arricchimento di storia
- Nuova registrazione Controller con lookup di massa, audio a range per master + tracce per canale, e metadati per la finestra degli strumenti media-player - Ca...
Cattura nuovoExtNumber come finale per la cattura di agnello in MemberVoipConfigController
nuovoExtNumber è condizionatamente riassegnato all'interno del se (isVoipEnabled && ...) blocco, che lo rende non effettivamente finale. Il blocco di sincronizz...
Sync TeamMember phoneEstensione di lavoro su configurazione VOIP salvare
Aggiungi funzionalità di chiamata API — chiama in avanti + auto-ritorno cablato attraverso l'astrazione del fornitore
- Aggiungi CallFeaturesDto e SetCallFeaturesRichiesta POJOs - Aggiungi bandiere di chiamataForward/autoAnswer a ProviderCapabilities - Aggiungi default getCallF...
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...
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 l'assegnazione del DELETE endpoint a VoipExtensionsController per admin unassign
Aggiungi MemberVoipConfigController per il membro VOIP config con l'assegnazione dell'estensione
Persist connection test result to isConnected field
- test() endpoint saves isConnected=true/false to DB after every health check - update() resets isConnected to null when configJson changes (credentials may h...
Use extensionId as external ID, not Relay node id
FreePBX returns the same Relay id (ZXh0ZW5zaW9uOg== = "extension:") for every extension because the id field is not populated. Using it caused all extensions to...
Riscrivi tutte le query/mutazioni GQL contro l'introspezione dello schema live
Verificato ogni nome del campo e digitare contro lo schema effettivo FreePBX 17. Set completo di correzioni: Query: - fetchAllExtensions: rimuovere il campo "v...
Corretto il nome del campo di GraphQL per fetchAsteriskDettagli
FreePBX API restituisce "Vuoi dire fetchAsteriskDetails?" — rinominare la salute controllare query e il suo percorso di dati accesso di conseguenza.
Aggiungere le intestazioni XHR/Accept e l'analisi della risposta di stringa al client GraphQL
Stesso modello di FreePBXTokenCache: aggiungere X-Requested-With + Accettare: applicazione/json per sopprimere le risposte redirect HTML di FreePBX, e passare t...
Aggiungete le intestazioni Accept+XHR e la parsing di risposta cruda per il punto finale di token
FreePBX stava ritornando testo/html quando viene chiamato tramite cluster DNS perché L'intestazione host non corrisponde al PBX HOSTNAME configurato. Aggiunta A...
Correggere le stringhe di portata OAuth2 per FreePBX API
Gli ambiti FreePBX sono identificatori di alto livello: 'gql' (tutti GraphQL) e 'rest' (tutti REST). Il formato 'gql:read' significa GQL per un modulo chiamato ...
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...
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...
Ricostruisci per l'aggiornamento delle librerie kamo-shared (rimuovi l'OrganizzazioneTipo, aggiungi isTopLevel)
Ricostruisci per l'aggiornamento delle librerie kamo-shared (rimuovi l'OrganizzazioneTipo, aggiungi isTopLevel)
Ricostruisci per l'aggiornamento di kamo-shared-library (CREATE CHILD ORG right + app-to flags)
Tira il nuovo RoleRightType.CREATE CHILD ORG (id 131), le tre bandiere applicate su ChildOrgSecurityModel, i due sovraccarichi di servizio 13-arg e gli helper d...
Ricostruisci per l'aggiornamento di kamo-shared-library (appConfig upsert-only fix)
Tira l'indurito ******************************************************************************** che non cancella più le righe appConfig i cui tipi di servizio ...
Ricostruisci per l'aggiornamento di Kamo-shared-library (efficace-funzione risolutore)
Raccoglie i nuovi metodi di AppliedModelEnforcementService (computeAvailabilitiesMap, isAppEffectivelyEnabled, getEffectivelyEnabledAppTypes, computeEffectiveFe...
Bump kamo-shared-library a 1.5.0 per applicazione modello
Porta questo servizio su kamo-shared-library 1.5.0 così raccoglie il nuovo AppliedModelEnforcementService, ChildOrgSecurityModelAppConfig entità, ServiceAvailab...
Ricostruire per l'aggiornamento delle librerie kamo-shared (regole della forza di runtime + fallback DEFAULT in MemberRightsAppliedService)
Triggers a rebuild in modo che questo servizio raccoglie l'aggiornamento ***************************************************************************************...
Ricostruisci per l'aggiornamento kamo-shared-library (modello principale, modelli di ruolo predefinito, risolutore force-rule)
Triggers a rebuild in modo che questo servizio tira la nuova revisione kamo-shared-library che contiene Organization.branchTypeID, Organization.masterModelID, *...
Bump kamo-shared-library to 1.4.0
Docker Stage 1 builds kamo-shared-library main (now 1.4.0) and installs it to the local .m2; the service pom still referenced 1.0.0 which Maven could not find, ...
Add InternalAuthFilter + POST /api/bulktext/send for service-to-service SMS (SP3)
Handle RC webhook validation token; make body optional for verification requests
Add MMS attachment support — multipart send, base64 storage, image display
- RingCentralProvider: override sendSms with multipart/form-data MMS path - VoipMessageService: accept attachment bytes, store base64 data URL in attachmentUrl ...
Add call event webhook pipeline; branch SMS vs telephony events before processing
Add capabilities, SIP credentials, and call management REST controllers
Implement RingCentral call management methods (sip, history, voicemail, presence, queues)
Come quello che vedi la spedizione?
Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.