Pular para o conteúdo

Bitconn Auto Survey

Sales/CRM · v19.0.1.0.0 · GPL-2

Bitconn Auto Survey

  • Ação no CRM para agendar pesquisa para o parceiro do lead
  • Botão manual no card kanban do CRM
  • Agendamento padrão de 48h após criação
  • Status de envio (rascunho, agendado, enviado, respondido, cancelado, erro)
  • Cron job para disparo automático dos e-mails agendados

crm, survey

Agendamento automático de pesquisas via CRM com disparo por e-mail

  • Versão: 18.0.1.0.0
  • Autor: Diego F. Rodrigues
  • Website: bitconn.com.br
  • Licença: GPL-2
  • Dependências: crm, survey

Módulo para Odoo 18 que permite agendar o envio de pesquisas (surveys) diretamente a partir do CRM. Os agendamentos são criados vinculados a leads/oportunidades e disparados automaticamente por e-mail na data programada (padrão: 48h após criação).


  • Botão no header do formulário da oportunidade: “Agendar Pesquisa” — abre wizard para selecionar pesquisa, contato, e-mail e data de envio.
  • Menu no card kanban das oportunidades: opção “Agendar Pesquisa” no menu dropdown do card.
  • Stat button no formulário do lead: exibe a contagem de pesquisas agendadas e abre a lista ao clicar.
  • Server action no CRM: ação “Agendar Pesquisa” disponível na listagem e formulário de leads.

Registro de agendamento com os seguintes campos:

CampoDescrição
nameReferência sequencial (SURV/2026/0001)
survey_idPesquisa a ser enviada
partner_idContato destinatário
lead_idLead/oportunidade de origem
emailE-mail do destinatário (auto-preenchido pelo contato)
scheduled_dateData/hora agendada para envio (padrão: 48h)
sent_dateData/hora do envio efetivo
stateStatus do agendamento
user_input_idResposta da pesquisa vinculada
user_idResponsável pelo agendamento
error_messageMensagem de erro (quando aplicável)
StatusDescrição
RascunhoAgendamento criado, não confirmado
AgendadoConfirmado, aguardando data de envio
EnviadoE-mail disparado com sucesso
RespondidoPesquisa respondida pelo contato
CanceladoAgendamento cancelado manualmente
ErroFalha no envio (mensagem de erro detalhada disponível)
  • Agendar — confirma o agendamento (rascunho → agendado)
  • Enviar Agora — dispara imediatamente sem aguardar a data
  • Cancelar — cancela o agendamento
  • Voltar a Rascunho — retorna de cancelado/erro para rascunho
  • Testar Link — abre a URL da pesquisa em nova aba (disponível após envio)
  • Lista com decorações por status (cores)
  • Kanban agrupado por status com progressbar
  • Formulário completo com chatter (tracking de alterações)
  • Filtros e agrupamentos por status, pesquisa, data e responsável
CronIntervaloDescrição
Enviar Pesquisas Agendadas15 minutosBusca agendamentos com status “Agendado” e scheduled_date <= agora, e dispara o envio
Verificar Respostas1 horaVerifica se pesquisas enviadas já foram respondidas e atualiza o status

Os crons podem ser ajustados via menu Pesquisas > Agendamentos > Configuração (somente administradores).

Template em PT-BR com:

  • Saudação personalizada com nome do contato
  • Botão “Responder Pesquisa” com link direto
  • Assinatura do responsável

Pesquisas
└── Agendamentos
├── Agendamentos (lista/kanban dos agendamentos)
└── Configuração (crons do módulo - somente admin)

O módulo pode ser integrado com regras de automação do Odoo para agendamento automático de pesquisas sem intervenção manual. Basta criar uma automação no CRM com ação “Executar código Python”.

Exemplo: Agendar pesquisa quando lead muda para estágio “Ganho”

Seção intitulada “Exemplo: Agendar pesquisa quando lead muda para estágio “Ganho””
  1. Acesse Configurações > Técnico > Automação > Regras de Automação
  2. Crie uma nova regra:
    • Modelo: Lead/Oportunidade
    • Gatilho: Quando atualizados
    • Campos monitorados: Estágio
    • Condição (antes): Estágio != Ganho
    • Condição (depois): Estágio = Ganho
  3. Na ação, selecione Executar código Python com:
# ID da pesquisa desejada (ajuste conforme necessário)
SURVEY_ID = 1
for lead in records:
if not lead.partner_id:
continue
env['auto.survey.schedule'].create({
'survey_id': SURVEY_ID,
'partner_id': lead.partner_id.id,
'lead_id': lead.id,
'email': lead.partner_id.email or lead.email_from,
'scheduled_date': datetime.datetime.now() + datetime.timedelta(hours=48),
'state': 'scheduled',
})
SURVEY_ID = 1
for lead in records:
if not lead.partner_id:
continue
env['auto.survey.schedule'].create({
'survey_id': SURVEY_ID,
'partner_id': lead.partner_id.id,
'lead_id': lead.id,
'email': lead.partner_id.email or lead.email_from,
'scheduled_date': datetime.datetime.now() + datetime.timedelta(hours=24),
'state': 'scheduled',
})

Dica: Para encontrar o ID da pesquisa, acesse Pesquisas > Pesquisas, abra a pesquisa desejada, e verifique o ID na URL (ex: /survey/survey/1).


bitconn_auto_survey/
├── __init__.py
├── __manifest__.py
├── README.md
├── data/
│ ├── ir_cron_data.xml # Crons de envio e verificação
│ └── mail_template_data.xml # Template de e-mail
├── models/
│ ├── __init__.py
│ ├── auto_survey_schedule.py # Modelo principal de agendamento
│ └── crm_lead.py # Extensão do CRM lead
├── security/
│ └── ir.model.access.csv # Permissões de acesso
├── views/
│ ├── auto_survey_schedule_views.xml # Views (list, kanban, form, search, menus)
│ └── crm_lead_views.xml # Extensões do CRM (kanban, form, server action)
└── wizard/
├── __init__.py
├── auto_survey_schedule_wizard.py # Wizard de agendamento
└── auto_survey_schedule_wizard_views.xml

  1. Certifique-se de que os módulos crm e survey estão instalados.
  2. Adicione o diretório bitconn_addons ao --addons-path do Odoo.
  3. Atualize a lista de módulos e instale Bitconn Auto Survey.

Este módulo é distribuído sob a licença GPL-2.0.

© 2026 Diego F. Rodrigues — bitconn.com.br