Documentação Técnica Completa

Sistema de assistência inteligente integrado à plataforma OndeVou.com (App 0070). Filosofia: A IA não executa — ela localiza, explica e propõe com base em permissões reais. Agora com: Sistema completo de documentação automatizada em PDF e e-mail.

🚀 Produção 🏗️ 11 Fases 📁 29 Arquivos 📄 IAOndeVouPDF v1.0 📧 IAEmail v1.0 🔒 Permissões Reais 🏆 ONDEVOU®
11
Fases
29
Arquivos
230+
Sinônimos
11
Métodos Matching
6
Ações PDF
3
Fallbacks

🎯 Identificação Rápida

Sistema

Nome: OndeVou IA

Versão: 2.0.0

Status: Produção

Arquitetura

Multi‑instância com isolamento total

11 fases progressivas

29 módulos lógicos

+2 novos módulos

Integração

App: 0070 — OndeVou.com

Segurança: Permissões reais

Filosofia: Localiza, não executa

Documenta: Gera PDF, compartilha, registra

🏆 Propriedade Intelectual - ONDEVOU®

®

Marca Registrada

ONDEVOU® — Propriedade Intelectual Assegurada

A marca ONDEVOU está devidamente registrada no Instituto Nacional da Propriedade Industrial (INPI), garantindo exclusividade e proteção legal para todos os produtos e serviços da plataforma.

📋 Dados do Registro

Processo nº: 908765967
Titular (Registro): FMSI - SOLUCOES EM INFORMATICA EIRELI - ME
Titular (Atual): ONDEVOU TECNOLOGIA LTDA
Nome Fantasia: FMSI INFORMATICA
CNPJ: 17.058.605/0001-36
Data de Depósito: 16/12/2014
Data da Concessão: 08/05/2018
Fim da Vigência: 08/05/2028 (renovável)

🎯 Classificação e Especificação

NCL(10): Classe 42

CFE(4):

10.3.10 10.3.11 10.3.12 10.3.15 10.3.25

📌 Especificação:

  • Sites de busca — fornecimento de mecanismos de busca na Internet
  • Informação em — sites de busca
  • Consultoria em — sites de busca
  • Assessoria em — sites de busca

📜 Certificado Oficial

REPÚBLICA FEDERATIVA DO BRASIL
Ministério da Indústria, Comércio Exterior e Serviços
Instituto Nacional da Propriedade Industrial

Certificado de registro de marca

Processo nº: 908765967

🏛️ Linha do Tempo da Propriedade Intelectual

📝 2014 Depósito
2018 Concessão
🚀 2026 OndeVou IA
📆 2028 Renovação

10 anos de proteção legal • Renovação automática por períodos iguais • Marca eterna! 🏆

📌 Nota: A empresa evoluiu de FMSI - SOLUCOES EM INFORMATICA EIRELI - ME para ONDEVOU TECNOLOGIA LTDA, mantendo o mesmo CNPJ 17.058.605/0001-36 e nome fantasia FMSI INFORMATICA. A marca ONDEVOU® continua protegida sob o processo INPI 908765967.

🏗️ Estrutura do Sistema

Arquitetura Geral em 11 Fases
graph LR P[Plataforma] --> F0[Fase 0: Plataforma] F0 --> F1[Fase 1: Fundação] F1 --> F2[Fase 2: Contexto & Busca] F2 --> F3[Fase 3: Processador] F3 --> F4[Fase 4: Ação] F4 --> F5[Fase 5: Documentação de Entidades] F5 --> F6[Fase 6: Contextos] F6 --> F7[Fase 7: Histórico] F7 --> F8[Fase 8: Interface] F8 --> F9[Fase 9: Core] F9 --> F10[Fase 10: Serviços PDF e E-mail]
0
Plataforma
2 arquivos
graph TD P[Plataforma] --> A[App 0070] P --> I[Integração 732.js] A --> H[Hook System] I --> H
  • ondevou-app-0070.js — Funções da IA na plataforma
  • ondevou-732.js — Painel slide para IA
