Microsoft Teams Phone como provedor
As equipes não são uma API, então o provedor cola três aviões de controle juntos: • Gráfico, somente para aplicativos — histórico de chamadas (getPstnChalls), ...
Persista na trilha do PHI VOIP para o phi access log
Gravações de chamadas, áudio de correio de voz e transcrições foram auditadas no log fluxo, que mantém 14 dias contra uma obrigação de seis anos §164.528 e não ...
Digitalizar os repositórios MFA partilhados
O MfaEnrollmentService é um @Service na biblioteca compartilhada com kamo, então o wildcard @ComponentScan("com.kamo") nesta aplicação constrói-se isto ou não s...
Requer VER CALL LOGS para reprodução de chamadas em orgs de manuseio de PHI
Gravação e reprodução de correio de voz verificado arrendamento e nada mais: qualquer membro de a própria org poderia puxar qualquer chamada nele, transcrição i...
Gravar gravação de chamadas, correio de voz e acesso transcrito
A gravação não deixou rasto. Uma chamada gravada é o PHI mais denso o lojas de plataformas — a conversa não-reditada — e "que ouviram isto chamada" não foi resp...
Realizar trabalhos pendentes em curso
Está encenado e comprometido como-é assim nada é deixado descompromissado na árvore de trabalho. 5 arquivos alterados, 549 inserções(+), 2 deleções(-)
Endureça o download do kubectl contra a saída flácida [skip ci]
dl.k8s.io sobre a saída do corredor diminui intermitentemente no meio da transferência: curl: (56) OpenSSL SSL read: a descriptografia falhou ou o mac de regist...
Parar de fixar o segredo wildcard-kamocrm-com expirado
wildcard-kamocrm-com era um legado multi-SAN secreto que cert-manager órfão quando o seu certificado foi remarcado para um segredo por host. Nada o renovou e ex...
Endpoint de credenciais TURN-REST para o softphone móvel
GET /api/voip/turn/credentials mentas creds de coturna efêmera (HMAC-SHA1 over "<expiry>:<memberId>" com o ético-auth-secret compartilhado) tão nativo/celular W...
Aceitar X-***-Token em REST + sinal ?st= tokens de fluxo em parâmetros de áudio
OTKValidation Precedência do filtro: X-OTK → X-***-Token → ?st= (GET, áudio apenas caminhos de streaming, verificados através do StreamTokenCodec compartilhado ...
Guard /internal/voip com o InternalAuthFilter conforme documentado — ele 401'd on session auth
VoipInternalSyncController sempre documentou InternalAuthFilter como sua guarda, mas /interno/voip nunca foi em PROTECTED PREFIXES nem excluído da OTK filtro de...
Permitir que os administradores conectem RingCentral em nome de um membro
O fluxo do RingCentral por membro era apenas auto-serve, então um administrador gerenciando o perfil de outro membro viu "eles mesmos devem conectá-lo". Sysadmi...
RingCentral OAuth identidade + softphone SIP correções
Correcções de credencial SIP do Softphone: - getSipCredentials: map outboundProxyBackup + stonServers (necessidades de telefone web v2 eles para WSS failover + ...
Comparação secreta de tempo constante (oráculo de chegada)
Substituir String.equals com MessageDigest.isIqual para que a latência da resposta não possa Vazamento do X-Internal-Auth compartilhado byte-by-byte. Varredura ...
Devolver a transcrição nos metadados de gravação do leitor de softphone
Devolver 200 todos Falso para recursos de org não configurados
GET /api/voip/capacidades lançadas ProviderNotConfiguredException (422) quando um org não tinha provedor de telefone, registrando um erro de console vermelho em...
Excluir /api/voip/sms/templates do filtro de sessão OTK
Os terminais de modelo doc-07 SMS são chamadas internas sem sessão guardadas por InternalAuthFilter (X-Internal- Auth), mas OTKValidation O filtro ainda funcion...
Sistema de modelos Doc-07 SMS — /api/voip/sms/templates + GSM-7/UCS-2 segment guard
* **************** sobre as entidades de SmsTemplate: mostra {{var}} e envia através do BulkText EXISTENTEProvider primitivo (nenhum segundo Caminho do portador...
LÍQUIDO MLOS-internal-auth (INTERNAL AUTH SECRET) em implantação [skip ci]
Protege o novo endpoint /api/bulktext/end. Partilha a produção existente valor interno-auth (mlos-internal-auth) para recuperação do SecurityService SMS autenti...
Implementar POST /api/bulktext/enviar SMS transacional interno
SecurityService's BulkTextSmsClient (password-recovery + conta-settings SMS) Sempre foi postado para enviar, mas o controlador nunca foi construído, então cada ...
Bump for kamo-shared-library 1.5.0 snapshot update (Catálogo de programas M2)
Scope concurrency to build jobs, not Kubernetes deploys
Workflow-level concurrency serialized the whole pipeline (including kubectl rollouts). Move the group to the build job only so deploy jobs from different runs c...
Construir gravação MinIO chave de objeto como fluxo de imagem
Omitir a extensão quando o FILE EXT é nulo/vazio para que o nome do objeto corresponda RecordingImagingService e ImagingController. Java string concat com null ...
Resolver a extensão do histórico de chamadas de member voip config, não phone extension
************* foi NULL para algumas extensões mesmo quando member voip config mapeou corretamente o membro para sua extensão. Utilização member voip config (a m...
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...
Reprodução de gravação, arquivo de correio de voz, voicemail paginado, enriquecimento de histórico
- Nova gravação Controlador com procura em massa, áudio range-streamed para faixas mestre + por canal, e metadados para a janela de ferramenta media-player - Ca...
Capture o novoExtNumber como final para captura lambda no MemberVoipConfigController
o novoExtNumber é atribuído condicionalmente dentro do if (isVoipEnabled && ...) bloco, o que não torna efetivamente final. O bloco de sincronização do membro d...
Sincronizar telefone TeamMemberExtensão de trabalho no VOIP config save
Adicionar recursos de chamada API — chamada para diante + resposta automática com fio através da abstração do provedor
- Adicionar Caracteres de ChamadasDto e SetCaracterísticasPedir POJOs - Adicionar sinalizadores callForward/autoResposta às Capacidades do Provedor - Adicionar ...
Não apagar a atribuição de membros na sincronização de provedores que não possuem metadados
**************************** Sobrescrito incondicionalmente TelefoneExtension.associadoMembro com o que o provedor retornou. FreePBX (e qualquer provedor que nã...
Credenciais SIP com conhecimento de WSS para softphones de navegador
O endpoint /api/voip/sip/credentials agora retorna credenciais ao lado do navegador SIP stack pode realmente usar: transporte WSS, domínio público e uma URL wsS...
Adicionar o endpoint de atribuição DELETE ao VoipExtensionsController para administração sem atribuição
Adicionar o membroVoipConfigController para a configuração do membro VOIP com atribuição de extensão
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...
Reescreva todas as consultas/mutações do GQL contra a introspecção do esquema ao vivo
Verifiquei cada nome e tipo de campo contra o esquema atual do FreePBX 17. Conjunto completo de correcções: Consultas: - obterAllExtensions: remover o campo 'v...
Correct GraphQL field name to fetchAsteriscoDetalhes
A API do FreePBX retorna "Você quis dizer fetchAsteriscoDetalhes?" — renomear a saúde verificar consulta e seu acessor caminho de dados em conformidade.
Adicionar cabeçalhos XHR/Accept e análise de resposta de String ao cliente GraphQL
O mesmo padrão do FreePBXTokenCache: adicionar X-Pedido-Com + Aceitar: aplicativo/json para suprimir respostas de redirecionamento HTML do FreePBX, e mudar todo...
Adicionar cabeçalhos Accept+XHR e análise de resposta de texto bruto para o endpoint do token
O FreePBX estava retornando texto/html quando chamado via DNS de cluster porque o O cabeçalho da máquina não correspondeu ao PBX HOSTNAME configurado. Adiciona...
Correct OAuth2 scope strings for FreePBX API
Os escopos do FreePBX são identificadores de nível superior: 'gql' (todos GraphQL) e "Descanso" (todos os REST). O formato 'gql:read' significa GQL para um módu...
Soltar o VOIPService spec md do repo
Por convenção de projeto (os arquivos.md não enviam com serviços).
Incluir com.kamo.z.shared.commerce na verificação de repositórios
Últimas propagações de bibliotecas partilhadas com kamo **************************** (donotmodify.dao.services) que tem uma dependência do construtor **********...
Como o que vês no transporte?
Tudo isso chega em seu espaço de trabalho por conta própria. Comece no plano gratuito e leia esta página novamente em um mês.
