Blog · 2026-08-30
Automatizar check-in, pagamento de prêmios e sorteios: o desenho de sistema de um bot de LINE para membros
Do vínculo de identidade no LINE às chaves únicas que barram duplicidade, do crédito idempotente de prêmios ao trio de nuvem (autostart com systemd, alerta externo e backup a cada 6 horas), a anatomia de uma arquitetura de bot de membros que ninguém precisa ficar vigiando.
O que mais consome gente na operação de membros são as ações repetidas: conferir check-in todo dia, distribuir prêmio contra uma lista, confirmar que o pagamento caiu e avisar cada pessoa por mensagem privada. Feito à mão é lento e falha, e no momento em que a campanha cresce o atendimento afoga. Esse fluxo inteiro pode rodar totalmente automatizado em um bot de LINE, desde que algumas questões de desenho fiquem resolvidas antes. Senão a automação só acelera o erro.
Vínculo de identidade: LINE e conta de membro são dois sistemas, monte a tabela de correspondência primeiro
O que a LINE Official Account entrega é um identificador de usuário emitido pela plataforma. O sistema de membros tem outro conjunto de contas. Os dois não batem por natureza. O primeiro passo de qualquer automação é montar a tabela de vínculo "identificador LINE ↔ conta de membro", e montar com rigor:
- O vínculo tem que verificar a posse. Um membro digitando um número de conta na caixa de conversa não é vínculo. Combine com código de verificação de uso único ou aprovação no painel, senão qualquer um vincula a conta de outra pessoa ao próprio LINE.
- Garanta a unicidade com restrição no banco de dados: uma identidade do LINE só pode vincular uma conta de membro, e uma conta de membro só pode ser vinculada uma vez. Sem essas duas restrições de unicidade, mais cedo ou mais tarde aparece gente com vários vínculos recebendo prêmio duas vezes, ou conta disputada sendo tomada por quem chegar primeiro.
- Registre toda desvinculação e revinculação em log de alteração. Quando surge uma disputa, esse registro é a única prova capaz de esclarecer o que aconteceu.
Com o vínculo estável, check-in, sorteio, pagamento de prêmio e disparo ficam todos pendurados na mesma identidade de membro, que é a fundação de tudo que vem depois.
Check-in e sorteio: escolha a chave certa contra duplicidade e deixe o banco de dados barrar
A falha mais comum na prevenção de duplicidade é escolher a chave no nível errado. Para barrar "o mesmo membro fazendo check-in duas vezes no mesmo dia", a chave única é membro mais data. Para barrar "o mesmo membro entrando duas vezes no sorteio da mesma campanha", a chave é membro mais campanha. Se a chave não está alinhada com a coisa que você quer mesmo evitar, o teste funcional passa todo verde e a duplicidade escapa do mesmo jeito.
Três pontos de implementação:
- Barre no índice único do banco de dados, não em um if dentro do código. Toque duplo, reenvio de rede e duas requisições entrando ao mesmo tempo podem passar juntas pela lógica da aplicação. O índice único não deixa. Na colisão de chave, responda "você já fez check-in hoje", que para o usuário é resposta normal, não erro.
- Defina o fuso horário de "um dia" de forma explícita. Se o relógio do servidor está algumas horas fora do horário de Taiwan (UTC+8), quem agir perto da meia-noite ganha ou perde um dia.
- A proteção contra fraude precisa ser em camadas, e você tem que assumir que alguém vai vir encher a lista. Fizemos uma página de inscrição e sorteio de campanha com cinco camadas: limite por IP, lista negra, chave única de telefone e e-mail, hash de impressão digital e verificação humana. Depois rodamos uma limpeza multidimensional e auditamos cerca de 118 inscrições reais dentro de 142 registros; o resto era dado de teste, número inventado, envio em lote da mesma faixa de rede e gente se autoindicando. O front-end segura o deslize de dedo. Não segura quem tem má intenção, então a lista precisa permitir separar o verdadeiro do falso depois.
Crédito automático de prêmio: idempotência importa mais que velocidade, dispare só depois do crédito confirmado
Em cenários de iGaming, pagar o prêmio significa creditar o valor da campanha ou o rebate direto na carteira de jogo do membro. O centro do pagamento totalmente automático é o backend do bot chamando a interface de crédito do sistema de membros, com um número de ordem único em cada requisição. Reenviando o mesmo número, o sistema devolve o mesmo resultado e não credita uma segunda vez. Isso se chama idempotência, e é o que permite que o pagamento automático possa ser reenviado com segurança.
- O mais perigoso não é a falha, é a incerteza. Quando a requisição de crédito estoura o tempo limite, o dinheiro pode ter entrado ou não. Essa ordem não pode ser reenviada às cegas nem marcada como falha direto: consulte o estado primeiro e só então decida o próximo passo. Sem caminho de falha desenhado, a automação vira prejuízo automático.
- Trave a ordem dos passos: confirme que o crédito entrou e só então envie o aviso por LINE de que o valor caiu. Disparo duplicado custa uma mensagem a mais para o usuário. Crédito duplicado é perda direta, então as estratégias de retentativa dos dois lados têm que ser separadas.
- Guarde registro de cada pagamento e faça conciliação agendada: o log de pagamento do lado do bot e o log de crédito do sistema de membros são comparados de tempos em tempos, e uma única diferença dispara alerta. Totalmente automático não quer dizer que ninguém olha, quer dizer que só o anormal precisa de gente.
- O disparo em si tem custo e cota, então aviso de transação e mensagem de marketing precisam de níveis separados. Não deixe a mensagem de sistema comer a cota.
Trio de nuvem: autostart, alerta e backup, faltando um não está no ar
Um bot assim é um serviço residente recebendo mensagem 24 horas, e deixá-lo rodando em algum computador do escritório é risco de ponto único. O nosso padrão é implantar em servidor na nuvem com os três itens no lugar:
- Autostart no boot e recuperação de queda: systemd com Restart=always e a unidade habilitada, para o serviço subir sozinho quando o servidor reinicia e ser relançado quando o processo morre. Em outro sistema construído sobre o mesmo esqueleto de implantação, medimos o systemd trazendo de volta um processo morto à força em cerca de 6 segundos.
- Monitoramento e alerta externos: um processo morto não consegue avisar que morreu, então o alerta não pode depender do próprio serviço se reportar. Use uma verificação de vida externa que empurre notificação para o celular assim que cair.
- Backup automático dos dados: a tabela de vínculo e os registros de check-in e de pagamento são a vida deste sistema. Fazemos backup automático do banco de dados a cada 6 horas para armazenamento de objetos na nuvem, em domínio de falha diferente do servidor, mantendo várias cópias recuperáveis. Se o servidor explodir, você perde algumas horas no máximo, não tudo.
Para fechar
Check-in, vínculo, pagamento de prêmio, sorteio: olhando cada função isolada, nenhuma é difícil. O difícil é desenhar de uma vez os caminhos de falha, duplicidade, tempo limite estourado, disputa de vínculo, lista inflada e queda do servidor. A qualidade de um sistema totalmente automático é decidida pelos caminhos de falha. Se a sua operação de membros ainda está presa em conferir lista à mão ou pagar prêmio manualmente, ou se você quer acrescentar prevenção de duplicidade e redundância a um bot que já existe, fale com a gente para ver qual etapa vale automatizar primeiro.
Essa arquitetura virou produto
Todo o desenho de sistema acima já está pronto na nossa plataforma de gestão inteligente de LINE OA, então você não precisa cuidar de servidor, assinatura, idempotência e backup por conta própria.
- Integração via API: conecta o bot ao seu próprio sistema de pedidos ou de membros, incluindo a tabela de vínculo de identidade
- Rastreamento de funil de 8 etapas: cada amigo classificado automaticamente, sem você escrever máquina de estados
- Gestão de contatos CRM: perfil do usuário, rastro de comportamento e etiquetas em um só lugar
- Disparo segmentado: escolha o destinatário por etapa e etiqueta, para gastar a verba de mensagem com as pessoas certas
- Respostas automáticas por palavra-chave: gatilho por palavra-chave, evento e condição
- Agente de suporte com IA: base de conhecimento RAG mais LLM, passa para um humano quando não consegue responder
Três tamanhos, mensalidade cotada em USDT, sem fidelidade:
| Plano | Mensalidade | Contas oficiais | Limite de amigos | Destaque |
|---|---|---|---|---|
| Inicial | $29 USDT | 1 | 5,000 | Design de Rich Menu, respostas automáticas por palavra-chave, rastreamento básico de funil |
| Crescimento | $79 USDT | 3 | 30,000 | Inclui agente de suporte com IA, funil completo de 8 etapas, disparo segmentado |
| Profissional | $199 USDT | 5 | Sem limite | Inclui gestão de contatos CRM, integração via API com o seu backend |
As contas oficiais incluídas nos planos ficam registradas no seu próprio nome, não sob a nossa administração. As especificações completas estão em plataforma de gestão inteligente de LINE OA, e para um sistema totalmente sob medida veja Desenvolvimento de automação. Se você quer primeiro entender a estrutura da LINE Official Account, leia o guia completo da LINE Official Account.
Resolvemos esse tipo de problema todos os dias
Descreva sua situação e dizemos direto se dá para fazer e quanto custa aproximadamente.
Falar no Telegram