bottemplates/crm/marketing.gbai/marketing.gbdialog/create-campaign.bas

52 lines
2.1 KiB
QBasic

PARAM name AS STRING LIKE "Promoção Dia das Mães" DESCRIPTION "Nome descritivo da campanha"
PARAM channel AS STRING LIKE "email" DESCRIPTION "Canal de envio: whatsapp, email, sms, telegram"
PARAM scheduled_date AS DATE LIKE "2026-05-01 09:00:00" DESCRIPTION "Data/Hora de agendamento do envio (opcional)" OPTIONAL
PARAM list_id AS STRING LIKE "uuid_da_lista" DESCRIPTION "ID da Lista de Contatos alvo" OPTIONAL
PARAM template_id AS STRING LIKE "uuid_do_template" DESCRIPTION "ID do Template de Conteúdo" OPTIONAL
PARAM ai_generate_template AS STRING LIKE "Crie um email rápido de 3 parágrafos sobre sapatos com desconto de 15%" DESCRIPTION "Prompt para IA caso queira gerar um template agora" OPTIONAL
DESCRIPTION "Cria uma Campanha de Marketing e agenda seu envio. Pode integrar/vincular a listas e templates existentes."
IF NOT list_id THEN
TALK "Qual lista de contatos você deseja usar para esta campanha?"
' Aqui seria uma busca na db ou listagem interativa
HEAR list_id AS STRING
END IF
// Create template if an AI prompt was given but no template_id
IF ai_generate_template AND NOT template_id THEN
TALK "🤖 Gerando e salvando um template de " + channel + " baseado no seu pedido..."
new_template = POST "/api/marketing/templates", #{
name: name + " Template",
channel: channel,
ai_prompt: ai_generate_template
}
template_id = new_template.id
TALK "Template ID retornado: " + template_id
ELSE IF NOT template_id THEN
TALK "Tem o ID do template guardado? Diga-me por favor."
HEAR template_id AS STRING
END IF
new_campaign = POST "/api/marketing/campaigns", #{
name: name,
channel: channel,
status: "draft",
scheduled_at: scheduled_date,
template_id: template_id,
list_id: list_id
}
TALK "📣 **Campanha Criada!**"
TALK "Nome: " + name
TALK "Canal: " + UCASE(channel)
TALK "Status: Draft"
TALK "ID: " + new_campaign.id
IF scheduled_date THEN
TALK "Agendada para: " + scheduled_date
ELSE
TALK "Pendente de envio. Use 'send-campaign' para dispará-la agora."
END IF
RETURN new_campaign.id