diff --git a/ligbox-ops-platform/LAPTOP/CREDENCIAIS_SERVICOS_VM123.txt b/ligbox-ops-platform/LAPTOP/CREDENCIAIS_SERVICOS_VM123.txt new file mode 100644 index 0000000..5a37cd2 --- /dev/null +++ b/ligbox-ops-platform/LAPTOP/CREDENCIAIS_SERVICOS_VM123.txt @@ -0,0 +1,37 @@ +VM123 — Credenciais dos 3 serviços (Spec 024) +============================================== +Data: 2026-06-17 +Host: 10.10.10.123 (vm123-finance) +SSH: root / 805353 + +--- FOSSBilling --- +URL interna: http://10.10.10.123:8092 +URL pública: https://financeiro.ligbox.com.br +Admin URL: https://financeiro.ligbox.com.br/admin +Admin login: admin@ligbox.com.br +Admin senha: LbFossAdmin805353 +MariaDB user: fossbilling +MariaDB pass: LbFoss9367c416 +Módulo OpenPanel: instalado (OpenPanel.php) + +--- Odoo 16 --- +URL interna: http://10.10.10.123:8069 +URL pública: https://financeiro.ligbox.com.br/odoo +Login URL: https://financeiro.ligbox.com.br/odoo/web/login?db=ligbox +Base dados: ligbox +Admin login: admin@ligbox.com.br +Admin senha: LbOdooAdmin805353 +Postgres user: odoo +Postgres pass: LbOdood9ca25c3 +Master pwd DB: admin (gestor bases Odoo) + +--- OpenPanel --- +URL pública: https://openpanel.ligbox.com.br +OpenAdmin: porta 2087 +OpenPanel UI: porta 2083 +Admin user: ligboxadmin +Admin senha: LbOpen805353 +API: activar com opencli config update api on + +Integração FOSS → OpenPanel: + Manager: OpenPanel | IP: 10.10.10.123 | Port: 2087 diff --git a/ligbox-ops-platform/docs/anais-referencia/20260701_WIZARD_GATE_EMAIL_FOSS_DRATCOIN_ASPECTOS.md b/ligbox-ops-platform/docs/anais-referencia/20260701_WIZARD_GATE_EMAIL_FOSS_DRATCOIN_ASPECTOS.md new file mode 100644 index 0000000..99455da --- /dev/null +++ b/ligbox-ops-platform/docs/anais-referencia/20260701_WIZARD_GATE_EMAIL_FOSS_DRATCOIN_ASPECTOS.md @@ -0,0 +1,235 @@ +# Anais de Referência — Wizard Gate · Email Boas-vindas · FOSS dratcoin (2026-07-01) + +**Data:** 2026-07-01 +**Utilizador:** Roger +**VMs:** VM112 (wizard) · VM122 (Desk) · VM123 (FOSS/Odoo/OpenPanel) · VM130 (Obsidian) +**Domínio caso:** `dratcoin.com` +**Spec relacionada:** Spec 043 (gate pós-onboarding + activação billing) + +--- + +## Resumo executivo + +| Área | Estado | +|------|--------| +| Gate portal admin (modais empresa + webmail) | ✅ Implementado e deploy VM112 | +| Email boas-vindas admin | ✅ Logo oficial + footer Ligbox/Lig-it | +| FOSS cliente dratcoin | ✅ Cliente **#13**, order **#9**, invoice **#3** (unpaid) | +| Activación automática FOSS pós-wizard | ❌ Ainda manual (Desk `activate`) | +| DNS público dratcoin | ⏳ Registrador ainda aponta NS Cloudflare | +| Odoo admin | ✅ Validado login | + +--- + +## 1. Gate portal admin (VM112) + +### Fluxo alvo (Roger) + +1. Wizard conclui → infra Ligbox pronta; só falta propagação DNS no registrador +2. Gerente entra em `https://onboard.ligbox.com.br/admin` +3. **1.º acesso** → modal bloqueante confirma dados empresa +4. Webhook `company.validated` → Desk +5. Modal liberação webmail com 2FA Ligbox +6. Aviso Carbonio removido após release + +### Ficheiros alterados + +| Ficheiro | Alteração | +|----------|-----------| +| `frontend/src/DomainAdmin.jsx` | Wire gate: modais, banner, refresh `/me` | +| `frontend/src/components/CompanyConfirmModal.jsx` | Form completo (CNPJ, endereço, cobrança) | +| `frontend/src/components/WebmailReleaseModal.jsx` | (existente, ligado) | +| `frontend/src/stitch-admin.css` | Estilos `.gate-modal*` | +| `backend/app/routers/domain_admin.py` | `apply_portal_draft_to_domain()` no login | +| `backend/app/services/company_gate.py` | (já existia) | + +### API gate + +| Endpoint | Função | +|----------|--------| +| `GET /api/domain-admin/me` | Inclui objeto `gate` | +| `POST /api/domain-admin/gate/company-profile` | Confirma empresa | +| `POST /api/domain-admin/gate/release-webmail` | Libera webmail (2FA Ligbox) | + +### Deploy + +```bash +cd /opt/ligbox-wizard/frontend && npm run build:wizard +systemctl restart ligbox-wizard +``` + +**Build fix:** `consumeOnboardHandoffFromAllSources` adicionado em `sessionPersist.js`. + +--- + +## 2. Email boas-vindas administrador + +### Template + +- `backend/app/templates/email/onboarding_welcome.html` +- `backend/app/services/email_templates.py` + +### Logo hero (correcção 2026-07-01) + +| Errado (antes) | Correcto (agora) | +|----------------|------------------| +| `logo-ligbox_novo.png` (laranja, marca errada) | `ligbox-logo-hero-web.png` base | +| Caixa branca no hero | **Sem fundo** — variante luminosidade | +| — | `ligbox-logo-hero-email-dark.png` (texto branco, ícone original) | + +**Asset:** `https://ligbox.com.br/assets/ligbox-logo-hero-email-dark.png` +**Gerado:** ImageMagick a partir de `ligbox-logo-hero-web.png` (substituir tons escuros do wordmark por branco). + +### Footer (igual site Ligbox) + +- Logo Ligbox + tagline +- Suporte `comercial@ligit.com.br` · `(41) 3806-0620` +- Logo Lig-it (`lig-it-logo-final.png`) +- **Powered by Ligit Solutions** · ligbox.com.br + +### Reenvio teste + +```bash +PYTHONPATH=/opt/ligbox-wizard/backend /opt/ligbox-wizard/.venv/bin/python3 -c " +from app.services import notifications +notifications.send_welcome_to_mailbox( + email='001@dratcoin.com', domain='dratcoin.com', + webmail='https://mail.dratcoin.com/', display_name='Dratcoin Admin') +" +``` + +--- + +## 3. dratcoin.com — estado infra + +| Camada | Status | +|--------|--------| +| Carbonio + `001@dratcoin.com` | ✅ Activo | +| mail-bundle VM112 | ✅ `foss_client_id=13`, `foss_order_id=9` | +| OpenPanel zona VM123 | ✅ MX/A/SPF/DMARC | +| DNS registrador | ❌ NS Cloudflare (`norah`/`rohin`) — não Ligbox BIND | +| Webmail aviso | Informativo até release portal admin | + +**Registry:** `/var/lib/ibytera-mail-portal/domains/dratcoin.com.json` +**Mail bundle:** `/var/lib/ligbox-wizard/mail_bundles/dratcoin.com.json` + +--- + +## 4. FOSS — porque não aparecia / invoice + +### Regra importante + +`company.validated` (wizard) **≠** criação FOSS automática. + +``` +company.validated → Desk billing_accounts (awaiting_billing_validation) + ↓ +POST /api/v1/billing/accounts/{id}/activate ← passo manual/API + ↓ +FOSS client → order → invoice → OpenPanel → Odoo → mail-bundle +``` + +### Estado FOSS dratcoin (validado API 2026-07-01) + +| Registo | ID | Detalhe | +|---------|-----|---------| +| Cliente | **13** | `001@dratcoin.com` · **Dratcoin Ltd** · active | +| Order | **9** | Ligbox Mail Business | +| Invoice | **3** | `FOSS00003` · R$ 549,00 · **unpaid** | + +**Procurar no admin:** `001@dratcoin.com` ou «Dratcoin Ltd» (não só «Dratcoin»). + +### Falha 1.ª activação (~16:29 UTC) + +- FOSS API: `created: true` mas `client_id: null` (bug parse `_extract_id`) +- Wizard mail-bundle: 404 na VM112 +- Desk marcou `ok: true` incorrectamente + +FOSS criado ~1,5h depois em retry manual. + +### Pendências código (VM122) + +1. Auto-hook `company.validated` → `activate_billing_account` +2. Corrigir `_extract_id()` em `foss_client.py` +3. Falhar activação se `client_id` null ou wizard 404 + +--- + +## 5. Credenciais Odoo 16 (VM123) + +| Campo | Valor | +|-------|--------| +| URL pública | https://financeiro.ligbox.com.br/odoo/web/login?db=ligbox | +| URL interna | http://10.10.10.123:8069 | +| Login | `admin@ligbox.com.br` | +| Senha / API Key | `LbOdooAdmin805353` | +| Base dados | `ligbox` | +| Postgres user | `odoo` | +| Postgres pass | `LbOdood9ca25c3` | + +**Fonte:** `/opt/ligbox-ops-platform/LAPTOP/CREDENCIAIS_SERVICOS_VM123.txt` (VM122) +**Validação:** `web/session/authenticate` → uid **2** OK. + +--- + +## 6. Credenciais FOSS (referência) + +| Campo | Valor | +|-------|--------| +| URL admin | https://financeiro.ligbox.com.br | +| User API | `admin` | +| Token | `lbfoss-5d2dc39f163866f5dabced5bc0ad251f` | +| FOSS Admin UI | `admin@ligbox.com.br` / `LbFossAdmin805353` | + +--- + +## 7. Catálogo 20 pacotes FOSS (sessão anterior) + +- Products ids 2–21 com pricing recorrente +- Descrições HTML ricas via `ligbox-bundle-descriptions.py` +- Docs: `LIGBOX-CATALOG-20.md`, `BUNDLE-DESCRIPTIONS.md` +- Repo VM130: `ligbox-ops-platform` + +--- + +## 8. Logos VM112 (referência) + +| Ficheiro | Uso | +|----------|-----| +| `/opt/ligbox-web/assets/ligbox-logo-hero-web.png` | Logo oficial | +| `/opt/ligbox-web/assets/ligbox-logo-hero-email-dark.png` | Email fundo escuro | +| `/opt/ligbox-web/assets/v4/logo-ligbox_novo.png` | Variante laranja — **não usar em email** | +| `/opt/ligbox-web/assets/logos_sites/lig-it-logo-final.png` | Footer Lig-it | + +--- + +## 9. Comandos úteis + +```bash +# FOSS cliente dratcoin +curl -s -X POST "https://financeiro.ligbox.com.br/api/admin/client/get" \ + -u "admin:lbfoss-5d2dc39f163866f5dabced5bc0ad251f" \ + -H "Content-Type: application/json" -d '{"id":13}' + +# FOSS invoices cliente 13 +curl -s -X POST "https://financeiro.ligbox.com.br/api/admin/invoice/get_list" \ + -u "admin:lbfoss-5d2dc39f163866f5dabced5bc0ad251f" \ + -H "Content-Type: application/json" -d '{"client_id":13}' + +# Preview email +# file:///opt/ligbox-wizard/backend/app/templates/email/onboarding_welcome_preview.html +``` + +--- + +## 10. Próximos passos (Roger) + +- [ ] NS registrador dratcoin → `ns1.ligbox.com.br` / `ns2.ligbox.com.br` +- [ ] Activar FOSS automaticamente após confirma empresa no portal +- [ ] Pagar/enviar invoice FOSS-3 ao cliente +- [ ] Testar fluxo gate E2E: login `001@dratcoin.com` → modal → release webmail +- [ ] Commit gate wiring no repo Forgejo (VM130) se ainda não feito + +--- + +*Documento gerado pela sessão Cursor 2026-07-01 · Obsidian VM130* diff --git a/ligbox-ops-platform/docs/anais-referencia/INDICE_ANAIS.md b/ligbox-ops-platform/docs/anais-referencia/INDICE_ANAIS.md index 661d21f..fbd8b48 100644 --- a/ligbox-ops-platform/docs/anais-referencia/INDICE_ANAIS.md +++ b/ligbox-ops-platform/docs/anais-referencia/INDICE_ANAIS.md @@ -1,6 +1,6 @@ # Índice — Anais de Referência (Ligbox Ops Platform) -**Atualizado:** 2026-06-17 +**Atualizado:** 2026-07-01 **Responsável:** Roger / Cursor Agent **VM122:** `10.10.10.122` · SSH WAN `:2522` @@ -130,3 +130,14 @@ python3 /opt/ligbox-ops-platform/scripts/export-chat-bruto-standalone.py \ CHAT_BRUTO__ ``` - [[20260619_WIZARD_PORTAL_ADMIN_ROUTE_FIX]] — Portal /admin reabria wizard Concluído (VM112) + +--- + +### 2026-07-01 — Wizard Gate · Email Boas-vindas · FOSS dratcoin + +| Ficheiro | Descrição | +|----------|-----------| +| `20260701_WIZARD_GATE_EMAIL_FOSS_DRATCOIN_ASPECTOS.md` | Gate modais portal admin, logo email, FOSS #13/#9/invoice #3, Odoo creds, DNS dratcoin | + +**Decisões:** logo email = `ligbox-logo-hero-email-dark.png` (sem caixa branca); FOSS só após Desk `activate`; Spec 043 gate deploy VM112. +