Widen commit log translations.title to TEXT to match DB column
A coluna foi VARCHAR(512) tanto na anotação quanto no DB, causando translation inserts to fail for long translated titles. A coluna DB é agora STRING (aplicado ...
Paginated Recording lookup by (instance, extension, isVm)
Used by the softphone tabs as the canonical source of truth for call recordings and voicemails when the upstream provider can't list them — e.g. FreePBX 17 has ...
Drop stale BillingGroup-era comment + inutilized SubscriptionMember query
Tira o bloco de documentos restantes no AppliedModelEnforcementService que se referiu para o conceito BillingGroup há muito tempo, e remove **************** dep...
Bypass de org de nível superior + Retalho de base gratuito para orgs sem subs
O controlo de direitos de org. anda assinaturas visando uma org. Com o novo modelo target org, orgs que ainda não tem um alvo AccountSubscription viu todos os a...
Dividir administradores de nível de conta de membros por sub; subs ganham target org
Adiciona assinaturaMembro (por licença de assinatura + bandeiras de sub- gerenciador) assim um A conta na ordem KamoCRM pode conter várias assinaturas, cada uma...
Grupo de Contas -> ContaTier (segmentação do cliente, não faturamento)
A entidade de segmentação do cliente de retalho (com descontoPercentagem, utilizada por PreçoLista para preços baseados em níveis) colidiu em nome com o agora r...
Faça Conta o grupo; substitua o conjunto de usuários pelo conjunto de membros + membro da conta
A Conta agora é ele mesmo o "grupo" — não há nenhum grupo de faturamento separado conceito. Membros (org-scoped) pertencem à Conta diretamente através da novo m...
Migrar de BillingGroup para Contar como diretor de faturamento
A conta é agora o único cliente Stripe principal. Um deputado necessitado para pagar (por exemplo, para uma subscrição) cria automaticamente uma Conta; essa Con...
Map external customer address blocks into AccountAddress on pull
Add AdapterAddressMapper helper that converts a JSON address node from any provider into an EmbAddress and attaches it to an Account as a typed AccountAddress (...
Orientar os registros ao vivo para o perfil do endereço da conta, os endereços históricos do instantâneo
Orient live commerce records to refer the account profile's primary shipping/billing endereços, com instantâneos tirados apenas quando os registros se tornam hi...
Mudar Conta.java para incorporables; adicionar ContaEntidade de endereço para listas de envio/billing
- Adicionar ContaAddressType enum (SIPping, BILLING) - Adicionar a ContaEntidade de Endereço (conta FK, tipo, etiqueta, EmbEndereço, datas) - Adicionar ContaEnd...
Teclas de pesquisa do provedor na gravação, arquivo de correio de voz, streaming de gama MinIO
- Gravação: adicionar provedorInstanceId + provedor ExternalId para juntar provedor call-history / voicemail linhas de volta aos ativos de imagem - PhoneVoicema...
Adicionar registro de auditoria do lead-history — entidade, registro, serviço, DTO, ganchos LeadService
- entidade LeadHistórico (UUID PK, simples FKs Long - sem restrições FK para permitir a eliminação/conversão de chumbo) - LeadHistoryEventType enum com etiqueta...
Resolver o mapeamento de colunas duplicadas sobrepondo colunas de endereços incorporados ao MAILING *
Atualizar RetailService e adaptadores de provedores para remoção de Account.notes e conversão de tipo de moeda
Adicionar apoio internacional — País líder/subdivisão/zona horária, língua Org, CountryType isProvince
- CountryType: add PROVINCE NAMES set, isProvince(), getSubdivisionLabel() - Organização: adicionar idioma (Tipo de idioma) campo - Chumbo: adicionar os campos ...
Gravação + GravaçãoExt entidades, GravaçãoImagingService escreve-los
- Nova entidade de registo (IDUID, IMG ID, IS MASTER, IS VM, EXTENSÃO, ID-MEMBRO, LENGTH, DATA RECORDADO, DATA CREADO [DB-defaulted via @CreationTimestamp]). Um...
Use @CreationTimestamp(source=DB) on ****************
The DB is the single source of truth for timestamps in this codebase. The canonical Hibernate pattern is @CreationTimestamp(source = SourceType.DB), which makes...
Let DB fill **************** via @Generated(INSERT)
INSERTs were failing with: null value in column "date_created" violates not-null constraint @ColumnDefault only declares the DB-side default for new rows; Hi...
Adicionar MemberCallCaracterísticas de entidade e repositório para as preferências de resposta automática e de chamada
UnprocessedGravando entidade de estadiamento, faixas ImgDat, serviço de gravação de imagem
- Corrigir a colisão do ID ImageAssocType: VM RECORDING=8, CALL RECORDING=9 (foram ambos Duplicando MY DOCS em 4). - Acrescente-me... por canal Opus/WebM rastre...
Adicionar incluirEmpresa ao LeadMarket e empresaName ao Lead
- entidade LeadMarket recebe include company (Boolean, nullable) - entidade líder recebe company name (String, max 50, nullable) - LeadMarketDTO, CreateLeadMark...
Serialize ExtensionDto.atribuídoMemberId como uma string
transborda o alcance de integração segura da JS (por exemplo, 1168485658174423046 viagens de ida e volta como 1168485658174423000 uma vez que um número JSON ati...
Coerce isDisplayOnIntake=true when isRequired=true in CustomFormService
Adicionar findByAtributedMethods MemberId query to PhoneExtensionRepository
Add isConnected field to VoipProviderInstance
Nullable Boolean: null = never tested, true = last test passed, false = failed. Requires KamoInitializerService schema migration to add IS_CONNECTED column.
Contagem não lida + assistente de pesquisa por sessão
Então, o Navtop SuporteButton emblema pode contar tickets de suporte que realmente precisam atenção (ter mensagens de visitante não lidas) em vez de apenas PRE ...
Os tickets de suporte precisam de contagens não lidas por membro- diagnóstico
Mensagens de visitantes em tickets de suporte são armazenadas no mesmo sistemaMembro que o agente autentica como, para que a sessão de CHAT existente não seja l...
Imagem geo do visitante na entidade do ticket
Adiciona VISITOR IP ADDRESS, VISITOR COUNTRY CODE, VISITOR COUNTRY NAME, VISITOR CITY, VISITOR SUBDIVISION colunas. Capturado na criação de tickets por isso os ...
Adicionar findBySessionGuidIn para carregamento a granel
Usado pelo endpoint da lista de bilhetes de suporte para obter todos os visitantes para uma página em uma consulta em vez de N separado findBySessionGuid chamad...
Correct JsonIdentity Info property de 'uniqueId' para 'id'
Entidade membro declarou @JsonIdentityInfo(propriedade = "uniqueId") mas o o campo de chave primária real é chamado 'id'. Jackson atirou "não foi possível encon...
Incluir sessões SUPPORT TICKET na consulta de membros não lida
findChatMembershipsByMemberId agora retorna afiliações para CHAT e Tipos de sessão SUPPORT TICKET, por isso a conta não lida existente por membro infraestrutura...
Add resetHasAttachmentsForFolder query to ConversationRepository
Allows sync to reset stale has_attachments flags before re-indexing so corrected MIME detection can rebuild the field from actual attachment data.
Multi-instance telefone / SMS provedor schema fundação
- Renomear VoipProviderConfig → VoipProviderInstance; drop UNIQUE(org id), adicione instância nome, config json, last sync at, last sync error. - Renomear BulkT...
Soltar o membro da equipaPayFeesSetting
A política de taxa de auto-pagamento do empregado se foi — o grupo de faturamento trata faturamento por grupo, não através do modelo de segurança. Remove o team...
Adicionar sinalizadores de visibilidade do tipo criador por- alias
Adicionar visívelToMembers / visívelToTeamMembers boolean columns to ChildOrgSecurityModelAlias para que os administradores possam restringir os apelidos dos pa...
Aplicar os timeouts de conexão/gravação/leitura ao MinioClient via OkHttpClient
Sem timeouts, um peer de replicação de site downed (k2m1) causou makeBucket e colocarObject chamadas para bloquear indefinidamente, surgindo como um infinito "S...
Adicionar entidades, cifrar, e alias/DNS andaimes de registo
Adiciona creds por- org GoDaddy (AES- GCM encriptado), uma opção allowRootSubdomínios e recolha de pseudônimos para crianças no modelo de segurança, um provisio...
Drop RegistrationPhoneCode entity + repositório
Self-service registro já não usa verificação de código SMS para o campo de telefone — o formulário de registo recolhe o número de telefone como texto simples e ...
Adicionar bandeira do usuário do sistema + entidade de acesso
Apresenta o modelo de usuário do sistema em toda a plataforma: a User.isSystemUser flag (índice parcial único aplica um singleton), mais uma tabela SystemUserAc...
Adicionar RegistroEntityPhoneCode + repositório
Nova tabela `registration phone codes` armazena códigos de verificação SMS de uma tomada emitido durante o registo de auto-serviço, antes de existir uma entidad...
Adicionar AgeReqType.allowsUnder13() helper
Usado pelo fluxo Adicionar Membro / Adicionar Membro da Equipe para ignorar a coleção de emails para orgs cujo requisito de idade permita aos utilizadores com m...
Como o que vês no transporte?
Cada uma dessas atualizações pousa automaticamente em seu espaço de trabalho. Comece grátis e veja crescer semana após semana.