1
Fundação
8 arquivos
graph TD C[Config] --> O[Observador] O --> B[Botões] B --> G[Globais Expert] G --> D[DB Expert] D --> A[Analyzer] A --> PDF[📄 PDF Service] PDF --> EMAIL[📧 Email Service]
  • ondevou-ia-config.js — Configurações gerais
  • ondevou-ia-observador-globais.js — Monitora window.globais
  • ondevou-ia-pdf.js — 🆕 Sistema de PDF
  • ondevou-ia-email.js — 🆕 Serviço de e-mail
  • ondevou-ia-botoes.js — Ações / botões da IA
  • ondevou-ia-globais-expert.js — Especialista em window.globais
  • ondevou-ia-db-expert.js — Especialista em IndexedDB
  • ondevou-ia-analyzer.js — Analisador estrutural
2
Contexto & Busca
3 arquivos
graph TD I[Input] --> CD[Context Detector] CD --> SE[Search Engine] SE --> C[Cache]
  • ondevou-ia-context-detector.js — DETECTOR: Identifica contexto atual
  • ondevou-ia-search-engine.js — ENGINE: Motor de busca inteligente
3
Processador
1 arquivo
  • ondevou-ia-message-processor.js — PROCESSOR: Gerencia fluxo contexto→busca→ação
4
Ação
6 arquivos
graph TD IT[Identify Table] --> SB[SQL Builder] SB --> GD[GetData] GD --> P[Preview] P --> E[Executor] E --> SE[SQL Executor]
  • ondevou-ia-identify-table.js — Identificação de tabelas
  • ondevou-ia-sql-builder.js — Construção de SQL
  • ondevou-ia-getdata.js — Obtenção de dados
  • ondevou-ia-preview.js — Visualização de dados
  • ondevou-ia-executor.js — Execução de ações/SQL
  • ondevou-ia-sql-executor.js — Executor SQL para HTML
5
Documentação de Entidades
1 arquivo
graph LR TS[TableSearch] --> IE[IAEntidadeSearch] IE --> AS[Analysis System] AS --> D[Dados] D --> G[Gerador HTML] G --> DOC[Documentação] DOC --> PDF[📄 Gerar PDF]
  • ondevou-ia-context-entidade.js — Entidade contextual (documentacao, opengraph, campos)
  • ✓ IAEntidadeSearch — Controller principal
  • ✓ 8 seções de análise
  • ✓ Integração com serviço PDF
6
Contextos
3 arquivos
  • ondevou-ia-context-faq.js — FAQ contextual
  • ondevou-ia-context-menu.js — Menu contextual
  • ondevou-ia-context-tabela.js — Tabela contextual
7
Histórico
2 arquivos
  • ondevou-ia-history.js — Histórico de interações
  • ondevou-ia-history-interface.js — Interface do histórico
8
Interface
4 arquivos
  • ondevou-ia-interface.js — Interface principal
  • ondevou-ia-interface-slide.js — Interface slide
  • ondevou-ia-admin-console.js — Console admin
  • css/ondevou-ia.css — Estilo exclusivo da IA
9
Core
2 arquivos
  • ondevou-ia-core.js — Kernel principal
  • ondevou-ia-init.js — Inicialização
