Soltar o DOM do Shadow no renderizador de e- mail para overflow-x-auto
Shadow DOM foi a causa raiz. Conteúdo de e-mail amplo (mesas de largura fixa) dentro da árvore sombra pintada após o hospedeiro sem contribuir para a caixa de l...
Alinhar o caminho de importação do ChatWebSocketContext para corresponder ao provedor
TicketChat e ChatNotificationListener importaram o contexto através do '@/app/contexts/...' pseudônimo enquanto PresenceWrapper (o provedor) importa através do ...
Forçar a contenção da máquina com estilos inline + contém: layout
Overflow-x-auto baseado em classe no host sombra não estava ganhando de forma confiável contra a sombra ':host { all: inicial}' reset, so wide email o conteúdo ...
Role conteúdo de email amplo dentro da sombra DOM, não fora
As tentativas anteriores de adicionar overflow-x-auto à luz dos antepassados DOM não foi possível obter conteúdo de e-mail amplo porque a árvore de sombra é vis...
Use getHasAttachments () para corresponder ao tipo de invólucro booleano
************* é um booleano (embrulhador), então Lombok gera getHasAttachments() não isHasAttachments(). Apenas este último existe para booleanos primitivos. Us...
Expandir a verificação do repositório JPA para incluir o pacote de comércio
A nova biblioteca da Kamo-compartilhada traz consigo que exige **************************** (com.kamo.z.commerce partilhado). MediaService apenas digitalizou do...
Restaurar a importação do HashMap no ChatWebSocketController
O refator anterior removeu a importação do HashMap, mas a manipulação método ainda constrói um HashMap para a carga útil do evento de digitação, causando a comp...
Adicionar min-w-0 ao conteúdo de e-mail div so overflow-x-auto fire
Sem min-w-0, a largura mínima padrão da criança flex-col:auto resolve para min-content, deixando tabelas de e-mail amplas expandir o div passado a coluna largur...
Remover a chamada de ligação duplicadaStomp no sendMessage
Quando a primeira mensagem cria uma nova sessão, onSessionCreated actualiza os adereços que desencadeia o usoEffect para chamar connectStomp. A chamada em linha...
Proativamente criar consumidor NATS na criação de sessão para evitar perda de mensagem
Anteriormente, o consumidor de push NATS JetStream só foi criado quando um cliente STOMP enviado /app/chat/subscribe. Com a Política de Entrega. Novo, quaisquer...
Fechar o gap de reconexão que causa mensagens perdidas em tempo real
Remover `connected` do uso da assinaturaEffect deps no TicketChat e ChatBox. Anteriormente, cada reconexão WebSocket desencadeou o efeito limpeza que chamou uns...
Permitir que o usuário do sistema gerencie a marca org e corrija a autenticação de logo
- Adicionar bypass do usuário do sistema como primeiro guard no canManageOrgBranding assim plataforma usuário do sistema tem controle total de marca sobre todas...
Contenha o transbordamento horizontal no painel de visualização de e- mail para a terceira coluna
- Adicione overflow-x-escondido ao recipiente externo MessageBrowser como limite rígido - Adicionar overflow-x-escondido à coluna 3 wrapper e overflow-x-auto pa...
Substituir o Coqui TTS por Piper TTS (en US-norman-medium)
O modelo Coqui VCTK não tem colunas nomeadas — substitua Piper TTS que tem a voz exacta do Norman. Binário Piper (~3 MB) e modelo (~60 MB) são baixados por um r...
Reset stale hasAttachments on sync and accumulate correctly
- Reset has_attachments=false at start of bulk sync so stale true values from old false-positive MIME detection are cleared before re-indexing - Accumulate ha...
Pré-popular em resposta/avançar e corrigir o envio deEndereço
- DraftMessage agora carrega deEndereço assim que flui de openNewMessage até ao compositor - MessageBrowser armazena o e- mail de caixa de correio activo caixas...
Suporte a partir do cancelamento do endereço ao enviar
Adds FromAddressRequest to EmailSendRequest so the frontend can especifique Apelido/compartilhado/endereço da caixa de correio a enviar. SmtpOnlyProvider agora ...
Adicione rede local para correção RTP cliente split-DNS / LAN
Telefones na mesma LAN que o k1m1 ligam- se através de DNS dividido (o domínio resolve- se para 192.168.4.22 internamente). Sem local net, Asterisco ainda anunc...
Persista em contato de feitiçaria=memória corrigir e bloquear scanner SIP em startup.sh
- Injectar [res pjsip] contact=memory em feitiçaria.conf antes de iniciar o Asterisco; a infra- estrutura SQLite da feitiçaria-astdb deixa cair silenciosamente ...
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...
Logotipos adequados de layout, estofamento e provedor
Correcções de disposição / espaçamento: - Todas as seis abas (fornecedores, extensões, usuários de telefone, dispositivos, correio de voz, saúde) agora embrulhe...
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...
Usar sintaxe DROP ÌNDICE CASCADE compatível com o BarataDB
BarataDB rejeita TABELA ALTER ... DROP CONSTRUINT para restrições UNIQUE com: não implementado: não é possível soltar a restrição UNIQUE "uk org oauth provider...
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 **********...
Adicionar o botão de download do anexo e dissociar a marca como lida
- Adicionar um botão de ícone de download para cada linha de anexo para que os usuários possam forçar download do arquivo em vez de apenas abrir em uma nova aba...
Mover o caminho da máquina do MinIO (rclone FUSE) para o /var/lib/pbx local
MinIO via rclone FUSE não suporta POSIX chmod ou symlink() — ambos requerido pelo sistema de módulos do FreePBX. Mudou todos os FreePBX e MariaDB hostPath volum...
Quebrar fwconsole/amportal via php para a máquina MinIO FUSEPath
/var/lib/asterisco é suportado por MinIO via rclone FUSE que não suporta POSIX chmod, então scripts fwconsole não podem ser tornados executáveis nesse volume. s...
Adicionar gancho e terminação preStopGracePeriodSeconds
Containers estavam ficando presos em Terminando porque fundo Asterisco os processos continuaram em execução após a saída do apache2ctl (PID 1). envia o gancho p...
Adicione bootstrap.php para regenerar /etc/freepbx.conf
O instalador escreve freepbx.conf com datasource='' e um require once para bootstrap.php, que config.php depende para carregar a classe FreePBX. Nossa versão re...
Regenerar /etc/freepbx.conf ao reiniciar
/etc é efêmero (não um hostPath), então /etc/freepbx.conf escrito pelo o instalador é perdido em cada reinicialização da cápsula. Adicionado outro ramo para reg...
Bypass start asterisco, aguarde pelo socket de controle
start asterisco usa `pidof asterisco` que retorna um falso positivo no pod reinicia, fazendo com que o laço espera-para-Asterisco pendure. Agora inicia o startu...
Iniciar o Asterisco em segundo plano, esperar e depois executar o instalador
O ponto de entrada.sh não executa o instalador FreePBX — ele só começa serviços. startup.sh agora replica as etapas de configuração do ponto de entrada, inicia ...
Deixar o identificador do ponto de entrada instalar, não iniciar. sh
O instalador do FreePBX (php install -n) requer que o Asterisco já seja Correndo. Nosso startup.sh estava chamando-o antes do Asterisco começar, causando Erro d...
Montar /etc/asterisco apenas, não /etc, para corrigir erro PHP simplexml
Montar o /etc completo como um volume hostPath estava corrompendo a extensão PHP carregando mesmo após semeamento da imagem — simplexml load file indefinido no ...
Reduza os limites de CPU para 2:1 para eliminar o excesso de comprometimento
Docs 4→1 core, jibri 4→2 cores, libretranslate 2→1 core, Bergamot 2→1 core, coturn 1→0.5 core. Salva ~7,5 núcleos fora dos limites dos nós.
Mudar para escomputers/freepbx:17 com arquitetura correta
candyofit/freepbx não tem imagem do FreePBX 17 (abandonado desde 2022). escomputadores/freepbx:17 (atualizado em Abr 2026, Asterisco 21 + FreePBX 17) requer um ...
Processar formData antes de encaminhar para evitar corrupção binária
request.text() em multipart/form-data corrompe bytes de arquivos binários; pass parsed FormData as init.body so forwardToApi skips request.text() e vamos buscar...
Remover minHeight:100vh causando barras de rolagem duplas
O minHeight:100vh da caixa exterior excedeu o calc(100vh - 56px) recipiente, que causou tanto o rolagem do nível do navegador como o interior overflow:auto para...
Soltar cabeçalho de coluna de pagamento velho da tabela de modelos de segurança
Quando o campo Self-Pay do Empregado Kamo Fees foi removido, a correspondência TabelaCell no corpo da linha foi excluído, mas a linha do cabeçalho ainda tinha o...
Razão real da superfície por trás do erro do GoDaddy 400
GoDaddy agora retorna HTTP 400 com code=UNABLE TO AUTHENTICATE e body "Mau Pedido : Mau Pedido" quando uma conta não atende ao seu atual Elegibilidade da API de...
Sub-tab de censura agora torna ATF primeiro por especificação
Reordena as cartas sub-tab da Censura para corresponder à ordem solicitada: 1. Álcool, tabaco e armas de fogo 2. Faixas de idade permitidas 3. Intervalos de ida...
Usar o logótipo do tema simples na casa e definir os cabeçalhos do índice
Domínios de carga de energia via findByIdWithDomains, drop @Transactional
@Transactional em um método de controle mantém uma conexão DB aberta através todo o upload MinIO, e também arrisca LazyInitializationException se o interna getO...
Remover o ?type= duplicado do apiPath
forwardToApi já adiciona a pesquisa de entrada (?type=...) do original URL do pedido. Embutindo ?type= uma segunda vez no apiPath produzido ?type=full?type=full...
Restaurar o interruptor de caixa de correio para IDs de membros int64
Usar getMemberIdString para obter caixas de correio/member, normalizar id/mailboxId a partir de EmailService, e dirigir o switcher de pessoal acessível caixas d...
URLs de logotipo do 'cache-bust' usando o temaRevision from config.json
DynamicMetaLoader agora armazena o temaRevisão em sessãoArmazenamento e incêndios KAMO THEME CONFIG LOADED após obter config.json. TemaLogo escuta para esse eve...
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.
