Pular para o conteúdo
CRM do TelegramSolução de problemasAgentes de IA

Por que as contagens de chats do Telegram diferem: contatos, diálogos e linhas do CRM

Chris · Chiho•Publicado 15 de setembro de 2026
Por que as contagens de chats do Telegram diferem: contatos, diálogos e linhas do CRM

As contagens de chats do Telegram diferem porque uma lista de contatos, uma lista de conversas ao vivo, um inventário salvo do CRM e as linhas atualmente visíveis na tela medem coisas diferentes. Antes de considerar um chat ausente, compare a mesma conta do Telegram, o escopo de acesso, a cobertura de pastas e o momento da observação. Depois, confira se a paginação e a sincronização terminaram.

A imagem existente do produto Chiho acima ilustra linhas e campos do CRM. Não é uma captura de tela da reconciliação de contagens abaixo.

Verificado em 15 de setembro de 2026: o comportamento do Chiho descrito aqui baseia-se no código-fonte e na documentação atuais, não em uma auditoria ao vivo de conta. Os números do exemplo são fictícios. O Chiho publica este guia; ele não informa resultados de clientes nem afirma que totais iguais comprovam uma migração completa.

Identifique o inventário antes de comparar números

Contatos são entradas na agenda da conta do Telegram. O Telegram oferece uma API de contatos separada. Alguém aparecer em uma conversa não transforma a lista de conversas em uma contagem da agenda.

Diálogos são conversas no inventário de diálogos do Telegram de uma conta. A API de listagem de diálogos do Telegram aceita parâmetros de pasta e paginação. Uma página retornada pode conter menos entradas do que o total do inventário. Grupos e canais também diferenciam um inventário de diálogos de uma lista de clientes individuais.

Diálogos salvos do CRM são os registros de diálogos que o Chiho persistiu para uso no CRM no escopo selecionado. Eles têm um histórico de sincronização. Um total salvo e um total recém-buscado do Telegram não precisam descrever o mesmo momento.

Linhas visíveis são as entradas que uma tela mostra no momento. Um filtro selecionado ou uma página incompleta pode explicar uma exibição menor sem comprovar que o registro subjacente está ausente.

Se você está decidindo quais informações pertencem a um CRM além da própria conversa, comece por o que um CRM do Telegram faz. Aqui, a pergunta imediata é mais restrita: qual inventário cada número descreve?

Comece com uma conta e um escopo de acesso

Anote a conta do Telegram selecionada e se a visualização tem escopo pessoal ou de equipe. Não compare o total de uma conta do Telegram com uma visualização de equipe que tenha limites de acesso diferentes. Registre qualquer filtro de busca, status ou pasta na tela que está investigando.

Para um cliente de IA conectado ao Chiho, account_whoami identifica as contas acessíveis. Confira seu estado de conexão e reautorização antes de interpretar um resultado ausente. Um erro de permissão ou conexão é uma medição indisponível, não uma contagem de zero.

O dialogs_list ao vivo do Chiho não está disponível para tokens com escopo de equipe; a alternativa compatível é crm_dialogs_list, que lê o inventário persistido do CRM. Essa alternativa não transforma o resultado salvo em uma medição ao vivo do Telegram. Se o escopo necessário estiver indisponível, registre a limitação e peça a um proprietário autorizado da conta que faça a comparação. Veja o guia de conexão de agentes de IA para configuração e limites de acesso.

Compare diálogos ativos e arquivados separadamente

O inventory_summary do Chiho retorna activeTotal, archivedTotal e allTotal do Telegram ao vivo, junto com syncedTotal e lastSyncedAt independentes do CRM. A seção do Telegram também registra measuredAt.

Use telegramDialogs.allTotal ao perguntar pelo total de diálogos do Telegram atualmente disponível. Não o substitua pelo número de itens de uma resposta de dialogs_list. Mantenha as contagens de ativos e arquivados em sua planilha para que diferenças na cobertura de arquivos fiquem visíveis.

Um total ao vivo ainda é uma observação, não uma exportação congelada. As conversas podem mudar enquanto você percorre as páginas. Compare observações feitas em momentos próximos e mantenha suas datas e horários. Uma diferença posterior pode exigir outra leitura delimitada, em vez de uma afirmação de que registros foram perdidos.

Termine a paginação antes de considerar uma lista completa

Uma primeira página responde “o que está nesta página?”. Para inspecionar cada diálogo retornado, siga nextCursor até ele estar ausente, preservando a conta e o escopo da consulta. Registre se você realmente chegou a esse ponto.

Para diálogos salvos do CRM, crm_dialogs_list.syncedTotal é independente do tamanho da página atual. Se o inventário mudar durante a paginação do CRM, o Chiho pode rejeitar o cursor e exigir que a paginação recomece. Trate essa resposta como uma observação interrompida; não acrescente a primeira página reiniciada a uma lista antiga e conte duplicatas como novas conversas.

Ao comparar registros individuais, use a conta e a identidade estável do interlocutor retornada pela ferramenta, incluindo seu tipo quando disponível. Nomes de exibição sozinhos são chaves ruins de correspondência: duas conversas podem ter o mesmo título, e títulos podem mudar. Preserve apenas os identificadores mínimos necessários em um registro de diagnóstico autorizado.

Leia o status da sincronização antes de tentar reparar