10
Serviços PDF e E-mail
2 arquivos • NOVA FASE!
graph TD subgraph "📄 IAOndeVouPDF" PDF[Singleton] --> GERAR[gerarPDF] GERAR --> UPLOAD[Upload ☁️] UPLOAD --> CARD[showPDFCard] CARD --> A1[👁️ Visualizar] CARD --> A2[⬇️ Download] CARD --> A3[📱 WhatsApp] CARD --> A4[🔗 Copiar Link] CARD --> A5[📧 E-mail] end subgraph "📧 IAEmail" EMAIL[Singleton] --> SOLICITAR[solicitarEmail] EMAIL --> ENVIAR[enviarPDF] ENVIAR --> BACKEND[Backend / Fallback] SOLICITAR --> MODAL[Modal Input] end A5 --> EMAIL
  • ondevou-ia-pdf.js — 📄 Serviço de PDF
    • ✓ Singleton: window.getIAPDF()
    • ✓ Gerar PDF com header/footer/logo
    • ✓ Upload automático para files.ondevou.com.br/files/ia/pdfs/
    • ✓ URL correta com regex /([^:])\/\//g
    • ✓ Card interativo com 6 ações
    • ✓ Download forçado (XHR + Blob + saveAs)
    • ✓ WhatsApp com reuso de aba
    • ✓ Copiar link com 3 fallbacks
  • ondevou-ia-email.js — 📧 Serviço de E-mail
    • ✓ Singleton: window.getIAEmail()
    • ✓ Modal para solicitar e-mail
    • ✓ Validação em tempo real
    • ✓ Fallback automático (mailto + link copiado)
    • ✓ Integração com backend /cgi-bin/enviar_email.py
    • ✓ Zero acoplamento com PDF
🎯 Filosofia da Fase 10: Serviços independentes, singleton, zero dependências, fallback inteligente, experiência do usuário sempre preservada.

📊 Resumo de Arquivos por Fase

Fase Nome Arquivos
0 Plataforma 2
1 Fundação 8
2 Contexto & Busca 2
3 Processador 1
4 Ação 6
5 Documentação de Entidades 1
6 Contextos 3
7 Histórico 2
8 Interface 4
9 Core 2
10 Serviços PDF e E-mail 2
TOTAL 29

📊 Arquitetura Detalhada

Fluxo Completo com PDF e E-mail

graph TB U[Usuário] --> MP[Message Processor] MP --> CD[Context Detector] CD --> SE[Search Engine] SE --> MA[Módulos Ação] MA --> EX[Executor] EX --> UI[Interface] UI --> H[Histórico] H --> DB[(IndexedDB)] subgraph Documentacao["Documentação de Entidades"] IE[IAEntidadeSearch] --> TS[TableSearch] IE --> AS[Analysis] IE --> IDB2[(IndexedDB)] end subgraph Fase10["Fase 10: Serviços"] PDF[IAOndeVouPDF] --> UP[Upload ☁️] PDF --> CARD[🎴 Card PDF] CARD --> VIEW[👁️ Visualizar] CARD --> DWN[⬇️ Download] CARD --> WPP[📱 WhatsApp] CARD --> LINK[🔗 Copiar Link] CARD --> EMAIL[📧 Enviar] EMAIL --> MAIL[IAEmail] MAIL --> MODAL[📬 Solicitar E-mail] MAIL --> SEND[Envio via Backend] MAIL --> FALLBACK[Fallback Mailto] end SE --> IE AS --> IE IE --> PDF

Filosofia do Sistema

  • 🔍 Localiza, não executa — IA encontra e explica, não modifica
  • 🧩 Especialização — Cada módulo faz UMA coisa e faz bem
  • 🔄 Reutilização — Componentes existentes são integrados, não duplicados
  • 📚 Documentação — Dados brutos → insights organizados
  • 🎴 Ações — 1 clique = PDF, e-mail, WhatsApp
  • 🛡️ Fallback — Nunca quebra, sempre resolve

📄 IAOndeVouPDF v1.0 — Sistema de Documentação Automática

🎴 Card Interativo — 6 Ações em 1 Clique

OndeVou

✅ Documento Gerado!

ondevou-ia-relatorio_20250212_174529_1234.pdf

👁️ VISUALIZAR ⬇️ BAIXAR 📱 COMPARTILHAR 🔗 COPIAR LINK 📧 E-MAIL ✖️ FECHAR

📋 Detalhamento das Ações

