crm-api-template-generator/backend
Eduxavier88 a1195810fe feat(transcription): add transcription handling with HubSpot integration and ticket verification 2025-06-12 17:30:46 -03:00
..
.husky feat: Added new feature 2023-11-29 17:05:48 -03:00
Templates-test feat(integration): add crmAccountId field to allow dynamic CRM account ID in integration template 2025-04-11 16:32:24 -03:00
controllers feat(transcription): add transcription handling with HubSpot integration and ticket verification 2025-06-12 17:30:46 -03:00
data feat(integration/omnihit): update config to allow ticket creation without assigned queue 2025-04-11 12:58:35 -03:00
db feat: Added new feature 2023-11-29 17:05:48 -03:00
errors feat: Added new feature 2023-11-29 17:05:48 -03:00
middleware chore: remove unnecessary comments and improve requests handling 2024-09-24 09:10:18 -03:00
models feat(integration): add crmAccountId field to allow dynamic CRM account ID in integration template 2025-04-11 16:32:24 -03:00
routes feat(transcription): add transcription handling with HubSpot integration and ticket verification 2025-06-12 17:30:46 -03:00
services feat(transcription): add transcription handling with HubSpot integration and ticket verification 2025-06-12 17:30:46 -03:00
utils feat(transcription): add transcription handling with HubSpot integration and ticket verification 2025-06-12 17:30:46 -03:00
Procfile feat: Added new feature 2023-11-29 17:05:48 -03:00
app.js feat: Sentry added for error and log monitoring 2025-04-03 11:37:20 -03:00
env.example feat(transcription): add transcription handling with HubSpot integration and ticket verification 2025-06-12 17:30:46 -03:00
package-lock.json feat(transcription): add transcription handling with HubSpot integration and ticket verification 2025-06-12 17:30:46 -03:00
package.json feat(transcription): add transcription handling with HubSpot integration and ticket verification 2025-06-12 17:30:46 -03:00
readme.md feat(transcription): add transcription handling with HubSpot integration and ticket verification 2025-06-12 17:30:46 -03:00
swagger.yaml feat: Added new feature 2023-11-29 17:05:48 -03:00

readme.md

Atenção

Para rodar a aplicação esteja na pasta backend. O .env deve estar dentro da pasta backend para rodar essa api.

Use o env.example

Nova Funcionalidade: Integração de Transcrição com HubSpot

Esta funcionalidade permite receber, processar e registrar transcrições de chamadas telefônicas diretamente no HubSpot, com associação automática ao contato e, se disponível, ao ticket da chamada.

Fluxo Geral

  1. Uma transcrição de chamada é recebida via endpoint REST (/api/v1/crm/transcriptions).
  2. O sistema consulta o Redis para verificar se há um ticketId associado ao callerId.
  3. Se existir:
    • A nota é associada ao contato e ao ticket correspondente no HubSpot.
  4. Se não existir:
    • A nota é criada e associada apenas ao contato.

Exemplo de Requisição

Endpoint: POST /api/v1/crm/transcriptions

Body:

{
  "callerId": "5511987654321",
  "uniqueId": "chamada-001",
  "transcription": {
    "summary": "Cliente solicitou informações sobre o pedido.",
    "client": "Gostaria de saber como está meu pedido.",
    "agent": "Claro! Posso verificar agora."
  },
  "recordingUrl": "https://exemplo.com/gravação/audio.wav"
}

Verificação Prévia de Ticket

Antes de enviar a transcrição de uma chamada, o sistema realiza uma verificação para saber se já existe um ticket associado ao número de telefone (callerId / crmPhone).

Endpoint:
GET /api/v1/crm/tickets/check-by-crmphone

Parâmetros de consulta (query params):

Parâmetro Tipo Obrigatório Descrição
crmPhone string Sim Número do telefone do cliente (E.164)

Exemplo de Requisição:

GET /api/v1/crm/tickets/check-by-crmphone?crmPhone=5511997532324

Resposta (200 OK):

{
  "hasTicket": true,
  "ticketId": "25292628260"
}

Lógica de Uso

  • Se hasTicket for true, o ticketId será incluído no envio da transcrição.
  • Se hasTicket for false, a transcrição não será enviada para essa api para o envio ao HubSpot.