sync_status lê a execução mais recente ou uma execução especificada sem iniciar trabalho no Telegram. Confira seu modo, cobertura de arquivos, fase, progresso, falhas e informações de nova tentativa junto com os totais do inventário.

  • queued ou running: a execução ainda não chegou ao estado final. Um inventário salvo parcial não é um resultado final de reconciliação.
  • waiting_for_telegram: confira resumeAt. O Chiho persiste a espera e o progresso confirmado; o trabalho agendado não deve chamar o Telegram antes desse horário. Solicitar sincronização repetidamente não contorna a espera.
  • enriching: há processamento adicional em andamento. Não deduza que todos os campos do CRM ou detalhes relacionados já foram preenchidos.
  • complete: a execução terminou, mas confira as contagens informadas de itens ignorados e falhas de enriquecimento. A conclusão não comprova que todas as tarefas de enriquecimento tiveram sucesso nem que todas as mensagens do histórico foram importadas.
  • failed: preserve o ID da execução, a fase e o código de erro. Informe a falha antes de decidir sobre a recuperação.

Iniciar sync_once é uma ação separada que inicia ou retoma trabalho persistido de sincronização; ela não faz parte desta verificação de somente leitura. Se um operador autorizado escolher posteriormente a reconciliação completa, a configuração documentada é o modo completo com diálogos arquivados incluídos. O modo completo também atualiza o retrato dos contatos e exige a permissão telegram.contacts.read autorizada separadamente. Uma execução em modo recente não deve ser apresentada como prova de cobertura completa do inventário.

Exemplo: 50 linhas não significam 50 chats

A seguir há uma planilha sintética, não uma conta observada do Chiho nem um teste de desempenho. Presuma que todas as observações tratam da mesma conta pessoal e que os totais ao vivo permanecem estáveis durante a verificação.

  • Diálogos ativos do Telegram: 120.
  • Diálogos arquivados do Telegram: 30.
  • Todos os diálogos do Telegram: 150.
  • Diálogos salvos do CRM do Chiho: 142, com sua própria data e hora registrada de sincronização.
  • Linhas na primeira página do CRM: 50, com um cursor de continuação.
  • Contatos da agenda do Telegram: 80, medidos separadamente com acesso aos contatos.
  • Estado da sincronização: waiting_for_telegram, com um horário futuro de retomada.

Veja o que a planilha sustenta:

  1. O total de diálogos ao vivo é 120 + 30 = 150.
  2. As 50 linhas são uma página. Elas não comprovam a perda de 100 chats.
  3. O total salvo é 8 menor que o total ao vivo. Esta é uma diferença de contagem não resolvida, não uma prova de que oito chats específicos estão ausentes.
  4. Os 80 contatos são um inventário diferente. Não os subtraia de 150 para calcular clientes ausentes.
  5. A execução em espera ainda não terminou. Registre o horário de nova tentativa e confira o status novamente após o ponto permitido de retomada.

Mesmo após uma execução concluída posteriormente, totais iguais não comprovariam que os dois conjuntos contêm as mesmas conversas. Um interlocutor ausente e um interlocutor extra obsoleto podem se anular numericamente. Se a completude for importante, compare os conjuntos reais de interlocutores após terminar a paginação e depois confira as diferenças dentro do escopo autorizado.

Copie esta planilha de reconciliação

Use um registro por conta e escopo. Deixe campos desconhecidos como desconhecidos, em vez de adivinhar.

  • Pergunta: qual conversa específica ou contagem parece errada?
  • Conta e acesso: conta selecionada; escopo pessoal/de equipe; estado da conexão.
  • Tela: busca e filtros atuais; contagem de linhas visíveis; se ainda restam páginas.
  • Diálogos ao vivo: ativos; arquivados; todos; horário da observação; qualquer erro de leitura.
  • Diálogos salvos: total sincronizado; horário da última sincronização; paginação concluída ou interrompida.
  • Contatos, se relevante: medição separada de contatos; permissão disponível ou indisponível.
  • Sincronização: ID da execução; modo; cobertura de arquivos; estado; fase; progresso; trabalho ignorado/com falha; horário de retomada.
  • Comparação de registros: identidades estáveis mínimas de interlocutores presentes apenas de um lado; horário da observação.
  • Decisão: explicado por escopo/página/filtro; aguardando conclusão; ou divergência não resolvida que exige investigação.

Por exemplo, “O chat do cliente não aparece na primeira página” pede paginação ou uma busca com escopo delimitado. “O mesmo interlocutor não aparece no inventário salvo completo, mas está no inventário ao vivo” é uma evidência mais forte para investigação. Um chat presente, mas sem nota, tem um problema de campo ou contexto que pertence ao fluxo de passagem de responsabilidade em equipe, não ao cálculo do total de diálogos.

Dê a um agente de IA uma tarefa delimitada de somente leitura

Após conectar o Chiho ao seu cliente, use um pedido como:

Para a conta selecionada, confira a identidade da conta, o resumo do inventário e o status da sincronização. Informe os totais ao vivo de ativos e arquivados separadamente do total salvo do CRM, com datas e horários e quaisquer erros de acesso. Não inicie uma sincronização nem envie mensagens. Se precisar listar registros, diga se a paginação está completa. Não deduza contagens de contatos a partir de diálogos.

Para uma pergunta sobre contatos, solicite explicitamente uma leitura separada de contatos apenas quando essa permissão estiver disponível. Para uma conexão com escopo de equipe, aceite que a ferramenta de listagem de diálogos ao vivo está indisponível e informe o inventário salvo como salvo.

Próximo passo: abra o Chiho, escolha a conta que está investigando e complete a planilha para uma divergência concreta. O resultado útil é uma diferença explicada ou um registro de diagnóstico reproduzível — não apenas dois números que por acaso coincidem.