Ação Método Características
👁️ Visualizar window.open(url, '_blank') Abre em nova aba
⬇️ Download XHR + Blob + saveAs Forçado, nunca abre no navegador
📱 WhatsApp whatsappManager Reutiliza mesma aba
🔗 Copiar Link _copyToClipboard() 3 fallbacks
📧 E-mail IAEmail.enviarPDF() Integração com serviço

⚙️ API e Funcionalidades

📦 Singleton

// Única instância global window.getIAPDF = function() { if (!window._iaPDFInstance) { window._iaPDFInstance = new IAOndeVouPDF(); } return window._iaPDFInstance; }

🎯 Métodos Públicos

  • gerarPDF() — HTML → PDF + Upload
  • showPDFCard() — Exibe card com 6 ações
  • gerarNomeArquivo() — Gera nome único
// Uso completo const pdf = await getIAPDF().gerarPDF( document.getElementById('conteudo'), getIAPDF().gerarNomeArquivo('relatorio') ); // { url: 'https://...', paginas: 11, tamanho: 245000 } await getIAPDF().showPDFCard(pdf);

📧 IAEmail v1.0 — Serviço Independente de E-mail

📬 Modal de Solicitação

📧

Enviar por E-mail

ondevou-ia-relatorio.pdf

✉️ exemplo@dominio.com
📨 ENVIAR ✖️ CANCELAR

⚙️ API e Funcionalidades

📦 Singleton

window.getIAEmail = function() { if (!window._iaEmailInstance) { window._iaEmailInstance = new IAEmail(); } return window._iaEmailInstance.getAPI(); }

🎯 Métodos Públicos

  • enviarPDF(para, pdfInfo, opcoes) — Envia PDF por e-mail
  • solicitarEmail(contexto) — Modal para capturar e-mail
  • validarEmail(email) — Validação
const email = await getIAEmail().solicitarEmail({ titulo: 'Compartilhar relatório' }); if (email) { await getIAEmail().enviarPDF(email, { nome: 'relatorio.pdf', url: 'https://files.ondevou.com.br/...', paginas: 11 }); }

🔄 Fallback Inteligente

✅ Produção
  • Backend: /cgi-bin/enviar_email.py
  • Ação: recuperar_senha
🔄 Fallback
  • Link copiado
  • mailto: aberto
  • Zero erro visível

🔄 Fluxo de Funcionamento

sequenceDiagram participant U as Usuário participant MP as Message Processor participant CD as Context Detector participant SE as Search Engine participant IE as IAEntidadeSearch participant PDF as IAOndeVouPDF participant EMAIL as IAEmail participant UI as Interface U->>MP: "produtos" MP->>CD: Detecta contexto CD->>SE: Busca "produtos" SE->>IE: Tabela detectada IE->>IE: Coleta dados completos IE->>IE: Gera documentação IE-->>UI: HTML com 8 acordeões UI->>U: Documentação completa U->>PDF: Clique "Gerar PDF" PDF->>PDF: _gerarPDFInterno() PDF->>PDF: Upload files.ondevou.com.br PDF-->>U: 🎴 Card com 6 ações U->>PDF: Clique "Baixar" PDF->>PDF: _downloadPDF() via XHR+Blob PDF-->>U: ⬇️ Arquivo salvo U->>PDF: Clique "Compartilhar" PDF->>PDF: whatsappManager.open() PDF-->>U: 📱 WhatsApp (mesma aba) U->>PDF: Clique "Copiar Link" PDF->>PDF: _copyToClipboard() PDF-->>U: 🔗 Link copiado! U->>PDF: Clique "Enviar e-mail" PDF->>EMAIL: enviarPDF() EMAIL->>EMAIL: solicitarEmail() EMAIL-->>U: 📬 Modal U->>EMAIL: "cliente@email.com" EMAIL->>EMAIL: Valida e-mail EMAIL->>EMAIL: Tenta backend
🎯

