Encantra Care — Suporte (lado do agente)
Módulo app/Modules/Support · migração 100_support.sql · seed demo_support.php.
Base de conhecimento, central de ajuda, portal do cliente e chat ficam no módulo Portal.
Funcionalidades
- Caixa de entrada (
/app/support/tickets): visões Meus, Não atribuídos, Abertos, SLA em risco, Resolvidos e Todos; filtros por prioridade, canal, responsável, time, conta e tag; busca por assunto,#número, cliente ou conta; ordenação por SLA; ações em massa (atribuir, status, prioridade, time, tag). - Ticket (
/app/support/tickets/{id}): conversa com mensagens do cliente, do agente, notas internas e respostas da Lumi; composer com resposta pública/nota, macros e status após envio; propriedades editáveis; timers de SLA; perfil do cliente com conta e saúde; painéis de outros módulos (contact.panels); tickets relacionados; atividade; mesclagem. - Lumi (IA): triagem automática (categoria, tipo, prioridade, sentimento, idioma, resumo, tags e time sugerido), sugestão de resposta com RAG na base de conhecimento e citações, resumo do caso, reescrita (tom, gramática, tradução) e resposta automática com limite de confiança.
- Automações “quando → se → então”: gatilhos ticket criado, após triagem, resposta do cliente, mudança de status e SLA violado; 16 campos de condição; ações de status, prioridade, tipo, categoria, tags, time, agente, round-robin balanceado, notificações, e-mail ao cliente, nota interna e resposta automática da Lumi.
- SLA por prioridade com horário comercial, dias úteis e fuso; verificação a cada 5 min (
support.sla_check), notificações e eventoticket.sla_breached. - Macros com variáveis
{{cliente}},{{ticket.number}},{{ticket.subject}},{{empresa}}e ações. - CSAT: e-mail com carinhas 1–5 ao resolver, página pública
/csat/{token}, comentário opcional, eventocsat.received. - Canais: e-mail (saída com Reply-To e Message-ID rastreável; entrada por webhook
POST /hooks/email/{token}ou IMAP opcional a cada 2 min) e WhatsApp Cloud API (/hooks/whatsapp/{token}com verificação e assinaturaX-Hub-Signature-256). - Relatórios (
/app/support/reports): volume diário, canais, categorias, backlog, 1ª resposta e resolução medianas, % SLA, CSAT, taxa de resolução pela IA e ranking do time. - API REST
/api/v1/tickets(escopotickets):GETlista (filtrosstatus,priority,channel,contact_email,account_external_id,updated_since),POSTcria,GET /{id},POST /{id}/messages,PATCH /{id}.
Contrato para outros módulos (TicketService)
TicketService::create(['subject', 'body', 'channel', 'contact_id' | 'contact_email' (+ 'contact_name'), 'account_id'?, 'priority'?, 'type'?, 'tags'?, 'custom'?, 'author_type'?, 'user_id'?, 'source_message_id'?]): int
TicketService::addMessage(int $ticketId, ['body', 'author_type', 'user_id'?, 'contact_id'?, 'visibility'?, 'channel'?, 'status'?]): int
TicketService::update(int $ticketId, array $changes): array
TicketService::findOrCreateContact(string $email, ?string $name = null): int
TicketService::listForContact(int $contactId): array
TicketService::getForContact(int $ticketId, int $contactId): ?array // ticket + mensagens públicas
Eventos
Emitidos: ticket.created, ticket.replied, ticket.status_changed, ticket.solved, ticket.assigned, ticket.updated, ticket.sla_breached, csat.received, contact.created.
Ouvidos: tenant.created (cria time Geral, SLA padrão, canal de e-mail, automações e macro iniciais) e os eventos de ticket (motor de automações).
Hooks fornecidos
app.home, search, contact.panels, account.panels, account.tabs, account.signals (support.open_tickets, support.tickets_30d, support.sla_breaches_30d, support.csat_90d), usage.meters (tickets_month, agents), settings.sections.
Encontrou algo para melhorar? Escreva para master@inspire4u.com.br.