cdp-edge 1.2.2 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +153 -306
- package/bin/cdp-edge.js +71 -61
- package/contracts/agent-versions.json +682 -0
- package/contracts/api-versions.json +372 -368
- package/contracts/types.ts +81 -0
- package/dist/commands/analyze.js +52 -52
- package/dist/commands/infra.js +54 -54
- package/dist/commands/install.js +26 -3
- package/dist/commands/server.js +174 -174
- package/dist/commands/setup.js +332 -100
- package/dist/commands/validate.js +248 -84
- package/dist/index.js +12 -12
- package/dist/sdk/cdpTrack.js +2095 -0
- package/dist/sdk/cdpTrack.min.js +64 -0
- package/dist/sdk/install-snippet.html +10 -0
- package/docs/whatsapp-ctwa.md +5 -4
- package/extracted-skill/tracking-events-generator/INTEGRACAO-COMPLETA.md +89 -0
- package/extracted-skill/tracking-events-generator/MELHORIAS-IMPLEMENTADAS.md +101 -0
- package/extracted-skill/tracking-events-generator/advanced-matching.js +364 -364
- package/extracted-skill/tracking-events-generator/agents/ab-ltv-agent.md +196 -0
- package/extracted-skill/tracking-events-generator/agents/ab-testing-agent.md +1 -1
- package/extracted-skill/tracking-events-generator/agents/attribution-agent.md +41 -41
- package/extracted-skill/tracking-events-generator/agents/bidding-agent.md +347 -0
- package/extracted-skill/tracking-events-generator/agents/bing-agent.md +40 -50
- package/extracted-skill/tracking-events-generator/agents/browser-tracking.md +174 -74
- package/extracted-skill/tracking-events-generator/agents/code-guardian-agent.md +1 -1
- package/extracted-skill/tracking-events-generator/agents/compliance-agent.md +25 -5
- package/extracted-skill/tracking-events-generator/agents/dashboard-agent.md +10 -10
- package/extracted-skill/tracking-events-generator/agents/database-agent.md +43 -42
- package/extracted-skill/tracking-events-generator/agents/debug-agent.md +22 -22
- package/extracted-skill/tracking-events-generator/agents/devops-agent.md +232 -0
- package/extracted-skill/tracking-events-generator/agents/domain-setup-agent.md +23 -9
- package/extracted-skill/tracking-events-generator/agents/email-agent.md +28 -1
- package/extracted-skill/tracking-events-generator/agents/evo-crm-agent.md +253 -0
- package/extracted-skill/tracking-events-generator/agents/fingerprint-agent.md +206 -1
- package/extracted-skill/tracking-events-generator/agents/fraud-detection-agent.md +143 -0
- package/extracted-skill/tracking-events-generator/agents/google-agent.md +128 -2
- package/extracted-skill/tracking-events-generator/agents/intelligence-agent.md +191 -31
- package/extracted-skill/tracking-events-generator/agents/lead-scoring-agent.md +282 -0
- package/extracted-skill/tracking-events-generator/agents/linkedin-agent.md +145 -34
- package/extracted-skill/tracking-events-generator/agents/localization-agent.md +1 -1
- package/extracted-skill/tracking-events-generator/agents/ltv-predictor-agent.md +24 -5
- package/extracted-skill/tracking-events-generator/agents/master-feedback-loop.md +81 -21
- package/extracted-skill/tracking-events-generator/agents/master-orchestrator.md +588 -93
- package/extracted-skill/tracking-events-generator/agents/match-quality-agent.md +304 -0
- package/extracted-skill/tracking-events-generator/agents/memory-agent.md +190 -15
- package/extracted-skill/tracking-events-generator/agents/meta-agent.md +10 -2
- package/extracted-skill/tracking-events-generator/agents/ml-clustering-agent.md +769 -0
- package/extracted-skill/tracking-events-generator/agents/page-analyzer.md +21 -4
- package/extracted-skill/tracking-events-generator/agents/performance-agent.md +41 -31
- package/extracted-skill/tracking-events-generator/agents/performance-optimization-agent.md +18 -8
- package/extracted-skill/tracking-events-generator/agents/pinterest-agent.md +14 -6
- package/extracted-skill/tracking-events-generator/agents/premium-tracking-intelligence-agent.md +7 -7
- package/extracted-skill/tracking-events-generator/agents/r2-setup-agent.md +16 -8
- package/extracted-skill/tracking-events-generator/agents/reddit-agent.md +15 -7
- package/extracted-skill/tracking-events-generator/agents/security-enterprise-agent.md +157 -48
- package/extracted-skill/tracking-events-generator/agents/server-tracking.md +35 -35
- package/extracted-skill/tracking-events-generator/agents/spotify-agent.md +15 -7
- package/extracted-skill/tracking-events-generator/agents/tiktok-agent.md +73 -2
- package/extracted-skill/tracking-events-generator/agents/tracking-plan-agent.md +104 -9
- package/extracted-skill/tracking-events-generator/agents/utm-agent.md +322 -0
- package/extracted-skill/tracking-events-generator/agents/validator-agent.md +13 -9
- package/extracted-skill/tracking-events-generator/agents/webhook-agent.md +112 -4
- package/extracted-skill/tracking-events-generator/agents/whatsapp-agent.md +58 -5
- package/extracted-skill/tracking-events-generator/agents/whatsapp-ctwa-setup-agent.md +26 -18
- package/extracted-skill/tracking-events-generator/agents/youtube-agent.md +152 -37
- package/extracted-skill/tracking-events-generator/anti-blocking.js +285 -285
- package/extracted-skill/tracking-events-generator/cdpTrack.js +642 -641
- package/extracted-skill/tracking-events-generator/contracts/api-versions.json +14 -10
- package/extracted-skill/tracking-events-generator/engagement-scoring.js +226 -226
- package/extracted-skill/tracking-events-generator/evals/evals.json +235 -235
- package/extracted-skill/tracking-events-generator/integration-test.js +497 -497
- package/extracted-skill/tracking-events-generator/knowledge-base.md +172 -0
- package/extracted-skill/tracking-events-generator/micro-events.js +992 -992
- package/extracted-skill/tracking-events-generator/models/lancamento-imobiliario.md +344 -0
- package/extracted-skill/tracking-events-generator/models/pinterest/conversions-api-template.js +144 -144
- package/extracted-skill/tracking-events-generator/models/pinterest/event-mappings.json +48 -48
- package/extracted-skill/tracking-events-generator/models/pinterest/tag-template.js +28 -28
- package/extracted-skill/tracking-events-generator/models/quiz-funnel.md +83 -19
- package/extracted-skill/tracking-events-generator/models/reddit/conversions-api-template.js +205 -205
- package/extracted-skill/tracking-events-generator/models/reddit/event-mappings.json +56 -56
- package/extracted-skill/tracking-events-generator/models/reddit/pixel-template.js +19 -19
- package/extracted-skill/tracking-events-generator/models/scenarios/behavior-engine.js +425 -425
- package/extracted-skill/tracking-events-generator/route-intent-capture.js +222 -0
- package/extracted-skill/tracking-events-generator/tracking.config.js +3 -3
- package/package.json +89 -75
- package/scripts/build-sdk.js +106 -0
- package/server-edge-tracker/.client.env.example +14 -0
- package/server-edge-tracker/INSTALAR.md +222 -23
- package/server-edge-tracker/SEGMENTATION-DOCS.md +513 -0
- package/server-edge-tracker/config/utm-mapping.json +64 -0
- package/server-edge-tracker/deploy-client.cjs +76 -0
- package/server-edge-tracker/index.ts +1230 -0
- package/server-edge-tracker/migrate-v7.sql +64 -0
- package/server-edge-tracker/modules/db.ts +710 -0
- package/server-edge-tracker/modules/dispatch/crm.ts +382 -0
- package/server-edge-tracker/modules/dispatch/ga4.ts +72 -0
- package/server-edge-tracker/modules/dispatch/meta.ts +143 -0
- package/server-edge-tracker/modules/dispatch/platforms.ts +255 -0
- package/server-edge-tracker/modules/dispatch/tiktok.ts +107 -0
- package/server-edge-tracker/modules/dispatch/whatsapp.ts +296 -0
- package/server-edge-tracker/modules/intelligence.ts +589 -0
- package/server-edge-tracker/modules/ml/bidding.ts +247 -0
- package/server-edge-tracker/modules/ml/fraud.ts +302 -0
- package/server-edge-tracker/modules/ml/logistic.ts +226 -0
- package/server-edge-tracker/modules/ml/ltv.ts +531 -0
- package/server-edge-tracker/modules/ml/matchquality.ts +232 -0
- package/server-edge-tracker/modules/ml/quiz.ts +343 -0
- package/server-edge-tracker/modules/ml/roas.ts +255 -0
- package/server-edge-tracker/modules/ml/segmentation.ts +407 -0
- package/server-edge-tracker/modules/nurture.ts +257 -0
- package/server-edge-tracker/modules/utils.ts +311 -0
- package/server-edge-tracker/modules/utm/utm-enricher.ts +231 -0
- package/server-edge-tracker/schema-ab-ltv.sql +97 -0
- package/server-edge-tracker/schema-bidding.sql +86 -0
- package/server-edge-tracker/schema-fraud.sql +90 -0
- package/server-edge-tracker/schema-indexes.sql +67 -0
- package/server-edge-tracker/schema-ltv-feedback.sql +11 -0
- package/server-edge-tracker/schema-quiz.sql +52 -0
- package/server-edge-tracker/schema-sales-engine.sql +113 -0
- package/server-edge-tracker/schema-segmentation.sql +219 -0
- package/server-edge-tracker/schema-utm.sql +82 -0
- package/server-edge-tracker/schema.sql +281 -265
- package/server-edge-tracker/types.ts +275 -0
- package/server-edge-tracker/wrangler.toml +140 -85
- package/templates/lancamento-imobiliario.md +344 -0
- package/templates/multi-step-checkout.md +3 -4
- package/templates/pinterest/conversions-api-template.js +144 -144
- package/templates/pinterest/event-mappings.json +48 -48
- package/templates/pinterest/tag-template.js +28 -28
- package/templates/quiz-funnel.md +83 -19
- package/templates/reddit/conversions-api-template.js +205 -205
- package/templates/reddit/event-mappings.json +56 -56
- package/templates/reddit/pixel-template.js +12 -39
- package/templates/scenarios/behavior-engine.js +45 -22
- package/docs/PixelBuilder-Documentacao-Completa (2).docx +0 -0
- package/docs/installation.md +0 -155
- package/docs/quick-start.md +0 -185
- package/extracted-skill/tracking-events-generator/agents/crm-integration-agent.md +0 -1419
- package/extracted-skill/tracking-events-generator/agents/intelligence-scheduling.md +0 -643
- package/server-edge-tracker/worker.js +0 -2574
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# Setup Completo — server-edge-tracker
|
|
2
|
-
##
|
|
2
|
+
## SEU_DOMINIO | Meta CAPI v22.0 + GA4 Measurement Protocol + D1 Database
|
|
3
3
|
|
|
4
4
|
> Execute cada bloco no terminal, um de cada vez.
|
|
5
5
|
> Tempo total estimado: 15–20 minutos.
|
|
@@ -77,15 +77,39 @@ pelo ID que você copiou. Salve o arquivo.
|
|
|
77
77
|
|
|
78
78
|
## PASSO 5 — Criar as tabelas no banco
|
|
79
79
|
|
|
80
|
+
Execute os arquivos de schema na ordem abaixo. Cada arquivo usa `IF NOT EXISTS` e é idempotente — pode ser executado mais de uma vez sem risco.
|
|
81
|
+
|
|
80
82
|
```bash
|
|
81
|
-
|
|
83
|
+
# Core: tabelas principais (leads, user_profiles, events_log, identity_graph)
|
|
84
|
+
wrangler d1 execute cdp-edge-db --file=schema.sql --remote
|
|
85
|
+
|
|
86
|
+
# Migrations históricas (retry_queue, escalation_log, intelligence_logs)
|
|
87
|
+
wrangler d1 execute cdp-edge-db --file=migrate-v6.sql --remote
|
|
88
|
+
|
|
89
|
+
# Fase 1 — ML Clustering (ml_segments, ml_segment_members, views de segmentação)
|
|
90
|
+
wrangler d1 execute cdp-edge-db --file=schema-segmentation.sql --remote
|
|
91
|
+
|
|
92
|
+
# Fase 2 — Bidding ML (bid_recommendations, view v_active_bid_recs)
|
|
93
|
+
wrangler d1 execute cdp-edge-db --file=schema-bidding.sql --remote
|
|
94
|
+
|
|
95
|
+
# Fase 3 — A/B LTV Testing (ltv_ab_tests, ltv_ab_variations, ltv_ab_assignments)
|
|
96
|
+
wrangler d1 execute cdp-edge-db --file=schema-ab-ltv.sql --remote
|
|
97
|
+
|
|
98
|
+
# Fase 4 — Fraud Detection (fraud_signals, fraud_alerts, view v_fraud_dashboard)
|
|
99
|
+
wrangler d1 execute cdp-edge-db --file=schema-fraud.sql --remote
|
|
100
|
+
|
|
101
|
+
# Índices compostos de performance para queries D1 (todas as fases)
|
|
102
|
+
wrangler d1 execute cdp-edge-db --file=schema-indexes.sql --remote
|
|
103
|
+
|
|
104
|
+
# Fase 5 — LTV Real + Match Quality (ltv_model_weights, match_quality_log, view v_match_quality_24h)
|
|
105
|
+
wrangler d1 execute cdp-edge-db --file=migrate-v7.sql --remote
|
|
82
106
|
```
|
|
83
107
|
|
|
84
|
-
> Resultado esperado: "✅ Successfully executed SQL"
|
|
108
|
+
> Resultado esperado para cada arquivo: "✅ Successfully executed SQL"
|
|
85
109
|
|
|
86
110
|
Verificar se as tabelas foram criadas:
|
|
87
111
|
```bash
|
|
88
|
-
wrangler d1 execute cdp-edge-db --command="SELECT name FROM sqlite_master WHERE type='table';"
|
|
112
|
+
wrangler d1 execute cdp-edge-db --remote --command="SELECT name FROM sqlite_master WHERE type='table' ORDER BY name;"
|
|
89
113
|
```
|
|
90
114
|
|
|
91
115
|
---
|
|
@@ -118,21 +142,30 @@ wrangler secret put META_TEST_CODE
|
|
|
118
142
|
> Encontrar no Gerenciador de Eventos Meta → Testar Eventos → copie o código "TEST12345"
|
|
119
143
|
> **Lembrar de remover esse secret em produção** (veja PASSO 10)
|
|
120
144
|
|
|
121
|
-
### WhatsApp —
|
|
145
|
+
### WhatsApp — Webhook Verification (CTWA Tracking):
|
|
146
|
+
```bash
|
|
147
|
+
wrangler secret put WA_WEBHOOK_VERIFY_TOKEN
|
|
148
|
+
```
|
|
149
|
+
> Token de verificação do webhook WhatsApp (obrigatório para CTWA). Meta exige este token para registrar o webhook.
|
|
150
|
+
> Defina qualquer string segura, ex: `cdp-edge-webhook-2026-secret-xyz`.
|
|
151
|
+
|
|
152
|
+
### WhatsApp — Meta Cloud API v22.0 (mensagens automáticas - OPCIONAL):
|
|
153
|
+
> ⚠️ Estes secrets são **OPCIONAIS**. Se você precisa apenas de tracking de dados (ctwaclid), não configure-os.
|
|
154
|
+
|
|
122
155
|
```bash
|
|
123
|
-
wrangler secret put
|
|
156
|
+
wrangler secret put WHATSAPP_PHONE_NUMBER_ID
|
|
124
157
|
```
|
|
125
|
-
> Phone Number ID do WhatsApp Business.
|
|
158
|
+
> Meta: "Phone Number ID" — ID do número WhatsApp Business. Necessário apenas para enviar mensagens automáticas.
|
|
126
159
|
|
|
127
160
|
```bash
|
|
128
|
-
wrangler secret put
|
|
161
|
+
wrangler secret put WHATSAPP_ACCESS_TOKEN
|
|
129
162
|
```
|
|
130
|
-
> Token de acesso
|
|
163
|
+
> Meta: "Access Token" — Token de acesso do WhatsApp Business. Necessário apenas para enviar mensagens automáticas.
|
|
131
164
|
|
|
132
165
|
```bash
|
|
133
166
|
wrangler secret put WA_NOTIFY_NUMBER
|
|
134
167
|
```
|
|
135
|
-
> Número que vai receber as notificações de venda/lead.
|
|
168
|
+
> Número que vai receber as notificações de venda/lead. Necessário apenas para enviar mensagens automáticas.
|
|
136
169
|
|
|
137
170
|
### WhatsApp — CallMeBot (alertas internos do sistema):
|
|
138
171
|
```bash
|
|
@@ -197,8 +230,8 @@ Ainda com `META_TEST_CODE` configurado, rode este comando no terminal
|
|
|
197
230
|
```bash
|
|
198
231
|
curl -X POST https://server-edge-tracker.seu-usuario.workers.dev/track \
|
|
199
232
|
-H "Content-Type: application/json" \
|
|
200
|
-
-H "Origin: https://
|
|
201
|
-
-d "{\"eventName\":\"Lead\",\"email\":\"teste@email.com\",\"pageUrl\":\"https://
|
|
233
|
+
-H "Origin: https://SEU_DOMINIO" \
|
|
234
|
+
-d "{\"eventName\":\"Lead\",\"email\":\"teste@email.com\",\"pageUrl\":\"https://SEU_DOMINIO/teste\"}"
|
|
202
235
|
```
|
|
203
236
|
|
|
204
237
|
Resultado esperado:
|
|
@@ -210,7 +243,97 @@ Verificar no Meta: Gerenciador de Eventos → Testar Eventos → deve aparecer "
|
|
|
210
243
|
|
|
211
244
|
---
|
|
212
245
|
|
|
213
|
-
## PASSO 10 —
|
|
246
|
+
## PASSO 10 — Verificar Plano Workers ($5) e Dados Geográficos
|
|
247
|
+
|
|
248
|
+
### IMPORTANTE: Plano Workers Paid ($5/mês)
|
|
249
|
+
|
|
250
|
+
O CDP Edge foi desenvolvido para aproveitar todos os recursos do **Cloudflare Workers Paid ($5/mês)**, especialmente os dados geográficos avançados.
|
|
251
|
+
|
|
252
|
+
**O que você ganha com o plano $5:**
|
|
253
|
+
- **Cidade exata:** Ex: "São Paulo" (plano free: NULL)
|
|
254
|
+
- **Estado completo:** Ex: "São Paulo" (plano free: NULL)
|
|
255
|
+
- **Estado (sigla):** Ex: "SP" (plano free: NULL)
|
|
256
|
+
- **CEP:** Ex: "01310-100" (plano free: NULL)
|
|
257
|
+
- **Latitude/Longitude:** Ex: "-23.5505", "-46.6333" (plano free: NULL)
|
|
258
|
+
- **Timezone:** Ex: "America/Sao_Paulo" (plano free: NULL)
|
|
259
|
+
|
|
260
|
+
**Como verificar se está funcionando:**
|
|
261
|
+
|
|
262
|
+
1. **Enviar evento de teste:**
|
|
263
|
+
```bash
|
|
264
|
+
curl -X POST "https://SEU_DOMINIO/track" \
|
|
265
|
+
-H "Content-Type: application/json" \
|
|
266
|
+
-H "Origin: https://SEU_DOMINIO" \
|
|
267
|
+
-H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" \
|
|
268
|
+
-d '{"eventName":"TestGeo","pageUrl":"https://SEU_DOMINIO/teste","email":"teste@exemplo.com","firstName":"Teste","lastName":"Geo"}'
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
2. **Verificar no banco D1 se os dados geográficos foram capturados:**
|
|
272
|
+
```bash
|
|
273
|
+
wrangler d1 execute cdp-edge-db --remote --command="SELECT event_name, email, city, state, country FROM leads WHERE email = 'teste@exemplo.com' ORDER BY created_at DESC LIMIT 1"
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
**Resultado esperado (com plano $5):**
|
|
277
|
+
```json
|
|
278
|
+
{
|
|
279
|
+
"event_name": "TestGeo",
|
|
280
|
+
"email": "teste@exemplo.com",
|
|
281
|
+
"city": "São Bernardo do Campo", // ← Plano $5: nome da cidade
|
|
282
|
+
"state": "SP", // ← Plano $5: sigla do estado
|
|
283
|
+
"country": "BR" // ← Plano free: país
|
|
284
|
+
}
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
**Se `city` e `state` aparecem como `NULL`:**
|
|
288
|
+
- O plano $5 não está ativo
|
|
289
|
+
- Verifique no painel Cloudflare se Workers está contratado
|
|
290
|
+
- Contrate o plano em: https://dash.cloudflare.com/[ID_DA_CONTA]/workers/plans
|
|
291
|
+
|
|
292
|
+
---
|
|
293
|
+
|
|
294
|
+
## PASSO 11.1 — Solução de Conflitos de Rotas
|
|
295
|
+
|
|
296
|
+
### ⚠️ Se aparecer erro no deploy:
|
|
297
|
+
|
|
298
|
+
```
|
|
299
|
+
ERROR: Can't deploy routes that are assigned to another worker.
|
|
300
|
+
"server-edge-tracker" is already assigned to routes:
|
|
301
|
+
- SEU_DOMINIO/track*
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
### SOLUÇÃO 1 — Via Painel Cloudflare (RECOMENDADO):
|
|
305
|
+
|
|
306
|
+
1. Acesse: https://dash.cloudflare.com/[ID_DA_CONTA]/workers/overview
|
|
307
|
+
2. Clique no worker que está usando as rotas do seu domínio
|
|
308
|
+
3. Vá em Settings → Triggers → Routes
|
|
309
|
+
4. Clique "Delete" nas rotas do domínio `SEU_DOMINIO`
|
|
310
|
+
5. Repita o `wrangler deploy`
|
|
311
|
+
|
|
312
|
+
### SOLUÇÃO 2 — Via Wrangler CLI:
|
|
313
|
+
|
|
314
|
+
```bash
|
|
315
|
+
# Listar workers para encontrar o deployment conflitante
|
|
316
|
+
wrangler deployments list
|
|
317
|
+
|
|
318
|
+
# Remover deployment conflitante (substituir pelo ID correto)
|
|
319
|
+
wrangler deployment delete --id <ID_DO_DEPLOYMENT_CONFLITANTE>
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
### SOLUÇÃO 3 — Usar Sufixo nas Rotas:
|
|
323
|
+
|
|
324
|
+
Se não quiser remover rotas existentes, use sufixo:
|
|
325
|
+
|
|
326
|
+
```toml
|
|
327
|
+
[[routes]]
|
|
328
|
+
pattern = "SEU_DOMINIO/track-worker-novo*"
|
|
329
|
+
zone_name = "SEU_DOMINIO"
|
|
330
|
+
```
|
|
331
|
+
|
|
332
|
+
**URL do tracking:** `https://SEU_DOMINIO/track-worker-novo`
|
|
333
|
+
|
|
334
|
+
---
|
|
335
|
+
|
|
336
|
+
## PASSO 11.2 — Remover o Test Code antes de ir ao ar
|
|
214
337
|
|
|
215
338
|
```bash
|
|
216
339
|
wrangler secret delete META_TEST_CODE
|
|
@@ -219,18 +342,94 @@ wrangler deploy
|
|
|
219
342
|
|
|
220
343
|
---
|
|
221
344
|
|
|
222
|
-
## PASSO
|
|
345
|
+
## PASSO 12 — Configurar domínio personalizado (OBRIGATÓRIO para produção)
|
|
346
|
+
|
|
347
|
+
### ⚠️ ATENÇÃO: Domínio OBRIGATÓRIO
|
|
348
|
+
|
|
349
|
+
Para o tracking funcionar corretamente em produção, você **PRECISA** configurar um domínio personalizado. **NÃO** use o domínio `.workers.dev` em produção.
|
|
350
|
+
|
|
351
|
+
### INSTRUÇÕES EXATAS:
|
|
352
|
+
|
|
353
|
+
#### 1. Verificar se o domínio está na Cloudflare
|
|
354
|
+
```bash
|
|
355
|
+
# No painel Cloudflare: https://dash.cloudflare.com
|
|
356
|
+
# Verifique se o domínio está listado em "Websites"
|
|
357
|
+
# Se não estiver, adicione o domínio antes de continuar
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
#### 2. Configurar rotas no wrangler.toml
|
|
361
|
+
|
|
362
|
+
Edite o arquivo `wrangler.toml` e substitua:
|
|
363
|
+
```toml
|
|
364
|
+
# SUBSTITUIR estes valores:
|
|
365
|
+
pattern = "SEU_DOMINIO/track*" # ← Substituir pelo domínio real
|
|
366
|
+
zone_name = "SEU_DOMINIO" # ← Substituir pelo domínio real
|
|
367
|
+
|
|
368
|
+
# Exemplo real:
|
|
369
|
+
# pattern = "cliente.com.br/track*"
|
|
370
|
+
# zone_name = "cliente.com.br"
|
|
371
|
+
```
|
|
372
|
+
|
|
373
|
+
#### 3. Fazer o deploy com as rotas
|
|
374
|
+
```bash
|
|
375
|
+
wrangler deploy
|
|
376
|
+
```
|
|
223
377
|
|
|
224
|
-
|
|
378
|
+
#### 4. Resolver conflitos de rotas (se ocorrer erro)
|
|
225
379
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
380
|
+
Se aparecer erro: `Can't deploy routes that are assigned to another worker`:
|
|
381
|
+
|
|
382
|
+
**SOLUÇÃO A - Via painel Cloudflare:**
|
|
383
|
+
1. Acesse: https://dash.cloudflare.com/[ID_DA_CONTA]/workers/overview
|
|
384
|
+
2. Clique no worker que está usando as rotas do seu domínio
|
|
385
|
+
3. Vá em Settings → Triggers → Routes
|
|
386
|
+
4. Clique "Delete" nas rotas do domínio
|
|
387
|
+
5. Repita o `wrangler deploy`
|
|
388
|
+
|
|
389
|
+
**SOLUÇÃO B - Via API (rápido):**
|
|
390
|
+
```bash
|
|
391
|
+
# Listar workers para encontrar o ID
|
|
392
|
+
wrangler deployments list
|
|
393
|
+
|
|
394
|
+
# Remover rotas do worker conflitante (substituir pelo ID correto)
|
|
395
|
+
wrangler deployment delete --id <ID_DO_DEPLOYMENT>
|
|
396
|
+
```
|
|
397
|
+
|
|
398
|
+
#### 5. Verificar se funcionou
|
|
399
|
+
```bash
|
|
400
|
+
# Testar endpoint de health
|
|
401
|
+
curl "https://SEU_DOMINIO/track/health"
|
|
402
|
+
|
|
403
|
+
# Deve retornar:
|
|
404
|
+
# {"status": "ok", "bindings": {...}}
|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
#### 6. Testar endpoint de tracking
|
|
408
|
+
```bash
|
|
409
|
+
curl -X POST "https://SEU_DOMINIO/track" \
|
|
410
|
+
-H "Content-Type: application/json" \
|
|
411
|
+
-H "Origin: https://SEU_DOMINIO" \
|
|
412
|
+
-d '{"eventName":"Test","pageUrl":"https://SEU_DOMINIO/teste"}'
|
|
413
|
+
```
|
|
414
|
+
|
|
415
|
+
**URL FINAL DO TRACKING:**
|
|
416
|
+
- ✅ `https://SEU_DOMINIO/track` (CORRETO - produção)
|
|
417
|
+
- ❌ `https://seu-worker.workers.dev/track` (ERRADO - teste apenas)
|
|
418
|
+
|
|
419
|
+
---
|
|
420
|
+
|
|
421
|
+
### DOMÍNIOS SUPOSTOS (.workers.dev) — Apenas para testes locais:
|
|
422
|
+
|
|
423
|
+
```bash
|
|
424
|
+
# Para testar localmente sem domínio real:
|
|
425
|
+
wrangler dev
|
|
426
|
+
|
|
427
|
+
# Acesso temporário: http://localhost:8787/track
|
|
428
|
+
```
|
|
230
429
|
|
|
231
430
|
---
|
|
232
431
|
|
|
233
|
-
## PASSO
|
|
432
|
+
## PASSO 13 — Configurar webhooks nas plataformas
|
|
234
433
|
|
|
235
434
|
### Ticto (plataforma principal):
|
|
236
435
|
|
|
@@ -243,8 +442,8 @@ Preencher:
|
|
|
243
442
|
- **Formato:** `JSON`
|
|
244
443
|
- **Evento:** marcar **Venda Realizada** (status `paid`)
|
|
245
444
|
|
|
246
|
-
> Se usar domínio personalizado (ex: `track.
|
|
247
|
-
> URL fica: `https://track.
|
|
445
|
+
> Se usar domínio personalizado (ex: `track.SEU_DOMINIO`):
|
|
446
|
+
> URL fica: `https://track.SEU_DOMINIO/webhook/ticto`
|
|
248
447
|
|
|
249
448
|
**Testar:** na tela de webhook da Ticto há um botão **"Enviar teste"**. Ao clicar, a Ticto envia um POST simulado. Confirme que o evento aparece no Gerenciador de Eventos do Meta como `Purchase` e que o dado foi registrado no banco D1 (ver comando no final deste guia).
|
|
250
449
|
|
|
@@ -296,7 +495,7 @@ Preencher:
|
|
|
296
495
|
"userId": "usr_abc123",
|
|
297
496
|
"gaClientId": "GA1.1.123456789.1234567890",
|
|
298
497
|
"eventId": "CDP_1234567890_abc123",
|
|
299
|
-
"pageUrl": "https://
|
|
498
|
+
"pageUrl": "https://SEU_DOMINIO/obrigado",
|
|
300
499
|
"value": 297,
|
|
301
500
|
"currency": "BRL",
|
|
302
501
|
"utmSource": "facebook",
|