1. Detecção

IAEntidadeSearch identifica a tabela e coleta 8 seções de informação

📄

2. Documentação

HTML completo com acordeões expandidos e métricas

🎴

3. Ações

Card PDF com 6 opções • 1 clique • 5 segundos

⚡ Módulos Principais

🧠

Core

  • IACore
  • IAMessageProcessor
  • IAContextDetector
🔍

Busca

  • IASearchEngine
  • IAIdentifyTable
  • 230+ sinônimos
📄

PDF

  • IAOndeVouPDF
  • gerarPDF()
  • showPDFCard()
📧

E-mail

  • IAEmail
  • enviarPDF()
  • solicitarEmail()
🏷️

Entidades

  • IAEntidadeSearch
  • 8 seções
🗄️

Banco

  • IADatabase
  • IndexedDB
🎨

Interface

  • IAInterface
  • IAChat
📊

Admin

  • IAAdminConsole
  • Observador

🎯 Contextos de Busca

🔍

Tudo

Busca completa em todos os sistemas

tudo:termo

📋

Menu

Rotinas e funcionalidades

menu:cadastro

🗃️

Tabela

Dados SQL e consultas

tabela:clientes

FAQ

Ajuda e como fazer

📱

App

Aplicativos disponíveis

app:erp

📊

Dados

Dados do usuário atual

🏷️ IAEntidadeSearch v1.0.0 — Documentação de Entidades

🎯

Objetivo

Centralizar todas as informações da tabela e sua entidade

🔄

Reutilização

Usa TableSearch existente, não duplica detecção

📊

Análise

8 seções com métricas automáticas

graph TB Q["Consulta"] --> TS[TableSearch] TS --> TM[Tabela Detectada] TM --> C1[Componente] TM --> C2[SQL] TM --> C3[OpenGraph] TM --> C4[Relacionadas] C1 --> D1[Dados] C2 --> D2[Estrutura] C3 --> D3[Metadados] C4 --> D4[Relacionamentos] D1 --> P[IAEntidadeSearch] D2 --> P D3 --> P D4 --> P P --> DOC[📄 8 Acordeões] DOC --> U[Usuário] DOC --> PDF[📄 Gerar PDF]
🔍 1. Detecção 🏷️ 2. Dados Entidade 🚀 3. Estrutura App 🏗️ 4. Estrutura Tabela 🔍 5. View SQL 📱 6. OpenGraph 🔗 7. Relacionadas ⚡ 8. Análise

🔍 IASearchEngine v1.0

Características

  • 11 métodos de matching inteligente
  • 230+ sinônimos embutidos
  • Cache inteligente com invalidação
  • Normalização automática

Exemplo de Sinônimos

{ "produtos": ["itens", "artigos", "mercadorias"], "clientes": ["compradores", "consumidores"], "veiculos_multas": ["multa veiculo", "infracao veiculo"] }

🎯 API Pública

📄 IAOndeVouPDF

// Singleton window.getIAPDF() // Geração gerarPDF(elementoHTML, nomeArquivo, options) gerarNomeArquivo(prefixo = 'documento') // Card showPDFCard(resultado)

📧 IAEmail

// Singleton window.getIAEmail() // E-mail enviarPDF(para, pdfInfo, opcoes) solicitarEmail(contexto) validarEmail(email)

🏷️ IAEntidadeSearch

window.criarContextoEntidade(coreInstance) window.testarEntidade("multas")

🚀 Core

initFloatingIA(options) criarIAChatNoSlide(containerId, options) sendToChatIA(message) toggleChatIA(show)

🎨 Interface

💬

Floating Chat

Chat flutuante global • Estado persistente

📑

Slide Embebido

IA integrada em slides • Contexto específico

🏷️

Documentação

8 acordeões • Métricas • Controles

🎴

Card PDF

6 ações • 1 clique • Modal responsivo

📬

Modal E-mail

Solicitação • Validação • Fallback

🔔

Toasts

Feedback visual • 4 tipos

🛠️ Debug e Troubleshooting

Verificação Rápida

// Verificar PDF console.log('PDF Service:', !!window.getIAPDF); // Verificar E-mail console.log('Email Service:', !!window.getIAEmail); // Status completo console.log('PDF:', getIAPDF().version); console.log('Email:', getIAEmail().version);

Problemas Comuns

  • 📄 PDF abre no navegador: Use XHR + Blob + saveAs
  • 📱 WhatsApp abre nova aba: Verifique whatsappManager
  • 📧 E-mail erro 500: Fallback ativado!

🤖 Como Usar Esta Documentação com IA

Copie TODO este HTML e cole no prompt de IA (ChatGPT, Claude, etc.)

// "[COLE TODO O HTML DA DOCUMENTAÇÃO AQUI]" // "Baseado na documentação, como implementar um novo serviço de SMS seguindo o padrão do IAEmail?"

A IA terá contexto completo para sugerir implementações compatíveis com sua arquitetura de 11 fases.

🚀 CASE IMPLEMENTADO: Rotas, Trajetos e Pontos

🎯 Visão Geral do Projeto

App: 0044 - Rotas

Objetivo: Criar subsistema para gerenciar múltiplos trajetos por rota e seus respectivos pontos georreferenciados

Tempo total: ~1.5 horas

📋 1. Estrutura de Dados

-- Tabelas criadas rotas_trajetos (id, id_rota, nome) rotas_trajetos_pontos (id, id_trajeto, latitude, longitude, endereco, ordem)

🆔 2. Rotinas Criadas

ID Nome
734 Trajetos de rotas
735 Pontos dos trajetos

📁 3. Arquivos Criados

  • ondevou-component-addtable-rotas_trajetos.js
  • ondevou-component-addtable-rotas_trajetos_pontos.js
  • ondevou-app-0044.js

⚙️ 4. Funções Auxiliares

addInputParametersGetDataRotasTrajetos() addInputParametersGetDataRotasTrajetosPontos()

🗺️ 5. Exemplo Prático (João Pessoa)

ROTA: "Distrito dos Mecânicos → Cabedelo"

TRAJETO 1 - Epitácio: P1: Distrito, P2: Av. Epitácio, P3: Tambaú, P4: Cabedelo

✅ 6. Funcionalidades Automáticas

  • ✓ Filtro por rota na tela de trajetos
  • ✓ Filtro por trajeto na tela de pontos
  • ✓ Botão 'map' nos controls

📊 7. Resultados

2
Novas tabelas

🎓 8. Lições Aprendidas

  • Latitude/Longitude: NUMERIC(25,20) readonly
  • Ordem: INTEGER para reordenação

🔄 Padrão de Sincronização em Cascata

🎯 Offline First com Resolução de Dependências

IDs negativos para novos registros, resolução automática de dependências (avô → pai → filho).

-101

👑 AVÔ (Rota)

-201

👨 PAI (Trajeto)

-301

👶 FILHO (Ponto)

📝 Histórico de Alterações

// ====================================================================== // CHANGELOG - ONDEVOU IA // ====================================================================== 2026-03-14: 📚 Documentação refatorada • ✅ Uso do ondevou-doc.css com prefixo doc- • 🎯 Padrão unificado com Dashboard 2026-02-12: 🚀 v2.0.0 - Fase 10: Serviços PDF e E-mail • 📄 IAOndeVouPDF v1.0 • 📧 IAEmail v1.0 2026-02-14: 🏆 Documentação da Propriedade Intelectual • Marca ONDEVOU® registrada no INPI (Processo 908765967) 2026-02-24: 🚀 CASE Rotas, Trajetos e Pontos • App 0044 implementado 2026-03-07: 🔄 Padrão de Sincronização em Cascata • IDs negativos, resolução de dependências