Esta es la documentación completa OpsIQ. Configurar el producto, ejecutar soporte, configurar AI, gestionar CRM, instalar el widget, construir conectores, llamar al REST API, recibir webhooks, aplicaciones de mercado de paquetes y operar implementaciones auto-anfitrionas.
CtrlK
Buscar todos los temas de OpsIQSin sección coincidente
Guía del clienteGuía de administradorGuía para desarrolladoresReferencia CRMSDK de ConectorAPI RESTAutoalojado
Viaje del visitante detectado
Rastrea sesiones, países, páginas, leads, conversiones e intenciones de soporte en tiempo real.
Respuesta de IA redactada
OpsIQ puede ayudar a redactar respuestas a tickets, respuestas de chat, resúmenes y avisos a clientes.
Acción de webhook lista
Conecta acciones de plataforma aprobadas a desencadenadores seguros con confirmación e historial de auditoría.
Alcance
Alcance de este manual
Todo OpsIQ lo hace, en un lugar: cómo funciona cada pantalla, cómo conectar sus propios sistemas y cómo construir sobre él. Comience a cualquier lado, las secciones siguen el mismo orden que la barra lateral de administración.
AlcanceEl manual está organizado en torno al producto OpsIQ, siguiendo el mismo orden que la barra lateral de administración.
Guía de campo de Portal Studio
Utilice la guía de administrador y desarrollador dedicada para arquitectura del portal, páginas, componentes, vista previa, Centro de ayuda, identidad, SCIM, versiones reguladas, extensiones, migraciones y certificación.
Cada pantalla en el panel de administración: análisis, chat en vivo, tickets, CRM, base de conocimientos, inteligencia del sitio, promociones y el portal del cliente. Qué hace cada página, qué significan los números y qué hacer cuando se ven mal.
Conecte sus sistemas
El widget web, buzones de correo electrónico, juegos web entrantes y outbound, y la biblioteca del conector para plataformas comoShopify, WooCommerce, WHMCS, Zendesk, Stripe, SlackyGmail.
Construye tu propio
El Constructor de conectores para conetores sin código, Acciones y disparadores si prefiere no usar conecteurs en absoluto, y el REST API con cada acción, alcance y código de error.
Cómo operarlo
Roles y permisos, seguridad, cron, diagnóstico, copias de seguridad e implementación hospedada y autohospedada.
Por dónde empezar
1
Si corres OpsIQ día a día
Lee las secciones de la pantalla en orden de barra lateral, cada una abre con lo que es la página para que puedas detener tan pronto como tengas lo que necesitas.
2
Si usted lo administra
Añade Configuración, Seguridad, Diagnóstico, Cron y Producción: son las secciones que deciden si todo lo demás sigue funcionando.
3
Si estás creando una integración
Comience en Connectors, luego el Constructor de conectores, después el RESTAPIy webhooks. Lee esos en orden y habrás visto todos los caminosOpsIQpuede hablar con otro sistema.
💡
Dos cosas cambian lo que ves. Permisos ocultan páginas que tu papel no puede abrir, por lo que una sección descrita aquí puede faltar en la barra lateral. Pida a un administrador que revise su rol. Y los conectores llevan una etiqueta de madurez de Producción, Beta, Vista previa o Plantilla; el edificio de ejecución y su manifiesto de conexión son la autoridad en la cual uno tiene, no esta página.
Comience aquí
Lo que OpsIQ hace por su negocio
OpsIQ Reemplaza sus análisis, chat en vivo, servicio de asistencia técnica, CRM, kit de herramientas SEO, middleware de integración y plataforma para desarrolladores con un único administrador unificado donde cada herramienta comparte el mismo contexto del cliente. En lugar de juntarlos todos juntos. 8-12 Productos SaaS separados, usted instala OpsIQ Una sola vez y operar todo desde una pantalla.
La plataforma deOpsIQ es una plataforma con un contexto de cliente compartido, cada herramienta alimenta y está alimentado por el mismo cerebro AI.
Todo OpsIQ hace · en detalle
Análisis de sitios web e inteligencia de visitantes
Seguimiento de visitantes en tiempo real
Cada página carga, clic, desplazamiento y evento de navegación se captura en tiempo real. Vea quién está en su sitio ahora mismo, qué páginas están viendo, cuánto tiempo pasan, y de dónde vienen, todo sin cookies de terceros.
Registro de visitantes y sesiones
Historial completo de cada visitante con dispositivo, navegador, sistema operativo, país, ciudad, referenciador, parámetros UTM, página de destino y resolución de identidad. Las sesiones agrupan las vistas de páginas en trayectos para que pueda ver la ruta completa que toma un visitante.
Repetición de sesión
Reproducción de estilo timeline de sesiones de visitantes capturadas. Vea exactamente lo que hicieron los usuarios: movimientos del ratón, clics, desplazamientos, transiciones de página y interacciones de formularios. Úselo para diagnosticar problemas UX, entender puntos de desembarque y verificar flujos de conversión.
Transmisión en vivo
Obtenga un flujo en tiempo real de la actividad del visitante a medida que ocurre. Vea las vistas de página, los inicios de chat, los envíos de formularios y las señales de intención actualizadas cada pocos segundos. Filtre por país, dispositivo o referencia para centrarse en segmentos específicos de tráfico.
Páginas principales
Páginas clasificadas por visitas, tiempo de interacción, tasa de rebote, conversiones y actividad de soporte. Identifica tu contenido con mejor rendimiento y las páginas que necesitan mejoras.
Inteligencia geográfica
Desglose por país, ciudad y región con mapas; distribución de dispositivos y navegadores, análisis de fuentes de tráfico, seguimiento de referencias de motores de búsqueda e información sobre penetración en el mercado.
Embudo de intención
Seguimiento de señales de intención del visitante (visitas de página, repetidas declaraciones, patrones de navegación de documentación y interacciones de apoyo) para identificar a los visitantes que son propensos a comprar, churn o necesitan ayuda.
Experimentos A/B
Ejecute pruebas divididas en su sitio web directamente desde OpsIQ. Cree variantes, establezca la asignación de tráfico, defina objetivos de conversión y mida la significancia estadística.
JavaScript Seguimiento de errores
Capture automáticamente los errores JavaScript del lado cliente de su sitio web. Vea mensajes de error, trazas de pila, navegadores afectados, conteos de frecuencia y qué páginas los desencadenan. Depurar problemas de interfaz sin monitoreo de errores separado.
Registro de eventos
Cada evento rastreado (visitas de página, eventos personalizados, interacciones de chat, presentaciones de formularios, compras) en un registro filtrable y búsquedable con metadatos completos.
Ventas y conversiones
Realice un seguimiento de los pedidos, ingresos, reembolsos, renovaciones de suscripciones y atribuya las conversiones a fuentes de tráfico, campañas y trayectos de visitantes. Paneles de control de ingresos con comparación de períodos y análisis de tendencias.
Clientes potenciales
Visitas de alta intensidad identificadas por patrones de comportamiento. Los resultados se basan en visitas de página, tiempo en el sitio, frecuencia de retorno, interacciones de apoyo y señales personalizadas.CRMoleoducto.
Inteligencia del sitio (SEO y análisis de contenido)
Rastreos de sitios
Rastreo automatizado de todo su sitio web para descubrir páginas, detectar enlaces rotos, encontrar metaetiquetas que faltan, comprobar el texto alternativo de la imagen, validar URLs canónico y mapear la estructura de su sitio. Programe rastreos para ejecutarlos diariamente, semanalmente o bajo demanda.
Auditoría SEO técnica
Análisis técnico completo: puntuaciones de velocidad de página, capacidad de respuesta móvil, Core Web Vitals, estado del certificado SSL, cadenas de redireccionamiento, detección de contenido duplicado, análisis de profundidad de rastreo y validación de datos estructurados.
Auditoría de contenido
Evalúa cada página para la calidad del contenido, el recuento de palabras, la puntuación de legibilidad, la densidad de las palabras clave, la estructura de los encabezados, la proporción de enlaces internos/externos y la frescura.
Búsqueda impulsada por IA
Haz preguntas en lenguaje natural sobre tu contenido y obtén respuestas sintetizadas por IA con referencias a las páginas de origen.
Seguimiento de rango SERP
Monitorea tus posiciones en los motores de búsqueda para las palabras clave objetivo en Google y otros motores, realiza un seguimiento de los cambios de posición a lo largo del tiempo, compara con la competencia y ve qué páginas se clasifican para qué términos.
Investigación de palabras clave
Descubre oportunidades de palabras clave en función de tu contenido, análisis de la competencia y datos del volumen de búsquedas. Obtén sugerencias para nuevos temas de contenido, variaciones de cola larga y objetivos de optimización de contenido.
Análisis de backlinks
Monitorea tu perfil de enlaces entrantes: mira qué sitios enlazan a ti, realiza un seguimiento de los enlaces nuevos y perdidos, analiza la distribución del texto de anclaje e identifica oportunidades para crear enlaces.
SEO local
Para empresas con ubicaciones físicas: visualiza tu visibilidad en la búsqueda local a través de una cuadrícula geográfica y observa cómo varían tus posiciones según la ubicación, la distancia desde tu empresa y la intención de búsquedas.
Sincronización del perfil de Google Business
Conecta tu perfil de Google Business a.OpsIQ. Sincroniza opiniones, publicaciones, preguntas y respuestas, fotos e información de la empresa.OpsIQ. Responda a las reseñas, publique publicaciones y supervise los datos.
visualHtml
Informes automatizados de SEO y análisis generados según su programación (diaria, semanal, mensual). Los informes incluyen cambios en el ranking, tendencias del tráfico, problemas técnicos encontrados y rendimiento del contenido.
Soporte impulsado por IA
Chat de IA del cliente
La IA responde a las preguntas de los clientes en su sitio web. 24/7 Crea y gestiona tu propia formación personalizada utilizando tu base de conocimientos, los datos de la plataforma conectada (pedidos, cuentas, suscripciones) e instrucciones de formación personalizadas.Anthropic), GPT-4o (OpenAI), Gemini (Google), y Grok (xAI).
Asistente de IA
Un copiloto de IA dentro del panel de administración que te ayuda a escribir respuestas a tickets, redactar comunicaciones con los clientes, analizar tendencias de soporte, buscar datos de clientes en plataformas conectadas y ejecutar acciones a través del sistema de conectores.
Base de conocimiento de IA
La AI está basada en sus artículos de base de conocimientos, entradas FAQ, documentación de productos y datos de plataforma conectados. No alucina. Responde a su información real del negocio o escala cuando es incierto.
Auto-entrega a los seres humanos
Cuando la IA no puede resolver una pregunta, detecta frustración o el cliente pide un humano, automáticamente se pasa a su equipo con todo el contexto de la conversación. Rechazo configurable/tiempo límite-revertir automáticamente de nuevo a la IA.
Indicaciones de entrenamiento de IA
Escriba mensajes de instrucciones separados para la IA dirigida al cliente y la IA orientada al administrador. Controle el tono, los límites, las reglas de escalamiento, los temas prohibidos y el comportamiento específico del negocio.
Historial y auditoría de IA
Cada conversación de IA se registra con todos los detalles de solicitud/respuesta, uso de tokens, seguimiento de costos, proveedor utilizado y versión del modelo. Revise las conversaciones para identificar lagunas en el entrenamiento y mejorar la precisión de la IA.
Perspectivas de IA
Análisis automatizado de los patrones de conversación de IA: vea las preguntas más comunes, las tasas de resolución, la frecuencia de entrega, la satisfacción del cliente por tema y las áreas en las que la IA necesita un mejor entrenamiento.
Configuración de AI por espacio de trabajo
Cada sitio/espacio de trabajo conectado puede usar su propio proveedor, modelo, temperatura, presupuesto de tokens y instrucciones de entrenamiento de IA. Una empresa SaaS puede utilizar Claude para el producto principal y GPT-4o para una marca secundaria.
IA gestionada y BYOK
Dos modos AI: Managed AI (incluido en su plan, no API llave necesaria) o traer su propia clave (utiliza tu propio OpenAI/Anthropic/Google/xAI API clave para el control completo sobre la selección de modelos y los costos). Ambos son de primera clase, cada característica funciona con cualquier modo.
Presupuestos de tokens de IA y controles de costos
Establezca presupuestos mensuales de token, límites por conversación y alertas de saldo bajo. Realice un seguimiento del gasto por proveedor, por espacio de trabajo y por conversaciones.
Tickets y helpdesk
Sistema de tickets nativo
Centro de asistencia completo con departamentos, prioridades (baja/media/alta/urgente), estados, seguimiento del SLA, notas internas, respuestas de los clientes, archivos adjuntos y conversaciones en hilo.
Triage de IA y respuesta automática
AI recorta automáticamente los boletos entrantes por departamento y prioridad. Habilitar auto-replicación para departamentos seguros. La IA redacta y envía una respuesta después de un retraso configurable (por defecto: 2 minutos) para que los humanos puedan intervenir primero.
Ingestión de correo electrónico
Conecte un buzón (Gmail, IMAP o específico del proveedor) para crear tickets automáticamente a partir de los correos electrónicos entrantes. Las respuestas a los correo-e de notificación de tickets actualizan el hilo del ticket.
Insertar portal de entradas
Inserte un portal de tickets orientado al cliente en su sitio web. Los clientes pueden enviar entradas, ver su historia, responder a los boletos abiertos y comprobar el estado de la marca a su diseño.
Fusión de tickets
Combine los tickets duplicados en un único hilo. Los tickets combinados muestran [Merged] (Fusionado) en la línea de asunto y todo el historial de conversaciones se conserva en el ticket restante.
Volver a AI
Después de que un agente humano se haga cargo de un ticket, utilice "Volver a la IA" para permitir que la IA reanude la respuesta automática en ese ticket. Útil cuando se resuelve la parte requerida por el ser humano pero el cliente tiene preguntas de seguimiento que la AI puede manejar.
Bandeja de entrada copiloto
El copiloto sugiere respuestas, resume el historial de conversaciones, recomienda asignaciones por prioridad o departamento y puede ejecutar acciones en plataformas conectadas.
Chat y soporte en tiempo real
Bandeja de entrada del chat
Chat con el cliente en tiempo real gestionado desde una bandeja de entrada unificada. Vea todas las conversaciones activas, la identidad del cliente, el historial de conversaciones y las sugerencias de IA.
Reglas de chat proactivas
Disparar mensajes de chat basados en el comportamiento del visitante: tiempo en la página, URL Ejemplo: mostrar un mensaje de ayuda después de que el usuario haya visitado la página, profundidad de desplazamiento, recuento de visitas de retorno, intento de salida o eventos personalizados. 60 segundos en la página de precios.
Widget de chat
Un widget de chat personalizable incrustado en su sitio web. Admite chat con IA, chat con agentes en vivo, envío de tickets, búsqueda en la base de conocimientos e identidad del visitante.
Encuestas CSAT
Recopila calificaciones de satisfacción del cliente después de las interacciones con el chat y los tickets. Diseña encuestas con tus propias preguntas, escalas de calificación e indicaciones de seguimiento; los resultados se incorporan al rendimiento del equipo y a la inteligencia artificial.
Encuesta por correo electrónico post-chat
Después de que un chat termina, los visitantes con un correo electrónico conocido pueden recibir un mensaje de marca con un resumen de IA de lo que se manejó y un clic "¿Fue fácil?" Sí / No Una vez por hilo, enlaces firmados de uso único, cada envío registrado y el resultado aterriza en la página de comentarios como su propia señal junto a las estrellas del chat.
Bucle de identidad de retroalimentación
Cada elemento de retroalimentación que lleva una persona les muestra: nombre, correo electrónico, un clic a través de su viaje completo del cliente y contacto CRM, y un solo clic en el correo electrónico o respuestas de borrador de IA basadas en su historia real.
Escribir AI
Asistente de escritura con IA independiente para redactar borradores de correo electrónico, respuestas a tickets, anuncios y comunicaciones con los clientes. Usa su propio prompt (no el cerebro del chat) para la escritura profesional de negocios.
CRM centrado en IA
Centro de Comando CRM
Una sola pantalla que muestra todo el estado de su CRM: valor del embudo, velocidad de los tratos, próximas tareas, tratos en riesgo, actividad del agente y recomendaciones de IA. La página principal de CRM es su punto de partida diario.
Contactos y empresas
Gestiona los contactos de tus clientes con perfiles completos: nombre, correo electrónico, teléfono, empresa, etiquetas, fase del ciclo de vida, historial de conversaciones, historiales de tickets, historials de compras y campos personalizados.
Tratos y tablero de la tubería
Tablero de negocios visual estilo Kanban con etapas personalizables. Arrastre los acuerdos entre las etapas, establezca valores, asigne propietarios, realice un seguimiento de las fechas de cierre y vea el valor del canal en cada etapa.
Coaching de trato con IA
La IA analiza cada trato y proporciona entrenamiento: señales de riesgo (se ha quedado callado, se mencionó a un competidor, preocupaciones presupuestarias), recomendaciones de la mejor acción siguiente, probabilidad de ganar y tiempo sugerido para el seguimiento.
Previsión e informes
Los informes incluyen el embudo por etapa, por propietario, por fuente, tasas de conversión, tamaño promedio del trato y duración del ciclo de ventas.
Agente de prospección (SDR)
Prospectación con tecnología de IA que identifica clientes potenciales a partir de los datos de sus visitantes, señales de leads y actividad en plataformas conectadas; sugiere objetivos de alcance, redacta mensajes iniciales y califica la calidad del lead.
Secuencias de seguimiento
Secuencias de seguimiento automatizadas en varios pasos: correo electrónico, espera, correo electrónico y respuesta de verificación Definir secuencias para nuevos clientes potenciales, negocios estancados, comprobaciones posteriores a la compra y campañas de reengagement.
Ciclo de vida y retención
Realice un seguimiento de las etapas del ciclo de vida del cliente (lead, prospecto, cliente, churned) con transiciones automatizadas. El agente de retención monitorea las señales de churn y sugiere intervenciones.
Agente de administrador de datos
Agente de IA que limpia y enriquece continuamente sus datos CRM: elimina contactos duplicados, rellena campos faltantes, valida correos electrónicos, estandariza nombres de compañías e indica registros obsoletos.
Crear mi CRM
Configuración de CRM en lenguaje natural: dígale a la IA cómo se ve su proceso de ventas y construirá sus etapas del canal, campos personalizados, plantillas de tratos y reglas de automatización.
Comprobación de salud CRM
Auditoría automatizada de la calidad de los datos de CRM: contactos duplicados, negocios sin pasos siguientes, canales obsoletos, información de contacto faltante y puntuación de integridad de datos.
Dial de confianza
Control de autonomía en tres niveles para cada agente de IA de CRM: piloto automático (la IA actúa de forma independiente), copiloto (la AI sugiere, el ser humano aprueba) y manual (solo la IA observa).
Cuatro agentes de IA
El CRM ejecuta cuatro agentes de IA especializados: Steward (calidad de los datos), SDR (prospección), Retention (prevención del abandono) y Analyst (informes e información). Cada agente tiene su propia configuración de marcación de confianza.
Conectores e integraciones
Conectores pre-construidos
Conectores listos para usarShopify, WooCommerce, BigCommerce, Magento2, PrestaShop, OpenCart, osCommerce,WordPress, WHMCS, Zendesk, Stripe, Amazon SES, Postmark, Resend, SendGrid, Mailgun,Gmail, IMAP, Slack, y Google Business Profile. Cada conector aporta acciones de IA específicas para plataformas, conocimientos y sincronización de datos.
Constructor de Conectores
Construir conectores personalizados para cualquier plataforma, sin código, con ayuda de AI o código completo. El constructor admite REST y GraphQL APIs, OAuth flujo de código de autorización, registro automático webhook con esquemas Stripe y simple firma, paginación (offset, página, cursor, y link-header), lista/error transformados, contexto multiacción y embalaje del mercado.
Creación de conectores asistida por IA
El ConnectorBuilderAI te ayuda a crear conectores: describe lo que quieres y sugiere acciones, escribe controladores de solicitudes y asigna respuestas API. Maneja la autenticación, paginación y manejo de errores automáticamente.
OAuth flujo para cualquier conector
In-app genérico OAuth Soporte para PKCE, administración de estado con alcance de sitio y actualización automática de tokens. Los conectores definen su flujo de autorización OAuth parámetros y OpsIQ Maneja el flujo.
Buses de capacidad (extensión a toda la plataforma)
Los conectores no solo añaden acciones de plataforma. Pueden potenciar funciones centrales a través de la capacidad "buses". Un conector declara una capacidad (calendario, enriquecimiento, esign en CRM; local_listing, rank_data in Site Intelligence; web_analytics in Analytics; payment_provider in Payments; email_sync in Mailbox; video_meeting in Comms) e implementa su pequeño método set; OpsIQ lo descubre a través de CapabilityRegistry y lo conecta en la UI, el cliente 360 timeline, y las acciones de AI. Varios conectores pueden ofrecer la misma capacidad sin bloqueo. Ver conectores/PLATFORM_CONNECTORS.md.
Preinstalado vs. nivel de mercado
Los conectores pre-instalados (conexores/) están fuera de la caja, se mantienen inclinados a sólo la referencia sin llave y el proveedor más utilizado por capacidad (por ejemplo Google Calendar, Gmail, Google Business Profile). Los conectors del mercado (marketplace_connectors/) son descubiertas pero inertes hasta que estén instalados, por ejemplo Microsoft 365 Calendario, Outlook, DocuSign, Stripe, GA4, SerpApi, Zoom. Cada puente supera una lista de mercado para que la UI y la AI puedan "instalar desde el mercado" (notificar a instalar) cuando una capacidad no tiene proveedor listo, nunca un botón roto.
Mercado de conectores
Publica tus conectores en el. OpsIQ Paquete de conectores con perfil.json, knowledge.json, workflow_recipes.json Marketplace admite conectores gratuitos y de pago con facturación por múltiples orígenes.
Firma de conector
Todos los conectores están firmados criptográficamente para verificar la integridad y se comprueba su firma en el momento de la instalación. Utilice la herramienta resign_all_connectors para volver a firmar después de las actualizaciones.
SmartLookup
Sistema declarativo de coincidencia difusa para acciones del conector. OpsIQ Ejemplo: find_country("germ") hace coincidir Alemania con, y España con. 88.9% Confianza.
Contratos de acción
El general OpsIQ API Publicaciones 1,312 Los paquetes de conectores declaran sus propias acciones del proveedor con parámetros tipográficos, requisitos de autenticación, reglas de paginación y transformaciones de respuesta a través del ActionExecutor unificado.
Recetas de conector
Las recetas de flujos de trabajo predefinidas combinan varias acciones del conector en flujos comunes de negocio, por ejemplo: "Cuando llegue un nuevo pedido a Shopify, crea un ticket, actualiza el CRM y envía una notificación de Slack".
Sincronización de conocimiento
Los conectores declaran temas de conocimiento que se sincronizan con la base de coñecementos da IA. Artículos de ayuda específicos para plataforma, guías de configuración y pasos de solución de problemas están disponibles automáticamente para la IA sin necesidad de entrada manual de coneixements.
Plataforma de desarrollador
API REST
A named JSON API Cubre cada administrador registrado.JSON Operación, conAPI-autenticación de clave, aislamiento del espacio de trabajo, ámbitos, limitación de velocidad, escrituras idempotentes, OpenAPI y una colección Postman generada.
Webhooks
Webhooks salientes para todos los eventos principales: pedidos, facturas, suscripciones, tickets, chats, clientes potenciales, registros de usuarios y abandono del carrito.Entrega asíncrona a través de la cola de trabajos, reintento exponencial de retroceso, protección SSRF y desactivación automática después de. 15 Fallos consecutivos.
Firma de webhook
Cada webhook saliente está firmado con HMAC-SHA256. Verifica las firmas en el extremo receptor para asegurar la autenticidad del webhookud estable para un procesamiento idempotente.
WidgetSDK
JavaScript SDK Instalar recetas para React, Vue, Next.js, Visual Composer y otros lenguajes de programación para el widget de seguimiento con resolución de identidades, seguimiento personalizado de eventos, control programático del chat y configuración específica de la página. WordPress, Shopify, y estática HTML.
Plugins y SDK
SDKs lado del servidor y plugins para marcos comunes.WordPressplugin,WHMCSmódulo y bibliotecas de integración PHP/Node.js genéricas.
Eventos API
Envía eventos personalizados a OpsIQ desde tu backend: compras, registros, uso de funciones, errores o cualquier evento comercial. Los eventos aparecen en la línea de tiempo del visitante y se alimentan al contexto analítico y de IA.
Libro de cocina Triggers
Cree flujos de trabajo automatizados activados por eventos: nuevo ticket, inicio del chat, identificación de visitante, cambio en la etapa de negocio o evento personalizado Los desencadenadores ejecutan acciones de conector, envían webhooks, actualizan registros o notifican a su equipo.
API constructor
VisualAPIy constructor webhook dentro del administrador. Configurar puntos finales, solicitudes de prueba, respuestas de inspección, e integraciones de depuración sin dejarOpsIQ.
Equipo y administración
Control de acceso basado en roles
Tres roles: Propietario (acceso completo, facturación, zona de peligro), Administrador completo (todas las operaciones excepto la facturación y la zona de riesgo) y Agente (solo los departamentos asignados, sin acceso a la configuración).
Panel de rendimiento del equipo
Panel de control solo para propietarios y administradores completos que muestra los tiempos de resolución, la distribución de carga de trabajo, la profundidad del manejo, el desglose de canales, el análisis de tendencias, el cumplimiento de SLA, CSAT por agente, las tasas de reapertura, los agregados de equipos y las horas más ocupadas.
Presencia administrativa y seguimiento en línea
Widget de quién está en línea en tiempo real en la navegación del administrador.60-segundo ping, 300-segunda extensión, auto-poda después de 120 Vea qué administradores están activos en este momento y en qué páginas.
Configuración por espacio de trabajo
Cada sitio conectado (espacio de trabajo) puede tener su propia configuración de IA, ajustes del conector, departamentos de tickets, marca y reglas operativas. Los valores predeterminados globales se aplican en cascada a los espacios de trabajo que no los anulan.
Gestión de múltiples sitios
Administra varios sitios web desde un único administrador de OpsIQ. Cada sitio tiene su propio fragmento de seguimiento, datos de visitantes y configuración. Cambia entre los sitios desde la navegación del administrador.
Sistema de plantillas de correo electrónico
Plantillas de correo electrónico basadas en el registro para todas las comunicaciones automatizadas: notificaciones de tickets, transcripciones de chat, correos electrónicos de bienvenida, restablecimiento de contraseñas y alertas del sistema. HTML Plantillas con vista previa en vivo, chips variables ({{customer_name}}, {{ticket_id}}), y el control de diseño global.
Importación y exportación
Importe contactos, tickets y artículos de conocimiento desde CSV/JSON. Exporte datos de visitantes, informes analíticos y registros CRM. Portabilidad de datos para migración entre sistemas.
Seguridad, cumplimiento y operaciones
Empresa SSO
OIDC (OpenID Conectar) inicio de sesión único con tiempo de ejecución completo: descubrimiento, autorización, devolución de llamadas, verificación de firma JWKS, información del usuario, listado de permisos de dominio, aprovisionamiento JIT y guardias de estado. SAML Soporte de configuración.
GDPR y cumplimiento de datos
Gestión integrada de solicitudes de acceso del sujeto de datos (DSAR): exporte y elimine los datos de clientes en todos los sistemas. Borrar datos a nivel de contacto que cubren sesiones, tickets, chats, registros de CRM y registros por correo electrónico.
IP bloqueo y protección contra fuerza bruta
Bloque específico IPs Bloqueo automático después de intentos fallidos de inicio de sesión configurables. Registro de inicios de sesión fallidos con IP, marca de tiempo y agente de usuario.
HSTS y encabezados de seguridad
HTTP Strict Transport Security, encabezados de directiva de permisos y configuración segura de cookies Las implementaciones autohospedadas pueden agregar encabezas CSP a través de la configuración del servidor.
Fortalecimiento de webhook saliente
SSRF guard bloquea webhooks a privado/metadatos IP La entrega asíncrona evita que los puntos finales lentos bloqueen su aplicación. Desactivar automáticamente después de 15 Los fallos consecutivos evitan el desperdicio de recursos en puntos finales muertos.
Aislamiento del espacio de trabajo
Aislamiento estricto de datos entre espacios de trabajo. Los visitantes, los tickets, los chats, los registros de CRM y las conversaciones de IA se incluyen en su espacio de trabajo, lo que evita fugas de datos en el nivel de consulta.
Gestión del ciclo de facturación
Soporte para ciclos de facturación mensuales, trimestrales, semestrales, anuales, bienales y de por vida. Normalización de divisas para pasarelas multidivisa. Conversión de divisa al recibir el pago para obtener informes precisos sobre los ingresos.
Cron y automatización programada
Sistema cron integrado para tareas programadas: generación de informes, limpieza de datos, renovaciones de suscripciones, actualizaciones de entrenamiento de IA, sincronizaciones de conectores y reintentos de webhook.
Políticas de retención de datos
Configure el tiempo que se conservan las sesiones de visitantes, transcripciones de chats, historial de conversaciones con IA y registros de eventos. Limpieza automática de datos obsoletos para administrar el almacenamiento y cumplir con las políticas de retención.
Diagnóstico y salud
Panel de control del estado del sistema que muestra el estado de cron, la conectividad de base de datos, el estado del proveedor de IA, el funcionamiento del conector, las tasas de entrega de webhook y el uso del almacenamiento.
Para quién es OpsIQ
Tiendas de comercio electrónico
Tiendas
Realice un seguimiento de cada visitante desde el momento en que llega hasta la compra. Deje que la IA responda "¿Dónde está mi pedido?" utilizando datos Shopify/WooCommerce/BigCommerce en tiempo real. Administre tickets de soporte con respuesta automática de AI. Ejecute una canalización de negocios para clientes potenciales al por mayor y B2B. Atribuya ingresos a fuentes de tráfico y campañas.
Empresas de SaaS y software
Software como servicio
Supervise los registros de prueba y la adopción de funciones con la reproducción de sesiones. Realice un seguimiento de qué páginas de documentación se convierten. API Administre los ingresos por suscripciones y las ofertas de expansión en el CRM. Conecte su plataforma de facturación (Stripe, WHMCS Utilice el agente del ciclo de vida de CRM para detectar y prevenir la pérdida de clientes.
Agencias y autónomos
Agencia
Ofrezca análisis de marca blanca y portales de soporte a los clientes. Haga un seguimiento de las oportunidades en varios sitios de clientes desde un administrador. Utilice el canal CRM para gestionar prospectos y oportunidades de proyectos. Cree conectores personalizados para plataformas de clientes mediante Connector Builder. Genere informes SEO de marca con Site Intelligence.
Hosting e infraestructura
Alojamiento
Deep WHMCS Integración con. 80+ Acciones de IA para búsqueda de pedidos, gestión de servicios, DNS Respuesta automática a preguntas comunes de hosting mediante artículos de la base de conocimiento. Realice un seguimiento del compromiso de la página de estado del servidor. Administre tickets de soporte técnico con clasificación por inteligencia artificial.
Empresas con mucho apoyo
Soporte
Deflect 40-70% Elimine las preguntas repetitivas con el chat de IA basado en su base de conocimientos. Enrute los tickets al departamento correcto con la clasificación de AI. Realice un seguimiento del rendimiento del equipo con tiempos de resolución, cumplimiento de SLA y CSAT por agente.
Equipos de marketing y SEO
Comercialización
Suite completa de inteligencia del sitio: rastreos, auditorías técnicas de SEO, análisis de contenido, seguimiento de posicionamiento en SERP, investigación de palabras clave, monitoreo de enlaces de retorno y cuadrícula local de SEO. Gestión de perfiles de Google Business. Informes programados de marca blanca para clientes. Prueba A / B integrada en el widget de seguimiento.
Fundadores individuales y equipos pequeños
Inicios
Comience con el seguimiento y chat, libre de añadir. A continuación, agregue entradas cuando obtenga volumen de soporte. Encienda la CRM cuando empiece a vender. Conecte plataformas mientras las adopta. OpsIQ escalas de una persona haciendo todo a una 50- Equipo de operaciones de persona con RBAC, departamentos y seguimiento del desempeño por agente.
Empresa y multimarca
Empresa
Acerca de Enterprise SSO Con OIDC para autenticación centralizada. Aislamiento de múltiples espacios de trabajo para marcas o divisiones separadas. Configuración de IA por espacio de trabajo con diferentes proveedores y modelos. Desarrollo de conectores personalizados con distribución en el mercado. GDPR Herramientas de cumplimiento y políticas de retención de datos.
Lo que OpsIQ reemplaza
Google Analytics + Hotjar y Plausible
Análisis completo del sitio web con seguimiento de visitantes, reproducción de sesión, rankings de páginas, geo inteligencia, embudos de intención, atribución de conversión, eventos, experimentos A/B y seguimiento de errores JS, todo lo que sea amigable con la privacidad, todo en una plataforma.
Intercomunicador + deriva + Tidio
Chat de clientes con IA y base de conocimientos, soporte de IA para múltiples proveedores, entrega automática a personas, reglas proactivas de chat, historial de conversaciones, encuestas CSAT y creación de tickets desde el chat.
Zendesk + Freshdesk y Help Scout
Sistema de tickets nativo con departamentos, prioridades, SLA, clasificación por IA, respuesta automática con retraso configurable, ingestión de correo electrónico, incrustación de ticket, combinación de tickets, copiloto de bandeja de entrada y capacidad de retorno a AI.
HubSpot + Pipedrive + Salesforce
CRM basado en IA con cuatro agentes de IA especializados (Steward, SDR, Retention, Analyst), control de autonomía Trust Dial, tablero de pipeline, coaching de tratos, pronóstico, secuencias, gestión del ciclo de vida y configuración de lenguaje natural de CRM.
Ahrefs + SEMrush + Moz
Inteligencia del sitio con rastreos automatizados, auditorías técnicas de SEO, análisis de contenido, búsqueda de IA, seguimiento de posicionamiento en SERP, investigación de palabras clave, análisis del enlace de retorno, cuadrícula local de SEO e informes programados de marca blanca.
Zapier + Make + middleware personalizado
Conector SDK with 25+ conectores pre-construidos, Constructor de Conectores (sin código/AI asistido/código completo), OAuth Flujo, registro automático de webhook, un gran catálogo de definiciones de acciones del conector que se vuelven ejecutables solo cuando el conector relevante está instalado, habilitado, configurado y validado, SmartLookup, marketplace y paquetes firmados.
Administrador de perfiles de Google Business
Conector completo de GBP: gestión de revisiones, publicación post, administración Q plaga, cargas de fotos, sincronización de información empresarial, seguimiento de las ideas y respuestas de revisión impulsadas por AI, todo desde dentro OpsIQ.
Herramientas de plantilla de correo electrónico separadas
Plantillas de correo electrónico basadas en registros con editor visual, vista previa en vivo, chips variables, control global del diseño y personalización por evento para todas las comunicaciones automatizadas.
Paneles de gestión del equipo
Rendimiento del equipo integrado: tiempos de resolución, carga de trabajo, cumplimiento de SLA, CSAT por agente, tasas de reapertura, horas más ocupadas, seguimiento de presencia en tiempo real y desgloses por departamento.
GDPR Herramientas de cumplimiento
Native DSAR handling, data erasure across all systems, consent management, retention policies, and audit trails, built into the platform, not bolted on.
Dos ediciones
Despliegue alojado
OpsIQ se ejecuta en una infraestructura gestionada. El funcionamiento del producto es el mismo; la infraestruktura, las actualizaciones y los backups son manejados por el operador de alojamiento. Este manual documenta el tiempo de ejecución de _OpsIQ más que los flujos de marketing o cuenta comercial.
Módulo auto-hospedado
Instalar OpsIQ Alojamiento en su propio servidor para tener un control total sobre los datos, la marca, las actualizaciones y las integraciones. 8.4+, MySQL 5.7+ o MariaDB 10.3+, HTTPS y el OpsIQ Soporta cron. unificado WHMCS Integración como módulo adicional. Soberanía total de los datos.
Orden de lectura recomendado
1
Inicio rápido
Sigue la guía de configuración de 30 minutos para que el seguimiento, el chat y la IA básica funcionen en tu sitio web.
2
Panel de control y análisis
Aprende a leer los datos de tus visitantes, configurar la reproducción de sesiones, identificar clientes potenciales y comprender los patrones de tráfico.
3
Inteligencia del Sitio
Ejecuta tu primer rastreo de SEO, comprueba tu salud técnica y configura el seguimiento del ranking SERP para tus palabras clave objetivo.
4
Tickets y soporte
Configura departamentos, configura respuesta automática con IA, conecta la ingestión de correo electrónico y entrena a tu IA para que maneje preguntas comunes.
5
CRM
Organice contactos, cree su pipeline, configure agentes de IA, establezca niveles de marcación de confianza y deje que la IA acompañe sus negocios.
6
Conectores y herramientas de desarrollo
Conecte su plataforma de comercio electrónico/facturación, cree conectores personalizados, configure webhooks e incorpore a través del REST API.
💡
New to OpsIQ? Comience con la guía de inicio rápido a continuación. Puede tener el seguimiento y el chat básico de IA en ejecución bajo 30 15 minutos.
Comience aquí
Inicio rápido en 30 minutos
Sigue estos pasos para poner en marcha OpsIQ. Cada paso se basa en el anterior, y al final tendrás seguimiento de visitantes, chat con IA y soporte básico de tickets.
PasosEl camino de 30-minutos: instalar el widget, conectar una plataforma, entrenar a tu IA, invitar al equipo y luego ponerlo en vivo.
La configuración de 30-minuto
1
Activa tu licencia
Introduzca su clave de licencia en el administrador OpsIQ. Vaya a Configuración, introduzca la clave de licenza suministrada para esta instalación y haga clic en Activar. Debería ver una insignia verde "Activo".
2
Establezca su identidad de negocio
Ve a Configuración y completa el nombre de tu empresa, la industria, la zona horaria, la moneda predeterminada y los horarios de soporte. Esta información es utilizada por la IA cuando responde preguntas de clientes y por análisis para informes con conocimiento de zonas horarias.
3
Elija un proveedor de IA
Vaya a Configuración de IA y seleccione su proveedor. Opciones: Claude (Anthropic), GPT-4o (OpenAI), Gemini (Google), o Grok (xAI). Ingrese su API Haga clic en "Probar conexión" para verificar si está usando su propia clave o utilice la IA administrada, si está disponible en su plan.
4
Instalar el widget de seguimiento
Go to Connected Sites, copy the tracking snippet, and paste it before the closing </body> tag on your website. Visit your site in a private browser, then check the Live Feed in OpsIQ. You should see yourself as a visitor within 15 seconds.
5
Conecta tu plataforma
Si usted utiliza Shopify, WooCommerce, WHMCS, u otra plataforma compatible, vaya a Conectores, busque su plataforma, introduzca las credenciales y haga clic en Probar conexión.Esto le da acceso a la IA a los datos de pedidos, perfiles de clientes y contexto de soporte.
6
Invita a tu equipo
Ve a Equipo, haz clic en Invitar e introduce el correo electrónico y la función del agente (Propietario, Administrador completo o Agente). Los agentes solo pueden acceder a los departamentos a los que tú les asignes.
La ruta más rápida posible (5 minutos)
Paso 1: Instalar el widget
Copia el fragmento de código de los sitios conectados y pégalo en tu sitio web, lo que te dará un seguimiento inmediato.
Paso 2: Habilitar la IA
Vaya a Configuración de AI, elija un proveedor, ingrese su clave y guarde. El chat de IA ahora está activo en su sitio web.
Hecho
Ahora tienes seguimiento de visitantes y chat con IA, pero puedes agregar tickets, CRM y conectores más adelante.
Día 2: Hazlo útil
Agregar conocimientos
Vaya a la base de conocimientos y añada 5-10 Artículos sobre sus preguntas más comunes, que la IA utiliza para responder a los clientes con precisión.
Crear departamentos
Vaya a Tickets y cree al menos 2 departamentos (por ejemplo, "Ventas" y "Soporte") Asigne miembros del equipo a cada uno.
Escribe tu mensaje de IA
Ve a Formación en IA y escribe un mensaje de IA para clientes que describa tu negocio, tono y reglas de escalada.
Probar una conversación
Abre tu sitio web en un navegador privado y chatea con la IA como cliente, comprueba que las respuestas sean precisas y el tono correcto.
Semana 1: Construye tus operaciones
Conectar correo electrónico
Configure un buzón (Gmail, IMAP o un conector de proveedor) para que los correos electrónicos del cliente creen tickets automáticamente.
Configurar respuesta automática
Establece un retraso de 2minutos para que los humanos puedan intervenir primero, y luego activa la respuesta automática.
Revisar las analíticas
Revisa el recuento de visitantes, la tasa de rebote, las páginas principales y las ventas si está conectado el seguimiento.
Inicie su CRM
Abra AI CRM y deje que OpsIQ importe contactos de sus plataformas conectadas. Revise el tablero del embudo.
Mes 1: Optimizar
Revisar el historial de IA
Revisa semanalmente el historial de IA y busca respuestas incorrectas, preguntas perdidas y oportunidades para agregar conocimiento.
Añadir reglas proactivas
Crea una regla: si un visitante está en la página de precios durante 60+ segundos, muestra un mensaje de chat preguntándole si necesita ayuda.
Construir un conector
Si utilizas una plataforma que no tiene un conector integrado, usa el generador de conectores para crear uno.
Configurar webhooks
Conecta OpsIQ a tus herramientas internas usando webhooks salientes para tickets, chat y eventos de ventas.
¿Puedo omitir la IA y solo usar seguimiento?+
Sí. El proveedor de IA es opcional. OpsIQ funciona como una plataforma de análisis y ticketing pura sin IA. Puedes habilitar IA más tarde cuando estés listo.
¿Puedo omitir conectores y agregarlos más tarde?+
Los conectores enriquecen la IA con datos específicos de plataforma, pero OpsIQ funciona sin ellos. Comience con el seguimiento y el chat, luego conecte las plataformas cuando sea necesario.
¿Qué pasa si todavía no tengo un sitio web?+
Aún puedes usar OpsIQ para tickets, CRM y colaboración de equipo. El widget de seguimiento es opcional; agrégalo cuando tu sitio web esté listo.
¿Cómo sé si el widget está instalado correctamente?+
Visita tu sitio web en un navegador privado/de incógnito. Luego, marca OpsIQ Deberías ver tu visita aparecer dentro de 24 horas. 15 Si no, comprueba: (1) es el fragmento pegado correctamente, (2) si la clave del sitio es correcta, (3) son bloqueadores de anuncios o encabezados CSP que bloquean el script.
Comience aquí
Mapa de producto completo
OpsIQ no es una sola función, sino que incluye un administrador de operadores, un widget para el sitio web, una capa de soporte de IA, un sistema de tickets/helpdesk, un CRM completo con cuatro agentes de IA (inteligencia artificial), una suite de inteligencia del sitio, una plataforma de conectores con mercado y una superficie de desarrollador. Aquí están todos los componentes que contiene.
Operador admin
Panel de control, feed en vivo, registro de visitantes, sesiones, reproducción de la sesión, páginas principales, inteligencia geográfica, embudo de intención, log de eventos, experimentos A / B, seguimiento de errores JS, ventas y conversiones, clientes potenciales, AI CRM (centro de comandos, contactos, empresas, ofertas, tablero de canalizaciones, entrenamiento de tratos, pronóstico, prospección, secuencias, ciclo de vida, administrador de datos, Build my CRM, configuración de CRM, salud de CRM API), tickets, bandeja de entrada del chat, reglas proactivas, encuestas CSAT, borradores de correo electrónico, buzones de correo, configuración de IA, capacitación en IA, historial de AI, información sobre IA, base de conocimientos, conectores, Connector Builder, marketplace, sitios conectados, administración de equipos, rendimiento de los equipos, configuraciones, diagnóstico y licencia.
Superficies orientadas al cliente
Widget de seguimiento del sitio web (baliza analítica + chat + inserción de tickets + búsqueda en la base de conocimiento), chat con IA para clientes, portal de envío de tickets, manejo de tokens de identidad de visitantes, cargas de archivos, widget de encuesta CSAT y centro de ayuda orientado al cliente.
CRM centrado en IA
Centro de comando, contactos, empresas, ofertas, tablero de canales con arrastrar y soltar, entrenamiento de acuerdos de IA (señales de riesgo, próxima mejor acción, probabilidad de ganar), pronóstico de ingresos, agente de prospección (SDR), secuencias de seguimiento automatizadas, gestión del ciclo de vida y retención, agentes administradores de datos (dedup, enriquecer, validar), Construir mi CRM (configuración de lenguaje natural), configuración de CRM, comprobación de salud de CRM. Trust Dial (piloto automático / copiloto / manual por agente), cuatro agentes especializados (Steward, SDR, Retention, Analyst) y CRM API con webhooks.
Suite de inteligencia del sitio
Rastreos automatizados del sitio, auditoría técnica de SEO (velocidad, móviles, Core Web Vitals, ) SSL, redirecciones, datos estructurados), auditoría de contenido (conteo de palabras, legibilidad, densidad de palabras clave, estructura de encabezados), búsqueda semántica con IA, seguimiento del ranking SERP a través de motores, investigación de palabra clave con puntuación de oportunidades, análisis y monitoreo de backlinks, visualización local de la cuadrícula SEO, sincronización del perfil de Google Business (comentarios, publicaciones, preguntas y respuestas, fotos, información), informes programados (diario / semanal / mensual) y etiqueta blanca. PDF output for agencies.
IA y automatización
chat de IA cliente (multi-provider: Claude, GPT-4o,Gemini, Grok), asistente de administración AI, puesta en marcha del conocimiento de IA, auto-mano con revertencia configurable, configuración de inteligencia artificial por espacio de trabajo, IA gestionada yBYOKModos, presupuestos de ficha y controles de costes, pista de auditoría de historia de AI, análisis de información de inteligencia AI, ticket AI triage, billete auto-reply con retraso, escritura de IA (inmediación separada), y copiloto de entrada de administración.
Conectores e integraciones
25+ conectores pre-construidos (Shopify, WooCommerce, BigCommerce, Magento2, PrestaShop, OpenCart, osCommerce WordPress, WHMCS, Zendesk, Stripe, Amazon SES, Postmark, Reenviar, SendGrid, Mailgun, Gmail, IMAP, Slack, Google Business Profile), Constructor de conectores (sin código/con ayuda de IA/código completo), genérico OAuth Flujo de trabajo con PKCE, mercado de conectores con distribución pagada, firma y verificación del conector, coincidencia difusa SmartLookup, un amplio catálogo de definiciones de acciones HTTP cuya disponibilidad depende de la instalación, habilitación, configuración y validación del conector, sincronización de conocimientos y recetas de flujo de trabajo.
Plataforma de desarrollador
RESTAPI(visitantes, eventos, tickets, contactos, configuraciones, conectores), especificación de OpenAPI,API Gestión de claves, webhooks salientes (asincronizados, firmados, reintentados, protegidos por SSRF, desactivación automática), EventosAPI para la ingestión de eventos personalizados, widget SDKcon resolución de identidad, libro de recetas de disparadores, contratos de acción, conector SDK, empaquetado de mercados, SDK del lado del servidor (PHP, Node.js), WordPress plugin, y WHMCS módulo.
Ajustes y operaciones
Identidad de empresa, configuración de IA por espacio de trabajo, ajustes de seguimiento, seguridad (HSTS, política de permisos, bloqueo IP, protección contra fuerza bruta), RBAC (propietario / administrador completo / agente), administración e invitaciones del equipo, panel de control del rendimiento del equipo. Seguimiento de la presencia del administrador, sistema de plantillas de correo electrónico (impulsado por el registro, editor visual, chips variables), diseñador de encuestas, conocimiento del dominio, configuración para incrustar tickets, marca, políticas de retención de datos, gestión del ciclo de facturación (mensual durante toda la vida), normalización de monedas, importación / exportación, diagnóstico, automatización de cron y zona de peligro.
Seguridad y cumplimiento
Acerca de Enterprise SSO (OIDC con verificación JWKS, aprovisionamiento JIT), SAML Configuración, GDPR/DSAR manejo (exportación y eliminación en todos los sistemas), borrado de datos por contacto, gestión del consentimiento, aislamiento del espacio de trabajo (alcance estricto de la capa de consulta), pistas de auditoría, seguimiento de inicios de sesión fallidos, IP Bloqueo, webhook de salida SSRF guard y políticas de retención de datos.
Puente de proveedor
Adminiscencia de la IA OpsIQ proveedor URL, llamadas del proveedor de información, validación de licencias, informes de salud, PDF renderizado y exportación de datos, todo enrutado a través del endpoint configurado del proveedor, no directamente el vendedor API llamadas desde su servidor.
Cada página de administración
Tablero
Núcleo
Centro de comandos diario: visión general del tráfico, recuento de visitantes en vivo, resumen de ventas, profundidad de la cola de soporte, alertas de actividad de IA y accesos directos de acción rápida.
Transmisión en vivo
Análisis
Flujo de visitantes en tiempo real: vistas de página, inicios de chat, envíos de formularios y señales de intención que se actualizan cada pocos segundos con filtros de país, dispositivo y referencia.
Registro de visitantes
Análisis
Registros completos de visita: dispositivo, navegador, sistema operativo, país, ciudad, referenciador, parámetros UTM, página de destino, identidad e historial completo de vistas de páginas.
Sesiones
Análisis
Vista agrupada por trayecto: flujo de página, tiempo en la página, profundidad de desplazamiento, ruta de conversión y página de salida para cada sesión del visitante.
Repetición de sesión
Análisis
Reproducción en línea de tiempo de los eventos capturados: movimientos del ratón, clics, desplazamientos, transiciones de página e interacciones de formulario para el diagnóstico UX.
Páginas principales
Análisis
Ranking de rendimiento de la página: visitas, tiempo de interacción, tasa de rebote, conversiones, interacciones de soporte y dirección de tendencia.
Inteligencia geográfica
Análisis
Informes geográficos: desglose por país/ciudad con mapas, distribución de dispositivos, participación del navegador, fuentes de tráfico y penetración en el mercado.
Embudo de intención
Análisis
Seguimiento de intención conductual: visitas de precios, frecuencia de retorno, navegación por documentos, interacciones con el soporte y señales personalizadas con probabilidad de conversión.
Registro de eventos
Análisis
Historial de eventos con búsqueda: visitas a páginas, eventos personalizados, chats, compras, envíos de formularios con metadatos completos y filtrado.
Experimentos A/B
Análisis
Pruebas divididas: crear variantes, asignar tráfico, definir objetivos, medir significado y declarar ganadores, todo desde dentro OpsIQ.
Errores de JS
Análisis
Captura de errores del front-end: mensajes, trazas de pila, navegadores afectados, frecuencia, páginas afectadas y seguimiento de tendencias.
Ventas
Ventas
Panel de ingresos: pedidos, renovaciones, reembolsos, atribución por fuente, rendimiento de campañas, comparación de períodos y análisis de tendencias.
Clientes potenciales
Ventas
Gestión de clientes potenciales: puntuación, atribución de fuentes, estado del CRM, detalles de contacto, señales de comportamiento y enrutamiento de canales.
CRM de IA
CRM
CRM completo: centro de comando, contactos, empresas, ofertas, tablero de pipeline, coaching, pronóstico, prospección, secuencias, ciclo de vida, administrador de datos y salud.
Boletos
Soporte
Bandeja de entrada de soporte: departamentos, prioridades, seguimiento de SLA, clasificación por IA, respuesta automática, notas internas, archivos adjuntos, combinación y gestión de estado.
Bandeja de entrada del chat
Soporte
Conversaciones en vivo: chat humano e IA, entrega, colaboración, historial de conversaciones, identidad del cliente y recopilación CSAT.
Borradores de correo electrónico
Soporte
Administración de correo electrónico: correo entrante a tickets, composición de respuestas asistida por IA, selección de plantillas y configuración del buzón.
Configuración de AI
IA
Configuración del proveedor: seleccione Claude/GPT-4o/Gemini/Grok, introduzca la clave API o habilite la IA gestionada, establezca el modelo, la temperatura y los presupuestos de token por espacio de trabajo.
Formación en IA
IA
Creación de mensajes: mensajes dirigidos al cliente y al administrador, reglas de escalado, pautas de tono, temas prohibidos y configuración de límites.
Historia de la IA
IA
Auditoría de conversaciones: registros completos de solicitudes/respuestas, uso de tokens, costo por conversación, proveedor, versión del modelo y resultado de la resolución.
Perspectivas de IA
IA
Análisis de patrones: preguntas comunes, tasas de resolución, frecuencia de entrega, satisfacción por tema e identificación de brechas en la capacitación.
Base de conocimientos
IA
Contenido de formación en IA: artículos, preguntas frecuentes, documentación del producto, conocimiento sobre conectores y entradas personalizadas Búsqueda semántica y por palabras clave para la conexión a tierra de AI.
Conectores
Integraciones
Hub de integración: conectores instalados, estado de funcionamiento, inventario de acciones, administración de credenciales, explorador del mercado y generador de conecteurs.
Sitios conectados
Configuración
Administración del sitio: fragmento de seguimiento, clave del sitio, configuración del widget, ajustes de dominio y aislamiento por espacio de trabajo del sitio.
Equipo
Configuración
Administración de usuarios: invite a miembros, asigne roles (propietario/administrador completo/agente), establezca el acceso del departamento y administre los permisos.
Rendimiento del equipo
Configuración
Métricas de operaciones: tiempos de resolución, carga de trabajo, cumplimiento del SLA, CSAT por agente, tasas de reapertura, horas más ocupadas y análisis de tendencias.
Configuración
Configuración
Configuración: identidad de empresa, configuración de IA, seguimiento, seguridad, marca, retención, plantillas de correo electrónico, facturación, importación/exportación, diagnóstico y zona de peligro.
Licencia
Configuración
Administración de planes: estado de la licencia, características del plan, métricas de uso, fecha de renovación y opciones de actualización/reducción.
Comience aquí
Incorporación guiada
El proceso de incorporación convierte una nueva instalación en un espacio de trabajo OpsIQ que funciona y se puede abandonar y reanudar sin perder el progreso.
Pantalla de productoOnboarding muestra cada área de configuración, su estado actual y la siguiente acción a completar.
Secuencia recomendada
Licencia: Validar la licencia y confirmar que el espacio de trabajo está activo.
Proveedor de IA: Si el espacio de trabajo inicialmente solo usará análisis y tickets, puede omitir la IA si desea que se ejecute una prueba de conexión.
Identidad de marca: Establezca el nombre, la industria, la descripción, el tono orientado al cliente y los detalles de marca utilizados por el widget e IA.
Conector: 1 x USB Habilitar al menos una plataforma externa cuando OpsIQ necesite pedidos, clientes, tickets, correo electrónico u otro contexto de la plataforma.
Sitio y widget: Cree el sitio/espacio de trabajo, copie la clave del sitio y verifique una visita privada en Live Feed.
Equipo y ruta: Invitar administradores/agentes, crear departamentos, establecer el enrutamiento de correo electrónico y confirmar las preferencias de notificación.
Verificaciones de Go-live: Chat de prueba, un ticket, sincronización del conector, cron, correo electrónico saliente, webhooks y encabezados de seguridad.
Al volver a Onboarding, deberías ver los pasos completados en lugar de forzar un reinicio.
Comience aquí
Navegación y permisos de administrador
The OpsIQ Este mapa explica dónde se encuentra cada área operativa y por qué una página puede no ser visible para todos los administradores.
Pantalla de productoLa barra lateral agrupa los OpsIQ por área de trabajo; los enlaces individuales aparecen solo cuando el rol actual puede usarlos.
Soporte
Billetes, la plataforma de correo electrónico del equipo, CSAT, el Centro de Ayuda y los flujos de chatbot.
CRM
Las superficies de ventas diarias: CRM Home, Command Center, contactos, tubería, pronóstico, ciclo de vida, prospección, segmentos, clasificación, aprobación de acuerdos, administrador de datos, herramientas de crecimiento y la corriente de actividad.
Automatización
Flujos de trabajo impulsados por eventos, reglas del ciclo de vida y objetivos de conversión.
Comercialización
Extensión, mensajes proactivos, anuncios, Promoción Studio, Survey Studio, campañas de empuje y visitas guiadas.
Análisis
Report surfaces first — Analytics Hub, AI insights, sales, clientes, leads, embudos, pruebas A/B, repetición de sesión, tableros de datos personalizados e informes programados con el visitante bruto, sesión, página, geografía y registros de eventos en una subsección de Datos Raw.
Páginas independientes
Site Intelligence, Team Performance and Feedback se sientan fuera de los grupos como entradas directas.
Integraciones
Conectores, acciones y disparadores, buzones de correo, borradores, ajustes de email, puntos finales en línea, teclados web outbound y API _.
Seguridad " Privacidad
Vista general de seguridad, privacidad y cumplimiento, consentimiento de las cookies, actividad de auditoría, accesos fallidos, bloqueadosIPsyJavaScripterrores.
Configuración
Bases del espacio de trabajo (general, equipo, sitios, idiomas), luego sub-secciónes plegables: AI Brain (instrumentos, configuración, evaluación, historia), CRM Configuración (constructor, campos personalizados, puntuación de plomo, salud), Data & Health (diagnostics, export) y Cómo empezar (onboarding, help).
Páginas un papel no puede abrirse están ocultos de la barra lateral. Pages el plan actual no incluye permanecer visible con una Actualización etiqueta y abre una pantalla de actualización en la aplicación.
Ocultar un enlace de barra lateral no es el límite de seguridad: cada acción protegida debe pasar sus controles de permisos y espacio de trabajo.
Análisis
Hub de Analytics
El centro de análisis reúne soporte, chat, IA, visitantes e informes de agentes en un espacio de trabajo con filtro de fecha y resultados exportables.
Pantalla de productoEl Hub de análisis muestra un intervalo de fechas, tarjetas de métricas y pestañas para el rendimiento del soporte técnico, chat, IA, visitantes y agentes.
Filtros y controles
Usar un valor preestablecido o personalizado de/a Seleccione el intervalo, luego Actualizar para reconstruir cada tarjeta y gráfico del mismo período.
Exportar CSV Exporta la vista analítica activa en lugar de una captura de pantalla.
El ámbito del espacio de trabajo es automático; al cambiar los sitios, cambia el conjunto de datos subyacente.
Qué mide cada pestaña
Soporte: tickets creados/cerrados/pendientes, primera respuesta, resolución, resolución de primer contacto, SLA y desgloses por prioridad/departamento/estado.
Chat: sesiones iniciadas, resoluciones de IA, escalamientos, abandonos, tiempo de manejo, mensajes por sesión y CSAT de IA/humano/todos.
AI: Confianza media, tasa de confianza baja, precisión del triage, retroalimentación, desviación del conocimiento, uso de token/caché y los elementos que necesitan revisión.
Visitante: Tendencias de tráfico y participación para el período seleccionado.
Agente: Medidas de carga de trabajo, velocidad, cierre y satisfacción por agente.
Utilice Analytics Hub para la revisión entre equipos; utilice las páginas dedicadas Visitantes, Tickets, CSAT, Historial de IA y Rendimiento del equipo cuando necesite una investigación a nivel de registro.
Análisis
El tablero de instrumentos
El panel de control es su centro de comandos diario, que muestra el tráfico, las ventas, la carga del soporte, la actividad de IA y los indicadores de conversión en una sola vista. Ábralo cada mañana para comprender lo que sucedió durante la noche y qué necesita atención hoy.
TableroThe real Overview screen: the OpsIQ Intelligence panel up top (pick an analysis and it writes it) above the KPI widgets you arrange yourself.
Explicación de las tarjetas del panel
Visitantes en vivo
El número de personas en tu sitio web en este momento. Se actualiza cada 15 Un visitante es "activo" si ha cargado una página dentro del umbral de actividad (por defecto: 10 segundos). 90 10 segundos).
Visitantes únicos
OpsIQ identifica a los visitantes mediante una combinación de huella digital del navegador, cookies e identidad autenticada (si está disponible).
Nuevo vs regresando
Los nuevos visitantes están viendo tu sitio por primera vez. Los visitantes que regresan se han visto antes. Una tasa de retorno alta significa que tu contenido atrae a las personas a volver.
Tasa de rebote
El porcentaje de visitantes que se fueron después de ver una sola página. Una tasa de rebote por encima 70% en las páginas de aterrizaje generalmente significa que la página no cumple con las expectativas del visitante, el contenido incorrecto, la carga lenta o la mala experiencia móvil.
Tiempo promedio en la página
El tiempo medio que los visitantes pasan en cada página. Los tiempos muy cortos (menos de 10 segundos) en las páginas de contenido sugieren que el contenido no es atractivo, mientras que los tiempos demasiado largos en las de pago pueden indicar confusión.
Amenazas bloqueadas
IPdirecciones que OpsIQ Los sitios que se han identificado como potencialmente maliciosos en función de la puntuación de amenazas, los intentos de fuerza bruta o los bloqueos manuales. IPs lista.
Ventas hoy / esta semana / este mes
Ingresos de fuentes de ventas conectadas (Shopify, WooCommerce, Stripe, etc.). Si las ventas muestran cero, compruebe que su conector de plataforma está conectado y sincronizado.
Gráfico de tendencias
Un gráfico de líneas que muestra el recuento de visitantes en el intervalo de fechas seleccionado. Busca patrones: picos de tráfico (campañas, menciones en la prensa), caídas (fines de semana, días festivos) y tendencias sostenidas.
Las fuentes principales
De dónde vienen tus visitantes: directo, Google, redes sociales, campañas de correo electrónico, sitios de referencia. Usa esto para entender qué canales de marketing están funcionando.
Los mejores navegadores
Si un navegador tiene una tasa de rebote inusualmente alta, es posible que tengas un problema con la seguridad. CSS o JavaScript Problema de compatibilidad.
Mapa de calor por hora
Una cuadrícula que muestra la actividad de los visitantes por hora del día y día de la semana, para decidir cuándo programar turnos de soporte, cuádo enviar anuncios y cuánda ejecutar promociones.
Visitantes recientes de 1
Los últimos visitantes con país, página, dispositivo y fuente. Útil para chequeos rápidos durante las campañas.
Uso del filtro de intervalo de fechas
Haga clic en el selector de fechas en la parte superior derecha del panel. Presets: Hoy, Ayer, Último 7 días, Último 30 Todas las tarjetas y gráficos del panel de control se actualizan cuando cambia el intervalo. El rango de fechas está en la zona horaria configurada (establecida en Configuración).
Ejemplos de trabajo
Investigación de picos en la tasa de rebote
Escenario:
Your bounce rate jumped from 45% to 78% this week. What happened?
Qué hacer:
Cheque: (1) ¿Ha cambiado una página de destino específica? Ve a Páginas principales y ordena por tasa de rebote. (2) ¿Una campaña envió el tráfico a la página equivocada? Compruebe las principales fuentes de nuevos remitente. (3) ¿Se rompió el sitio en dispositivos móviles? Comprueba la tasa de rebote del navegador. (4Compruebe el contador de amenazas y los detalles del visitante para ver si hay patrones sospechosos.
Cero visitantes en el panel de control
Escenario:
The dashboard shows 0 live visitors even though your website is getting traffic.
Qué hacer:
Cheque: (1) ¿Está instalado el widget de seguimiento? Vea el código fuente de su sitio web y busque el OpsIQ script. (2) ¿Es correcta la clave del sitio? Compare la clave de datos-sitio en el script con la clave en Sitios conectados. (3) ¿Una CDN o caché está sirviendo una página obsoleta sin la secuencia de comandos?4) ¿Un bloqueador de anuncios o un encabezado CSP está bloqueando el script?Compruebe la consola del navegador para ver si hay solicitudes bloqueadas.
Lectura del mapa de calor por hora
Escenario:
Your heatmap shows heavy activity between 10am-2pm on weekdays but nothing on weekends.
Qué hacer:
Este es un patrón de tráfico B2B. Sus visitantes son profesionales que trabajan y navegan durante el horario comercial.1) Programe el personal de soporte para las horas de trabajo entre semana. (2) Enviar campañas de correo electrónico martes-jueves por la mañana. (3) Las ventanas de mantenimiento del fin de semana son seguras. (4) Considera ofrecer chat en vivo solo durante las horas punta.
Pico de tráfico desde fuente desconocida
Escenario:
You see a sudden spike of 500 visitors in one hour from an unknown referrer.
Qué hacer:
Ir a los visitantes y filtrar por la ventana del tiempo. Verificar: (1) ¿Son visitantes reales o bots? Mira la duración de la sesión, páginas vistas y diversidad del navegador. (2Si es real, ¿en qué página están aterrizando?3) Compruebe el árbitro URL. Alguien podría haber vinculado a usted de Reddit, Hacker News, o un blog popular. (4) Si es tráfico de bot, comprobar amenazas y considerar bloquear el IP rango.
¿Por qué mi cuenta de visitantes difiere de Google Analytics?+
OpsIQ Google Analytics cuenta los visitantes de manera diferente. Utiliza la huella digital del navegador y las cookies, mientras que GA utiliza un modelo de cookie diferente. El filtrado de bots, las tasas de bloqueo de anuncios y el orden de carga de scripts también pueden causar diferencias. 10-20% La varianza es normal.
¿Puedo incrustar el panel en otra herramienta?+
El tablero está diseñado para el. OpsIQ Para la generación de informes externos, utilice el REST. API para extraer datos analíticos y mostrarlos en su propio panel de control o herramienta BI.
¿Qué significa el contador de "amenaza"?+
Cuenta.IPdirecciones queOpsIQha marcado o bloqueado basado en la puntuación de amenazas, reincidentes accesos fallidos, o bloques manuales. Haga clic en el contador para ver detalles y gestionar bloques.
Análisis
Registro de visitantes
El registro de visitantes muestra cada visita a los sitios web que has rastreado, y cada fila representa una carga de página por parte de un visitante. Úsalo para investigar el comportamiento individual del visitante, encontrar tráfico de campañas y diagnosticar problemas de seguimiento.
Registro de visitantesEl verdadero Registro de Visitantes: filtrar por fecha, búsqueda y dispositivo, luego leer cada visita por IP/email, ubicación, fuente, dispositivo y tiempo, amenazas insignias en rojo.
Lo que muestra cada fila
Dirección de IP
El visitante IP Anonimizado si IP Haz clic para ver todas las visitas desde este sitio web.IP.
País y ciudad
Detectado desde elIP Requiere la base de datos MaxMind GeoLite2 o. Cloudflare Muestra "Desconocido" si GeoIP no está configurado.
Página URL
La página que el visitante cargó. Haga clic para ver la ficha completa URL. Long URLs Se truncan en la vista de tabla.
Referrer
De dónde vino el visitante antes de llegar a tu sitio: "Directo" significa que no hay ningún remitente (marcadores, URLs escritos, algunos enlaces de aplicaciones).
Dispositivo y navegador
El tipo de dispositivo del visitante (de escritorio, móvil, tableta) y el navegador (Chrome, Safari, Firefox, etc.). Analizado desde la cabecera User-Agent.
Fecha y hora
Cuando se cargó la página, en su zona horaria configurada.
Identidad del cliente
Si el visitante está identificado (a través de un token de identidad o login), aparece su nombre o correo electrónico, en caso contrario se muestra como anónimo.
Filtros
Rango de fechas
Filtra las visitas a un período de tiempo específico. Por defecto: últimos 7 días.
Buscar
Buscar por. IP dirección, página URL, remitente, país o correo electrónico del cliente.
Fuente
Filtrar por fuente de tráfico: Directo, Orgánico, Social, Referido, Pagado, Email.
Dispositivo
Filtrar por Escritorio, Móvil o Tablet.
Solo nuevo
Muestre solo a los visitantes que lo hacen por primera vez y nunca antes se han visto.
Ejemplos de trabajo
Encontrar visitantes de una campaña específica
Escenario:
You launched a Google Ads campaign with UTM parameter utm_source=google&utm_medium=cpc&utm_campaign=summer-sale. How do you find those visitors?
Qué hacer:
En el Registro de visitantes, utilice el campo Buscar y escriba "summer-sale".La búsqueda comprueba la referencia URLs y página URLs También puedes filtrar por Origen = Pago para reducir aún más la lista de resultados.
Buscar a un cliente que ha reportado un problema
Escenario:
A customer emailed saying "your checkout page was broken yesterday around 3pm." How do you find their session?
Qué hacer:
Si iniciaron sesión, aparecerá su identidad. Establezca el intervalo de fechas en ayer. Busque visitas a las páginas de pago alrededor de las 15:00 h. Haga clic en la sesión para ver el flujo completo de la página y cualquier error JavaScript.
Detectar un golpeador o raspador de bucle
Escenario:
You notice an IP address has 500+ visits in one hour, all to the same page.
Qué hacer:
Esto es probablemente un bot, scraper o script roto.Vaya al registro de visitantes y busque por ese nombre.IP. Cheque: (1) ¿Son todas las visitas a la misma página? (2) ¿Es el agente de usuario un bot conocido? (3) Es la duración de la sesión siempre. 0 Si se confirma que eres un bot, ve a Seguridad y bloquea el.IP.
Registro de visitantes vs Sesiones vs Feed en vivo
Registro de visitantes
Una fila por vista de página. Mejor para: investigar páginas específicas, encontrar tráfico de fuentes específicas y diagnosticar problemas de seguimiento.
Sesiones
Agrupa las visitas a páginas en trayectos. Una fila por sesión de visita. Mejor para: entender el flujo del usuario, medir la duración de la sesión e identificar rutas de conversión.
Transmisión en vivo
Actividad en tiempo real. Muestra a los visitantes que están actualmente en tu sitio web. Mejor para: monitorizar campañas en curso, detectar visitantes con intenciones altas y ver oportunidades de soporte.
¿Por qué veo mis propias visitas en el registro?+
OpsIQ Para excluir tu propio tráfico, añade tus visitas a Google Analytics.IPDirección a los excluidos IPs Lista en Configuración > Seguimiento.
¿Por qué un visitante muestra el país "Desconocido"?+
La búsqueda de GeoIP requiere Cloudflare Encabezados geográficos (automático si se utiliza )Cloudflare) o un archivo de base de datos MaxMind GeoLite2.Compruebe Configuración > Ruta GeoIP para asegurarse de que el archivo de la base existe y es legible.
¿Durante cuánto tiempo se conservan los datos de visitantes?+
Los datos de los visitantes se conservan durante el período de retención configurado en Configuración (por defecto: 90 días), después del cual, los registros antiguos se limpian automáticamente por el trabajo de retenciones cron.
Análisis
Sesiones
Las sesiones agrupan varias visitas de página por parte de la misma persona en un único trayecto, mientras que el registro de visitantes muestra las cargas individuales de páginas.
SesionesEl registro real de sesión: cada viaje de visitante como una fila (IP, país, dispositivo, fuente, duración y páginas) con sesiones arriesgadas insignias en rojo.
Cómo funcionan las sesiones
Una sesión comienza cuando un visitante carga su primera página. Continúa a medida que navega por más páginas. Una sesión termina cuando el visitante permanece inactivo durante el período de tiempo límite de la sesión (por defecto: 30 minutos) o cierra su navegador. La misma persona que regresa después del tiempo límite crea una nueva sesión.
Lo que muestra cada sesión
Primera página
La página de aterrizaje, donde el visitante entró en su sitio web. Esto le dice qué contenido está atrayendo gente.
Última página
La página de salida, donde se fue el visitante. Si la página de entrada es a menudo la página del precio, los visitantes podrían estar comparando con los competidores.
Número de páginas
Cuántas páginas ha visto el visitante en esta sesión: más páginas suelen significar más interacción, pero también puede significar que el visitantes se pierde.
Duración
Tiempo total de carga de primera página a última actividad. Sesiones con 0 segundos son rebotes (single page view, no hay más interacción).
Fuente
La fuente de tráfico para esta sesión (Directo, Google, social, referencia, etc.).
País
País detectado desde la dirección IP del visitante.
Rebote
Si el visitante abandonó la página después de ver solo una página. Las sesiones rebotadas tienen un indicador rojo.
Conversión
Si el visitante completó un evento de conversión rastreado (compra, registro, envío de formulario) durante esta sesión.
Filtros
Buscar
Buscar por. IP, email, page URL, o referente dentro de las sesiones.
Tipo
Filtrar por visitantes nuevos (primera sesión) o visitantes que regresan.
Fuente
Filtrar por fuente de tráfico.
País
Filtre por país para ver las sesiones de una región específica.
Amenazas/Rebotados
Filtrar para mostrar solo las sesiones rebotadas o las secciones marcadas como amenazas.
Ejemplos de trabajo
Crear un perfil de cliente de alto valor
Escenario:
A customer just made a large purchase. You want to understand their journey before buying.
Qué hacer:
Busca su correo electrónico en Sesiones. Mira todas sus sesiones: (1) ¿Cuántas veces visitaron antes de comprar? (2) ¿Qué páginas vieron? (3) ¿Utilizaron el chat o abrieron un ticket? (4) ¿Cuál fue el tiempo total desde la primera visita hasta la compra?Esto le indica el recorrido de compra típico para los clientes de alto valor.
Detectar inicio de sesión desde una nueva ubicación
Escenario:
A customer usually logs in from Nigeria but you see a session from Russia.
Qué hacer:
Busque el correo electrónico del cliente en Sesiones. Compare el país de las sesiones recientes. Si una sesión aparece repentinamente desde un país inusual, podría tratarse de un viaje legítimo o de una cuenta comprometida.1) ¿Hubo un intento de inicio de sesión fallido antes del exitoso? (2) ¿Había IP ¿Cómo puedo hacer un cambio dentro de la misma sesión?
¿Cuál es la diferencia entre una sesión y un visitante?+
Un visitante es una persona (o navegador). Una sesión es una visita de esa persona. El mismo visitante puede tener muchas sesiones a lo largo del tiempo. Las sesiones expiran después del período de tiempo límite.
¿Cómo identifica OpsIQ a los visitantes que regresan?+
OpsIQ utiliza una combinación de cookies, huellas dactilares del navegador y tokens de identidad autenticados. Si un visitante borra sus cookies y no está conectado, aparecerá como un nuevo visitante.
Análisis
Transmisión en vivo
El Live Feed muestra los visitantes que están actualmente en tu sitio web en tiempo real, se actualiza automáticamente cada 15 segundos (configurable) y puedes usarlo durante campañas, lanzamientos de productos y períodos de soporte ocupados para ver lo que está sucediendo ahora mismo.
Transmisión en vivoVea quién está en su sitio este segundo y qué están haciendo, refrescando automáticamente cada 15 segundos.
Cómo funciona
El Live Feed consulta tu servidor en el intervalo de actualización configurado. Cada fila muestra un visitante que se encuentra actualmente en tu sitio: su página actual, país, dispositivo, origen, duración de la sesión y recuento de páginas. Los resaltados verdes indican nueva actividad desde la última actualización. Haz clic en cualquier fila del visitante para ver los detalles completos de su sesión.
Configuración
Intervalo de actualización
Con qué frecuencia se actualiza la fuente en directo. Por defecto: 15 Los valores más bajos (5-10s) proporcionan actualizaciones más rápidas, pero utilizan más recursos del servidor.30-60s) son más fáciles en el servidor pero menos en tiempo real.
Umbral activo
Cuánto tiempo se considera que un visitante está "activo" después de su última carga de página. 90 Si un visitante carga una página y luego la lee durante 10 segundos, 2 Si no haces clic en ellos durante 15 minutos, desaparecen de la transmisión en directo después del umbral.
Botón de pausa
Haga clic en Pausa para detener la actualización automática. Útil cuando desea leer los detalles sin que se actualice la lista, haga clic en Reanudar para reiniciar.
Ejemplos de trabajo
Detectar un lead caliente durante una campaña
Escenario:
You are running a product launch. A visitor just viewed your homepage, then features, then pricing, and is now on the checkout page.
Qué hacer:
Este es un comportamiento de alta intención. En el Live Feed: (1Haga clic en el visitante para ver su sesión. (2) Si inician un chat, la IA tendrá el contexto completo de su viaje. (3) Si se van sin comprar, se convierten en un lead en la página de Leads. (4Considera la posibilidad de crear una regla proactiva para mostrar un mensaje de chat cuando los visitantes lleguen al proceso de pago.
Demasiados visitantes del mismo IP
Escenario:
You see 20 visitors from the same IP address, all on different pages.
Qué hacer:
Esto podría ser:1) Una oficina con Internet compartido. Compruebe si las visitas parecen seres humanos reales (páginas diferentes, duración razonable de sesión). (2Un bot o raspador. Compruebe si las sesiones son muy cortas (0-1segundos) o golpear páginas sistemáticamente. (3) Una prueba de carga. Si usted está ejecutando pruebas automatizadas, excluya el IP de rastreo.
¿Por qué el feed en vivo muestra 0 visitantes cuando mi sitio tiene tráfico?+
Cheque: (1) ¿Está instalado el script del widget en su sitio? (2) ¿Es correcta la clave del sitio? (3) ¿Ha pasado el umbral activo? (4) ¿Están los visitantes usando bloqueadores de anuncios agresivos que bloquean el script de seguimiento?
¿Puedo filtrar la transmisión en directo por país o dispositivo?+
El feed en vivo muestra todos los visitantes activos. Para las vistas filtradas, utilice el registro de visitantes o sesiones páginas con sus opciones de filtro.
Análisis
Páginas principales
Las páginas principales muestran qué páginas de tu sitio web reciben más tráfico, y las clasifica por visitas, interacción, conversiones y actividad de soporte. Úsala para identificar el mejor contenido, encontrar páginas con un rendimiento deficiente y descubrir páginas que generan preguntas de soportes técnicos.
Páginas principalesTus páginas clasificadas por tráfico y participación, para que puedas detectar el contenido principal y las páginas que generan apoyo.
Lo que muestra cada página
Página URL
La ruta completa URL. Las páginas similares (por ejemplo, variantes de productos) se agrupan si la agrupación está habilitada.
Vistas
Número total de veces que se cargó esta página en el intervalo de fechas seleccionado.
Visitantes únicos
Cuántas personas diferentes vieron esta página (una persona que ve la misma página dos veces cuenta como 1 única).
Tasa de rebote
Porcentaje de visitantes que abandonaron tu sitio después de ver solo esta página. Alto rebote en las páginas de destino = problema, alto rebote de las páginas "gracias" = normal
Tiempo medio
El tiempo que los visitantes pasan en esta página de media. Muy corto = no leer, muy largo en una página de formularios = confusión.
Comienza el chat
Si el chat comienza con un número elevado de visitas en una página del producto, es posible que la descripción no esté clara.
Tickets de soporte
Cuántos tickets de soporte fueron creados por los visitantes que estuvieron en esta página. Contador alto de tickets = problema potencial de experiencia del usuario o contenido.
Ejemplos de trabajo
Encontrar páginas que generan preguntas de soporte
Escenario:
Your support team keeps getting questions about shipping. Which page is failing?
Qué hacer:
Ordena las páginas principales por "Tickets de soporte" o "Inicios del chat" en orden descendente. Busca páginas de productos o de envío con un número elevado. La página con la mayoría de preguntas sobre soporte probablemente tenga información poco clara.
Encuentra páginas con una tasa de salida alta
Escenario:
You want to know where people leave your site most often.
Qué hacer:
Ignora las páginas que son puntos de salida naturales (páginas de agradecimiento, páginas de confirmación). Concéntrate en las páginas de productos, precios y características que deberían mantener a los visitantes comprometidos. Estas necesitan mejores llamadas a la acción o un contenido más claro.
¿Por qué una página muestra 0 visitas a pesar de que sé que recibe tráfico?+
Cheque: (1) ¿Está instalado el widget de seguimiento en esa página específica? Es posible que las aplicaciones de una sola página no generen visitas a la página cuando se cambie la ruta.2) ¿Está excluida la página en los ajustes de seguimiento? (3) ¿Una CDN sirve una versión en caché sin el script de seguimiento?
Análisis
Inteligencia geográfica
Geo Intelligence muestra de dónde provienen tus visitantes por país, ciudad, dispositivo y fuente. Úsala para comprender tus mercados geográficos, decidir sobre el soporte del idioma, planificar el marketing regional y detectar patrones de tráfico sospechosos.
GeoDonde tus visitantes vienen de (por país, ciudad y dispositivo) a mercados de tamaño y detectar tráfico inusual.
Lo que ves
Gráfico de barras de países principales
Haga clic en un país para ver los datos a nivel de ciudad y luego haga clic en el botón "Ver más".
Donut del país
Desglose visual del tráfico por país. Pase el cursor para ver los porcentajes.
Tabla completa de países
Cada país con visitantes en el período seleccionado, mostrando el recuento de visitantes, el recuente de sesiones, la tasa de rebote y la tasa d conversión.
Desglose por ciudad
Haz clic en un país para ver qué ciudades de ese país tienen más visitantes.
Cómo funciona la detección de GeoIP
OpsIQ detecta la ubicación del visitante de dos maneras: (1) Cloudflare si su sitio está detrás Cloudflare, la detección del país es automática y precisa. (2) Base de datos MaxMind GeoLite2. Descargue la base de datos gratuita y configure el camino en Ajustes. La detección a nivel urbano requiere la Base de Datos GeoLites2-City, no sólo la base.
Tráfico VPN y proxy
Visitors using VPNs will appear to come from the VPN server's location, not their real location. This is by design. OpsIQ cannot and should not try to bypass VPNs. If you see unusual country patterns, consider that 10-20% of visitors may be using VPNs.
Ejemplos de trabajo
Tráfico de país inesperado
Escenario:
You run a US-only business but 30% of traffic is from India.
Qué hacer:
Cheque: (1) ¿Son estos visitantes reales? Mira la duración de las sesiones y las páginas vistas. Sesiones muy cortas con alto rebote = probablemente bots. (2) ¿Te encuentran a través de Google? Comprueba el remitente. (3Si el tráfico es genuino y está comprometido, considera la posibilidad de agregar precios o contenido específicos para India.
Decidir sobre el soporte de idiomas
Escenario:
You want to know if you should translate your site into Spanish.
Qué hacer:
Si los países de habla hispana (España, México, Colombia, Argentina, etc.) representan más del 10% de tu tráfico con tasas de rebote bajas, vale la pena considerar la traducción. También revisa: ¿los visitantes de estos países se convierten a tasas similares a las de tu mercado principal?
Planificación de turnos de apoyo regional
Escenario:
You need to decide support team hours for different time zones.
Qué hacer:
Utilice el mapa de calor por hora (en Dashboard) combinado con Geo Intelligence. Si 40% La mayoría de su tráfico es de Europa y 35% El mapa de calor muestra exactamente cuándo cada región es más activa, lo que le permite ver la actividad en el momento adecuado.
País con visitas pero sin pedidos
Escenario:
Germany shows 500 visitors this month but zero sales.
Qué hacer:
Investigar: (1) ¿Están rebotando en la página de precios? Tal vez tu precio no sea competitivo para ese mercado.2) ¿Hacen envíos a Alemania? Compruebe si su página de envío menciona Alemania. (3) ¿Está disponible su pago en EUR? La incompatibilidad de divisas causa pagos abandonados. (4) ¿Son estos visitantes de una sola fuente que podría ser tráfico de baja intención?
¿Por qué un visitante muestra el país "Desconocido"?+
Para ello, puede configurar Cloudflare (que añade los encabezados geográficos automáticamente) o descargar la base de datos MaxMind GeoLite2 y establecer la ruta del archivo en Configuración > Ruta GeoIP.
¿Puedo bloquear el tráfico de países específicos?+
OpsIQ Utilice su servidor web o el navegador de Internet para acceder a la página. Cloudflare Reglas de cortafuegos para el bloqueo basado en países.OpsIQ Se centra en la visibilidad, no el control de acceso a nivel de red.
Análisis
Embudo de intención
El embudo de intención clasifica las sesiones de los visitantes según lo que parecen estar intentando hacer: navegar, investigar, comparar, comprar, obtener asistencia o abandonar. Úselo para comprender el balance de la intención en su sitio e identificar dónde abandonan los visitante.
Embudo de intenciónSesiones clasificadas por intención (creación, investigación, comparación, compra) para que pueda ver exactamente dónde la gente se cae.
Categorías de intención
Navegación
Sesiones cortas, pocas páginas, sin detectar ningún objetivo específico.
Investigación
Visitantes que leen páginas de productos/funciones, documentos o contenido del blog. Tiempo más prolongado en la página, varias páginas de contenido.
Comparación
Visitantes que ven precios, comparaciones de planes o tablas de características.
Compra
Visitantes en las páginas de registro, carrito o registro. Alta intención. Estas son tus oportunidades de conversión.
Buscar apoyo
Visitantes en páginas de ayuda, páginas de contacto o que inician el chat.
Rebote
Visitantes que abandonaron después de una página. Baja participación.
Cómo leer el embudo
Interpretando tu embudo
Escenario:
1,000 visitors viewed Pricing. 270 opened chat. 92 started checkout. 64 paid. 18 opened support tickets.
Qué hacer:
Pricing page is strong enough to create intent. Chat is important in the buying path: 27% of pricing visitors engage with chat before buying. Support tickets after checkout may indicate activation or payment confusion. Action: (1) Ensure AI chat answers pricing questions well. (2) Investigate the 18 post-checkout support tickets for common issues.
Filtros de tiempo
Use el filtro de rango de fechas para comparar patrones de intención a través de períodos. Por ejemplo, compare la semana del viernes negro a una semana normal. Usted debe ver un pico en "Comprar" intento y posiblemente "Buscar apoyo" si sus promociones crearon confusión.
¿Cómo clasifica OpsIQ la intención?+
OpsIQ Vistas a la página URLs, comportamiento de sesión y patrones de tiempo. Las páginas de precios indican la intención de comparación. La página de pago indica la intensión de compra.
¿Puedo personalizar las categorías de intención?+
Las categorías están integradas en función de los patrones comunes de comportamiento web. La clasificación personalizada de intenciones está incluida en la hoja de ruta.
Análisis
Embudos, retención y rutas
Cree recorridos personalizados a partir de pasos de página o eventos, mida la retención de cohortes y descubra las rutas que los visitantes toman con más frecuencia en un sitio.
Pantalla de productoUn embudo personalizado muestra cada paso de página/evento, los visitantes restantes y el porcentaje de conversión.
Embudos
Crear un embudo con nombre 2 a 8 Establece la ventana de conversión en horas; un visitante solo se cuenta cuando los pasos ordenados ocurren dentro de esa ventana. Usa el drop entre las etapas para elegir dónde inspeccionar la reproducción, errores, velocidad de página o mensajes.
Retención
La retención agrupa a los visitantes en cohortes semanales y muestra cuántos regresan. 6, 8 o 12 Mantenga estable la definición de cohorte al comparar lanzamientos o campañas.
Caminos
Rutas muestra las secuencias de páginas más comunes. Elija una longitud de ruta entre 2 to 5 Úsala para encontrar desvíos inesperados, salidas comunes y contenido que precede repetidamente a la conversión, así como para identificar las páginas de interés.
Para reaccionar ante un paso completado, crea un objetivo de conversión, segmento, desencadenante o flujo de trabajo y luego haz clic en el botón "Continuar".
Análisis
Repetición de sesión
Session Replay te permite ver una línea de tiempo de lo que un visitante hizo en tu sitio: qué elementos hicieron clic, cómo se desplazaron, dónde pasaron el cursor y qué escribieron (con campos confidenciales ocultos) Úsala para diagnosticar problemas de experiencia del usuario, verificar informes de errores y comprender la confusión del cliente.
Repetición de sesiónReplay exactamente lo que hizo un visitante: clics, pergaminos, tipeado (campos sensibles enmascarados), en un escrubador de línea temporal.
Encontrar la sesión adecuada
En la página Sesiones, busca sesiones con problemas reportados, un alto recuento de páginas sin conversión o sesiones de clientes que han abierto tickets de soporte. Haz clic en el icono de repetición para abrir la vista de línea de tiempo.
Lo que muestra la repetición
Cronología
Una barra horizontal que muestra los eventos a lo largo del tiempo. Haga clic en cualquier lugar de la línea de tiempo para saltar a ese momento.
Navegación de la página
Cada carga de página aparece como un segmento en la línea del tiempo, donde puedes ver el camino exacto que tomó el visitante.
Clics
Los eventos de clic se muestran como puntos en la línea de tiempo y como resaltados en la reconstrucción de página.
Desplazamiento
La profundidad de desplazamiento se rastrea para que puedas ver hasta dónde ha llegado el visitante.
Interacción de formularios
La entrada de texto en campos sensibles y con contraseña está oculta por defecto, pero se puede modificar para que no aparezca.
Privacidad y enmascaramiento
La reproducción de la sesión enmascara los campos confidenciales del formulario de forma predeterminada. Los campos de contraseña, las entradas de tarjeta de crédito y los campos marcados con data-opsiq-mask nunca se registran. Puede configurar reglas de enmascaramiento adicionales en Configuración > Seguimiento. Si su política de cumplimiento lo requiere, puede inhabilitar por completo la reproducción.
Diagnosticar un checkout roto
Escenario:
A customer says "I tried to buy but the button did nothing."
Qué hacer:
Encuentra su sesión en la página Sesiones (búscala por correo electrónico). Abre la repetición. Mira el segmento de la página de pago.1) ¿Hicieron clic en el botón correcto? (2) Did a JavaScript ¿Se produce un error? (Compruebe la página de errores JS para ese momento.)3) ¿La página se recargó o mostró un mensaje de error? (4) ¿Estaba un campo obligatorio en blanco? La repetición muestra exactamente lo que sucedió.
¿Cuánto almacenamiento utiliza la reproducción de sesión?+
Los datos de reproducción crecen con el volumen de tráfico. Utiliza la configuración de retención para limpiar automáticamente los datos de reproducciones antiguos. Para sitios web con mucho tráfico, considera un período de retenção de reproducción más corto (por ejemplo, 30 días) para administrar el almacenamiento.
¿Pueden los visitantes optar por no reproducir?+
Si "Respetar No Rastrear" está habilitado en Configuración, los visitantes con encabezados DNT no se registran. También puede excluir páginas específicas de la reproducción en la configuración de seguimiento.
Análisis
Registro de eventos
El registro de eventos muestra todos los eventos que OpsIQ ha registrado: vistas de página, clics, inicios de chat, creaciones de tickets, ventas y eventos personalizados. Úselo para depurar integraciones, verificar la entrega de webhook y comprender la secuencia de acciones.
Registro de eventosA timeline of everything OpsIQ records (pageviews, chats, sales, webhooks, custom events) for debugging and audit.
Eventos incorporados (automáticos)
pageview
Se activa cada vez que se carga una página rastreada. Incluye URL, título, referencia y marca de tiempo.
chat.started
Se activa cuando un visitante abre el widget de chat y envía su primer mensaje.
chat.message
Se dispara por cada mensaje en una conversación de chat (tanto visitante como IA/agente).
ticket.created
Se dispara cuando se crea un nuevo ticket de soporte (desde chat, correo electrónico, widget o administrador).
ticket.replied
Se activa cuando se agrega una respuesta a un ticket.
order.completed
Se activa cuando se completa una compra a través de una plataforma conectada.
form.submitted
Se activa cuando se envía un formulario con seguimiento (si el seguimiento de formularios está habilitado).
identify
Se activa cuando un visitante se identifica a través de un token de identidad.
Error de seguridad.
Se dispara cuando un intento de inicio de sesión falla.
Eventos personalizados
Puedes enviar eventos personalizados desde tu sitio web o servidor a OpsIQ Los eventos personalizadoes son útiles para rastrear las acciones específicas de tu negocio: clics en botones, uso de funciones, reproducciones de videos, descargas, etc.
JavaScript · evento personalizado desde el navegador
// Send a custom event from the browser
window.OpsIQ = window.OpsIQ || [];
window.OpsIQ.push(["track", "plan_selected", {
plan: "pro",
billing: "annual",
value: 99
}]);
PHP · registrar una actividad de contacto desde su servidor
Filtrar por nombres de eventos específicos: pageview, chat. started, ticket. created, etc.
Rango de fechas
Mostrar eventos de un período específico.
Buscar
Busque datos de eventos por palabra clave (URL, correo electrónico, valores de propiedad de evento).
¿Cuánto tiempo se guardan los eventos?+
Los eventos siguen la política de retención establecida en Configuración. Por defecto: 90 días. Los eventos de alto valor (compras, eventos de seguridad) se pueden configurar con una retención más larga.
¿Puedo usar eventos en experimentos A/B?+
Al crear un experimento, elija un evento de conversión. Puede usar cualquier evento integrado o personalizado como objetivo de conversión, pero no debe ser una conversión en sí misma.
Análisis
Experimentos A/B
Los experimentos te permiten probar dos versiones de una página o función y medir cuál tiene mejor rendimiento. OpsIQ realiza un seguimiento de las impresiones, conversiones y significación estadística.
Experimentos A/BEjecuta dos variantes, observa las conversiones y la significación estadística, y declara al ganador.
Cómo funcionan los experimentos
1
Crear un experimento
Dale un nombre, define tu métrica principal (evento de conversión) y establece las variantes (control y prueba).
2
Ejecútalo
OpsIQ asigna de forma aleatoria a los visitantes a las variantes y realiza un seguimiento de su comportamiento. No cambies el experimento mientras se está ejecutando.
3
Lea los resultados
Después de recopilar suficientes datos, comprueba el nivel de confianza. 95% confianza significa que puedes estar _95% seguro de que la diferencia es real y no una coincidencia aleatoria.
Estados del experimento
Borrador
Se ha creado pero aún no se ha iniciado. Aún puede editar variantes y métricas.
Ejecución
Asignar activamente visitantes a variantes. No editar mientras se ejecuta.
Completado
Alcanzó significación estadística o se detuvo manualmente. Los resultados son definitivos.
Archivado
Los resultados se han revisado y el experimento ya no es necesario en la lista activa.
Las mejores prácticas
Defina su métrica antes del lanzamiento
Decide qué vas a medir antes de empezar, elegir una métrica después de ver los resultados introduce sesgo.
Excluir el tráfico interno
Añade las direcciones IP de tu equipo a la lista de exclusión para que las visitas del personal no sesguen los resultados.
Corre lo suficiente
No detenga un experimento después de 100 visitantes, necesitará cientos o miles de visitantes por variante para obtener resultados fiables.
Prueba un cambio a la vez
Si cambias el título Y el color del botón, no sabrás qué cambio causó la mejora.
Registra tu decisión
Una vez que el experimento haya terminado, anota qué variante ganó y por qué elegiste implementarla.
¿Cuántos visitantes necesito para un experimento válido?+
It depends on the baseline conversion rate and the effect size you want to detect. As a rule of thumb: at least 500 visitors per variant for a 20% effect size. For smaller effects, you need thousands.
¿Puedo ejecutar varios experimentos al mismo tiempo?+
Sí, pero ten cuidado: si dos experimentos afectan a la misma página, sus resultados pueden interactuar. Es más seguro ejecutar los experimentos en diferentes páginas o funciones al mismo tiempo.
Análisis
Errores de JavaScript
JavaScript Errores recopila los errores del lado del cliente de los visitantes de su sitio web. API Utilice esta herramienta para encontrar y corregir errores que afectan a los clientes reales, como problemas con el servicio de atención al cliente.
Errores de JSVisitas reales que golpean la superficie de código roto aquí (mensaje, fuente, navegador y con qué frecuencia) para poder arreglar lo que importa.
Lo que muestra cada error
Mensaje de error
El texto de error JavaScript (por ejemplo, "TypeError: No se pueden leer las propiedades de undefined").
Página URL
En qué página se produjo el error.
Navegador y dispositivo
El navegador y el tipo de dispositivo que vio el error. Algunos errores son específicos del navegador.
Traza de pila
La ubicación del código donde se produjo el error. Haga clic para expandir la traza de pila completa.
Primero visto
Cuando este error apareció por primera vez.
Visto por última vez
Cuándo se produjo este error por última vez.
Cuenta
Cuántas veces se ha registrado este error.
Sesiones afectadas
Cuántas sesiones de visitantes diferentes experimentaron este error.
Priorizar los errores
No todos JavaScript Estos errores requieren atención inmediata. Priorizar por: (1) errores en páginas críticas (checkout, registro, login), (2) errores con altos recuentos de sesiones, (3) errores que aparecieron recientemente (posible regresión de un cambio de código), (4) errores en su propio código (no scripts de terceros).
Cómo arreglar un botón de pago roto
Escenario:
The JS Errors page shows "TypeError: Cannot read properties of undefined (reading submit)" on /checkout, affecting 45 sessions this week.
Qué hacer:
Esto significa : 45 Los clientes reales no pudieron completar el pago. Pasos: (1) Abre la página en el mismo navegador/dispositivo. (2) Abra la consola del navegador y reproduzca el error. (3) Compruebe el seguimiento de la pila para encontrar la línea exacta de código. (4) Corrige el error, implementa y monitorea que la cuenta de errores sea nula.
¿ OpsIQ captura errores de scripts de terceros?+
Sí, OpsIQ Captura todo JavaScript Errores en la página, incluidos los errores de scripts de análisis, widgets de chat y scripts publicitarios. URL En el rastreo de la pila para centrarse en su propio código.
No se pueden suprimir errores específicos en. OpsIQ, pero puedes filtrar la lista por página. URL Corregir o ignorar los errores de las extensiones del navegador (a menudo se muestran como errores procedentes de fuentes desconocidas).
Ventas
Ventas y conversiones
El seguimiento de ventas conecta tu tienda o plataforma de facturación a OpsIQ para que puedas ver los ingresos junto con el comportamiento del visitante. Cada compra se atribuye a un recorrido del visitant, por lo que sabes qué páginas, campañas y canales generan ingresos.
VentasLa pantalla de ventas real, los ingresos arriba, luego las compras recientes (fecha, cliente, plataforma, cantidad), cada uno atribuido a su fuente de tráfico.
Panel de ventas
Las ventas de hoy
Ingresos de pedidos completados hoy. Se actualiza con cada nuevo evento de pedido desde su plataforma conectada.
Esta semana / este mes / total
Ingresos agregados durante el período. Los reembolsos se restan de estos totales.
Gráfico de tendencias
Gráfico de líneas que muestra los ingresos diarios en el intervalo de fechas seleccionado, con picos (promociones, campañas) y descensos (problemas, estacionalidad).
Principales fuentes de conversión
¿Qué fuentes de tráfico conducen a la mayoría de las compras? Los compradores "directos" suelen marcar tu sitio como favorito.
Compras recientes
Los últimos pedidos con el correo electrónico del cliente, la cantidad, la moneda y los artículos comprados.
Guías de configuración de plataforma
Shopify
Ir a Conectores >Shopify. Crear una aplicación personalizada en su.Shopify admin (Configuración > Aplicaciones y canales de ventas > Desarrollar aplicaciones). Los ámbitos de concesión son: read_orders, read_customers, read _products. API Token de acceso. En OpsIQ, ingrese el dominio de su tienda (p. ej. your-store.myshopify.com) y el token de acceso. Haga clic en Probar conexión. Si tiene éxito, habilite la sincronización webhook para las notificaciones de pedidos en tiempo real.
WooCommerce
Ir a Conectores >WooCommerce. En su. WordPress admin, ir a WooCommerce> Configuración > Avanzado > REST API. Crear una clave con permiso de lectura/escritura. Copie la clave del consumidor y el secreto del consumidor. OpsIQ, ingrese su sitio URL, clave del consumidor y secreto del consumidor. Haga clic en Probar conexión.
BigCommerce
Vaya a Conectores > BigCommerce. En su administrador de BigCommerce, vaya a Configuración avanzada >API Cuentas. Crear una cuenta V2/V3 API Cuenta con ámbito de lectura para pedidos, clientes y productos Copie el token de acceso, el ID del cliente y.API Introducirlos en el campo. OpsIQ y prueba.
Magento 2
Vaya a Conectores > Magento. En su panel de control de Magento, vaya a Sistema > Integraciones. API Active la integración y copie el token de acceso. Introduzca el código en, haga clic en Aceptar e inicie sesión con su cuenta de administrador. OpsIQ Con tu base de Magento URL.
PrestaShop
Vaya a Conectores > PrestaShop. En su administrador de Prestashop, vaya a Parámetros avanzados > Servicio web. Habilite el servicio web y cree una nueva clave. Conceda acceso a pedidos, clientes y productos. Copie la clave e introdúzcala en. OpsIQ Con tu tienda URL.
OpenCart
Vaya a Conectores > OpenCart. Generar API Ingrese sus credenciales desde su panel de administración de OpenCart.API URL, nombre de usuario y clave en OpsIQ. El conector utiliza el REST de OpenCart API Para datos de pedidos y clientes.
osCommerce
Vaya a Conectores > osCommerce. Configure el acceso a la base de datos o API La integración de osCommerce normalmente requiere acceso directo a la base de datos o un SQL Server personalizado.API módulo.
Stripe
Ve a Conectores > Stripe. Copia tu cuenta de Stripe restringida API Agregar una clave desde el Panel de control de Stripe (Desarrolladores > )API La clave necesita acceso de lectura a Clientes, Cargos, Facturas y Suscripciones. Introduzca la clave en. OpsIQ. Configurar el punto final de webhook para eventos en tiempo real.
Personalizado / otras plataformas
Usar el REST API Envía eventos order.completed con el correo electrónico del cliente, la cantidad, la divisa y los artículos. Ver los Eventos API Sección para el formato de la carga útil.
Comprender tu embudo de ventas
Principales fuentes de conversión
Muestra los canales que traen clientes pagadores. Si Google trae 1000 visitantes y 50 ventas, eso es una5% tasa de conversión. Si el email trae consigo 200 visitantes y 30 ventas, eso es 15%. El correo electrónico es más efectivo por visitante.
Reembolsos
Los pedidos reembolsados se registran por separado y reducen los totales de ingresos netos. Si las tasas de reembolso son altas en una fuente específica, es posible que el tráfico tenga baja calidad.
Manejo de divisas
OpsIQ Almacena la moneda y el importe de la transacción original. Los negocios con varias divisas ven los ingresos en cada divisa, mientras que los informes normalizados utilizan el tipo de cambio configurado.
Ejemplos de trabajo
100 visitantes, cero ventas
Escenario:
Your pricing page gets 100 visitors per day but zero conversions.
Qué hacer:
Investigar:1) Use Session Replay en los visitantes de la página de precios. Vea cómo interactúan con la tabla de precios . (2) Compruebe las páginas superiores para la página de precios del rebote velocidad y hora en página. (3) Chequee conversaciones de chat desde visitantes de página de precios. ¿Qué preguntas hacen? (4) Compare su página de precios a los competidores. (5) Prueba un experimento A/B con diferentes diseños de precios.
Atribución para una campaña de marketing
Escenario:
You sent an email campaign with UTM tags. How do you measure its revenue impact?
Qué hacer:
Vaya a Ventas y filtre por origen. Busque el parámetro UTM de la campaña, verá: (1) Cuántos visitantes vinieron del correo electrónico. (2) Cuántos se convirtieron en ventas. (3) Ingresos totales atribuidos a la campaña. (4) Comparar con el mismo período antes de la campaña.
¿Por qué las ventas muestran cero a pesar de que mi tienda tiene pedidos?+
Cheque: (1) ¿Está el conector de plataforma conectado y en buen estado? Vaya a Conectores y compruebe el estado. (2) ¿Está habilitada la sincronización de webhook? Si se utiliza polling, ¿se está ejecutando el trabajo cron?3) ¿El conector tiene el derecho API ¿Para qué? Shopify, necesitas read_orders.
¿Cómo atribuye OpsIQ una venta a un visitante?+
Cuando un pedido llega a través del conector, OpsIQ hace coincidir el correo electrónico del cliente con un visitante conocido. Si se hizo seguimiento al visitante antes de la compra, la venta se atribuye a su trayecto de visitante, incluida la fuente de tráfico, la página de destino y el historial de sesiones.
¿Puedo añadir ventas manualmente?+
Puede enviar eventos de ventas a través del REST API El formato del evento está documentado en la página de eventos.API sección.
Ventas
Clientes potenciales
Los plomos son visitantes o clientes que muestran la intención de compra o soporte.OpsIQdetecta automáticamente los leads basados en el comportamiento: visitas de página, visitas de retorno, interacciones de chat, salidas y un alto compromiso. Utilice la página Leads para priorizar el seguimiento y alimentar suCRMoleoducto.
Clientes potencialesLa pantalla real de Leads, visitantes de alto nivel como una tabla de búsqueda (IP/email, ubicación, dispositivo, fuente, tiempo en el sitio) con fuentes y países principales.
Lo que hace un lead
Precios de las visitas a la página
Los visitantes que ven tu página de precios o planes están considerando activamente una compra.
Visitas de retorno
Los visitantes que regresan varias veces están comprometidos pero aún no se han convertido.
Interacciones de chat
Los visitantes que comienzan una charla están buscando activamente ayuda, ya sea pre-purchase o post-purcase.
El checkout comienza
Visitantes que llegan a la página de pago pero no completan la compra.
Presentaciones de formularios
Visitantes que envían un formulario de contacto, solicitud de demostración o formulario de registro.
Alta participación de la página
Los visitantes que ven muchas páginas con una larga duración de sesión están investigando profundamente.
Panel de detalle del plomo
Haga clic en cualquier lead para ver su perfil completo:
Identidad
Nombre, correo electrónico y compañía si se conocen. Los leads anónimos muestran IP y ubicación.
Sesiones
Todas las sesiones de este lead con flujo de página, duración y origen.
Páginas vistas
Cada página que visitaron, ordenada por reciente.
Fuente
Cómo te encontraron: orgánico, pagado, social, referencial, directo.
Puntuación de lead
A0-100 Puntuación basada en la intensidad del comportamiento, reciente e intención de página.
Estado de CRM
Si este cliente potencial se ha añadido al CRM como contacto o negocio.
Consejo de ventas
AI-generated suggestion on what to do next (e.g., "Visited pricing 3 times · consider proactive outreach").
Insignia de lead de alto valor
Los clientes potenciales con una puntuación superior a 80 reciben la insignia "Valor alto". Estos son tus clientes potenciale más interesantes, por lo que debes darles prioridad para el alcance, el chat proactivo o la entrada en tu canal de CRM.
Ejemplos de trabajo
Trabajar con un lead caliente
Escenario:
A lead viewed your pricing page 3 times in 2 days, started a chat asking about enterprise plans, but has not purchased.
Qué hacer:
Este es un lead de alta intención. Pasos: (1) Compruebe los detalles de su lead para obtener información sobre la compañía y el rol. (2) Revise la transcripción del chat para necesidades y objeciones específicas. (3) Crear un trato en el CRM con la información recopilada. (4) Asignar una tarea de seguimiento para un miembro del equipo de ventas. (5Si vuelven a la página de precios, la regla proactiva del chat puede activar un mensaje personalizado.
Convertir leads anónimos en contactos de CRM
Escenario:
You have 50 anonymous leads with high scores but no email addresses.
Qué hacer:
Opciones: (1) Crea una regla proactiva que ofrezca un descuento o la descarga de recursos a cambio del envío de correos electrónicos en páginas con alta intención.2) Usa el widget de chat para pedir un correo electrónico cuando los visitantes anónimos inicien una conversación.3) Añade un token de identidad a tus páginas de inicio de sesión/registro para que los visitantes recurrentes sean identificados automáticamente.
¿Cómo se calcula el puntaje de leads?+
La puntuación considera: reciente de las visitas (reciente = más alto), frecuencia de las visites (más = mayor), páginas vistas (precio/checkout = superior), duración de la sesión (más largo = máximo), interacciones en el chat (engaged = máxima) y visitas repetidas (sesiones múltiples = maximo).
¿Puedo personalizar las reglas de puntuación de leads?+
En la configuración de CRM, puede agregar reglas de puntuación de clientes potenciales que mejoren la puntuación en función de palabras clave, eventos, fuentes o patrones de página específicos.
CRM
Su CRM · empezar aquí
OpsIQ envía un CRM completo que captura la verdad del cliente, limpia datos, puntua guías, ofertas de entrenadores, pronósticos ingresos y actos, con inteligencia del sitio web, soporte, tickets, productos y pagos como uno gráfico en vivo. Cada acción AI es fuente, explicable, reversible y controlado por aprobación.
CRM de IAUn CRM IA dirigido por cuatro agentes especializados, y un sello de confianza que decide cuánto hacen ellos mismos.
Resumen de páginas CRM
AI CRM (Centro de Comando)
Comience aquí
Su pantalla de inicio diaria: pulso de ingresos, lo que encontró la IA, qué hizo, cola de aprobación, próximos movimientos, estado del agente y ROI.
Contactos
Núcleo
Personas y empresas en tu CRM. Busca, filtra, puntualiza y gestiona perfiles.
Pipeline
Núcleo
Tablero de trato visual con etapas de arrastrar y soltar, probabilidad de ganar y entrenamiento de IA.
Previsión e Informes
Núcleo
Previsión de nivel de junta: comprometida, probable, mejor caso, con intervalos de confianza y seguimiento de precisión.
Ciclo de vida
Núcleo
Dónde se encuentra cada cliente: activo, en riesgo, listo para la expansión, con fecha de renovación o en proceso de abandono.
Crear mi CRM
Configuración
Describe tu configuración de CRM en inglés sencillo. OpsIQ genera un plan reversible y lo aplica al aprobarlo.
CRM de Salud
Opciones
Página de autocomprobación: esquema, agentes, rutas, acciones de IA y recuentos de datos en vivo.
Cómo OpsIQ te mantiene seguro
Pregunta antes de actuar
Las propuestas de IA van a la cola de aprobación, donde puedes aprobarlas, editarlas o rechazarlas. Nada pasa sin tu opinión.
Nunca sobrescribir
Cuando la IA sugiere un cambio, muestra el valor actual y el propuesto. Los datos introducidos por humanos tienen protección de procedencia.
Todo es reversible
Cada acción de IA se registra en el diario y puede deshacer cualquier cambio con un solo clic.
Explicable
Cada recomendación de IA muestra su razonamiento y las fuentes de datos que utilizó.
¿Nuevo? Empieza aquí
1
Abrir AI CRM
Haga clic en AI CRM en la barra de navegación izquierda. El Centro de comandos muestra su estado actual.
2
Compruebe el estado de CRM
Abra CRM Health para verificar que el esquema, los agentes y las rutas estén listos.
3
Importar contactos
Si un conector está activo (Shopify, WHMCS, etc.), los contactos se importan automáticamente. De lo contrario, CSV o crear manualmente.
4
Crear un embudo
Ve a Pipeline y crea tu primer embudo con etapas (por ejemplo, Lead, Calificado, Propuesta, Negociación, Ganado, Perdido).
5
Añade tu primer trato
Cree un trato a partir de un contacto, establezca el importe y la etapa y deje que el Coach del trato lo guíe.
¿Necesito usar el CRM?+
No, el CRM es opcional. OpsIQ funciona perfectamente como una plataforma de seguimiento + soporte + IA sin el CRM, habilite cuando esté listo para administrar las ventas y las relaciones con los clientes.
¿Puede el CRM funcionar sin conectores?+
Los conectores enriquecen el CRM con datos de la plataforma (pedidos, suscripciones, tickets), pero no son obligatorios.
¿Qué es la capa de confianza?+
La capa de confianza es el sistema de seguridad que controla lo que la IA puede hacer. Modo copiloto (predeterminado): AI propone, humano apruebaModo piloto automático (opt-in): IA actúa automáticamente en operaciones reversibles y de bajo riesgo.
CRM
La pantalla de inicio de AI CRM
El Centro de Comando es tu informe diario, ábrelo cada mañana para ver qué ha pasado, qué necesita atención y qué hacer a continuación.
Centro de ComandoEl centro de mando real: cambiar entre el pronóstico, la tasa de ganancia y Pipeline, y trabajar la cola propuesta AI, aprobar o descartar los acuerdos, movimientos de escenario y tareas que sugiere.
Lo que muestra el Centro de comandos
Los números de hoy
Valor de tubería, ofertas ganadas / perdidas, nuevas pistas, ofertas activas y tendencia de ingresos, una instantánea de su estado actual.
Lo que OpsIQ encontró
Información descubierta por la IA: negocios estancados, cuentas en riesgo, nuevas oportunidades, problemas de calidad de datos y señales del mercado.
Lo que hizo OpsIQ
Acciones que la IA ha realizado (en Piloto automático) o propuesto (en Copiloto): avances de etapa, actualizaciones de puntuación, enriquecimiento de contactos y creación de tareas.
Necesita aprobación
Una cola de propuestas de IA esperando su decisión. Cada una muestra la acción, el razonamiento y las pruebas propuesta.
Los próximos movimientos
Anexo:Edificios y estructuras del Reino Unido 10 Las cosas más importantes que hacer hoy: dar seguimiento a un negocio caliente, revisar una cuenta en riesgo, investigar un nuevo cliente potencial, etc.
Estado de ayudante
Salud de los agentes de IA: Captura, Administrador de datos, Inteligencia de tratos, Entrenador de trato, SDR, Retención. Verde = en ejecución, ámbar = necesita atención, rojo = error.
Resultados
Seguimiento del ROI: negocios influenciados por la IA, tiempo ahorrado, precisión de las predicciones y comparación con el trabajo manual de CRM.
Flujo de trabajo de la reunión informativa matutina
1
Lea los números de hoy
Comprueba el estado de tu pipeline y la tendencia de tus ingresos.
2
Borrar la cola de aprobación
Revise cada propuesta de IA, apruebe acciones seguras, edite cuando sea necesario y rechace las malas sugerencias.
3
Compruebe lo que OpsIQ encontró
Lea los insights de IA. ¿Hay algún trato en riesgo? ¿Existen nuevas oportunidades?
4
Trabajar la lista de próximos movimientos
Comience con la prioridad más alta, que el IA ha clasificado por urgencia e impacto potencial.
Ponerse al día después del tiempo libre
Escenario:
You were away for a week. What happened while you were gone?
Qué hacer:
Abre el Centro de Comando y comprueba: (1) "¿Qué OpsIQ did" muestra todas las acciones de IA durante su ausencia. (2) "Necesita aprobación" muestra propuestas esperando su revisión. (3) "¿Qué OpsIQ"No se encontró" resalta elementos urgentes. (4) Establezca el intervalo de fechas del panel en su período de ausencia para ver la tendencia.
CRM
Contactos, empresas y ofertas
El CRM organiza sus relaciones comerciales en cuatro objetos: Contactos (personas), Empresas (organizaciones), Negocios (oportunidades de ingresos) y Tareas (acciones de seguimiento).
Objetos de CRMCuatro objetos básicos (contactos, empresas, ofertas y tareas) vinculados a un gráfico de clientes conectado.
Contactos
¿Qué es un contacto?
Una persona en tu CRM, que puede ser un cliente, un prospecto, un socio o un lead. Los contactos tienen un correo electrónico, nombre, empresa, etiquetas, etapa del ciclo de vida y calificación de atractividad.
Buscar contactos
Usa la barra de búsqueda para buscar por nombre, correo electrónico, empresa o etiquetas. Usa filtros: etapa del ciclo de vida, puntuación de lead, fuente, país, fecha de última actividad, propietario asignado.
Perfil de contacto
Haga clic en un contacto para ver su perfil completo: información personal, empresa, ofertas, actividades, tickets, chats, visitas al sitio web, puntuación de clientes potenciales e información sobre IA.
Puntuación de calidez
A0-100 Puntuación calculada a partir de señales de comportamiento: visitas al sitio web, participación por correo electrónico, interacciones en el chat, historial de compras y reciente.
Empresas
... más entradas...
Enlace de contacto-empresa
Los contactos están vinculados a las empresas por dominio de correo electrónico o asignación manual, una empresa puede tener muchos contactos.
Ofertas
Qué es un trato
Los acuerdos tienen un título, una cantidad, un proceso, una etapa, probabilidad de ganar, fecha de cierre, propietario asignado y contactos/empresa asociados.
Probabilidad de ganar
Un porcentaje de probabilidad de ganar el trato. Se establece manualmente o se calcula mediante IA en función de los datos históricos de ganancias.
Tratar la salud
Verde (saludable), ámbar (en riesgo) o rojo (detenido): según la reciente actividad, duración de la etapa y señales de interacción.
Tareas
Qué es una tarea
Las tareas tienen un título, fecha de vencimiento, prioridad, tipo (llamada, correo electrónico, reunión u otro) y contacto/negocio vinculado.
Tareas generadas por IA
La IA crea tareas automáticamente cuando detecta algo que necesita atención: hacer un seguimiento de una transacción estancada, responder a una cuenta en riesgo o investigar un nuevo cliente potencial.
Encontrar leads calientes
Escenario:
You want to see all high-score contacts in the UK who have not been contacted recently.
Qué hacer:
Ir a Contactos. Filtrar por: Puntaje de plomo 80, País = Reino Unido, Última actividad 7 hace días. Clasificar por puntaje de plomo descendiendo. Estos son sus mejores pistas descuidadas, priorizar el alcance.
Crear un trato a partir de un contacto
Escenario:
A contact just expressed interest in your enterprise plan during a chat.
Qué hacer:
Abre el perfil del contacto. Haz clic en "Crear trato". Ingresa el título del trato (por ejemplo, "Acme Corp - Enterprise Plan"), la cantidad, el canal y la etapa (por ej., "Calificado").
CRM
El pipeline (tu tablero de tratos)
El Pipeline es un tablero visual donde los tratos se mueven a través de las etapas de izquierda a derecha. Arrastra y suelta cartas para avanzar en el trato, cada tarjeta muestra la cantidad del trato, probabilidad de ganar y estado de salud.
PipelineLa pantalla real del embudo: estadísticas en vivo (valor abierto, pronóstico ponderado), una cola de aprobación de IA para los tratos propuestos y el tablero de arrastrar y soltar.
Usando la placa de tubería
1
Ver tus ofertas
El canal muestra todas las ofertas activas como cartas dispuestas en columnas (etapas) y cada cabecera de columna muestra el valor total de las ofertas en esa etapa.
2
Arrastra para avanzar
Si el movimiento falla (error de validación), la carta se ajusta de nuevo a su posición original, y si no lo hace, la tarjeta se vuelve a colocar en su lugar.
3
Insignias de tarjetas de cheque
Insignia verde = saludable (actividad reciente, en el camino correcto). Ámbar = en riesgo (se está desacelerando, necesita atención). Rojo = estancado (sin actividad durante demasiado tiempo).
4
Haga clic para más detalles
Haga clic en una tarjeta para abrir el panel de detalles del trato con contactos, actividades, resumen del asesor de tratos y acciones rápidas.
La cola de aprobación
Las propuestas de IA aparecen en la cola de aprobación, en la parte superior de la página del embudo. Cada propuesta muestra lo que quiere hacer la IA, por qué y las pruebas.
Aprobar
La acción se ejecuta a través de la capa de confianza y se registra en el diario.
Editar
Modificar la propuesta antes de aprobarla, por ejemplo, cambiar el nivel sugerido o ajustar la cantidad.
Rechazar
Rechazar la propuesta: La IA aprende de los rechazos para hacer mejores sugerencias en el futuro.
Probabilidad de ganar explicada
La probabilidad de ganar se puede establecer manualmente o calcularla la IA. Cuando la IA lo calcula, utiliza un modelo entrenado en sus propios acuerdos cerrados (ganados y perdidos). Si no tiene suficientes datos históricos, la IA usa la probabilidad predeterminada del escenario. $10,000 deal at 30% La probabilidad contribuye $3,000 al pronóstico "probable".
Mover un trato a Won
Escenario:
A customer signed the contract and paid.
Qué hacer:
Arrastra la carta repartida a la etapa "Ganado". OpsIQ will: (1) Marca el trato como cerrado-ganado. (2) Actualizar el pronóstico. (3) Añadir una actividad "Ganado" a la línea de tiempo. (4) Si está configurado, desencadena un evento de webhook (crm.deal.won).5) Actualiza la etapa del ciclo de vida del contacto a "Cliente".
Detección de ofertas atascadas
Escenario:
You want to find deals that have been in the same stage for too long.
Qué hacer:
Busca insignias rojas (detenido) en el tablero de canales. Estos negocios no han tenido actividad durante más tiempo que el umbral de putrefacción configurado (establecido en Configuración de CRM > Canales). Haz clic en cada negocio bloqueado para ver la recomendación del Coach de Negocios para reactivarlo.
¿Puedo tener múltiples canalizaciones?+
Vaya a Configuración de CRM > Canalizaciones para crear canalizaciones adicionales. Casos de uso comunes: separar las canalizacione para nuevos negocios y renovaciones, o para diferentes productos/servicios.
¿Qué sucede cuando arrastro un trato a "Perdido"?+
El acuerdo está marcado como cerrado-perdido. Se le pedirá una razón de pérdida. El trato se retira del tablero activo pero se puede encontrar en el filtro de ofertas cerradas. El contacto permanece en el CRM.
CRM
Coaching de tratos
El entrenador de Deal analiza cada acuerdo y le da un resumen con estado de salud, señales de riesgo, personas claves, una lista de verificación de calificaciones, preparación para reuniones y las siguientes acciones sugeridas. Todo es fuente. El autobús muestra qué ticket, chat o actividad cada reclamación viene de.
Tranquila.El entrenador marca por qué un acuerdo puede deslizarse (cada señal cita su fuente) y le da el siguiente movimiento para tomar.
Lo que el entrenador te dice
Explicación de salud
Señales específicas: días en la etapa, fecha del último contacto, frecuencia de actividad, menciones de competidores, patrones de objeción.
Señales
Categorizado en: objeciones planteadas, menciones de competidores, discusiones sobre precios, indicadores de riesgo de soporte, señales de renovación/expansión Cada señal se vincula a su fuente (transcripción del chat, ticket, correo electrónico, actividad).
Mapa de campeones y bloqueadores
Quién está ayudando al trato (campeón) y quién se resiste (bloqueador), basado en el análisis de interacción y los roles de contacto.
Lista de verificación de calificación
Lista de verificación MEDDICC o BANT (configurable) que muestra qué criterios de calificación se cumplen y cuáles faltan. Grado: A, B, C, D o F.
Preparación de reuniones
Antes de una reunión programada, el coach genera un resumen: agenda, puntos clave a cubrir, preguntas a hacer, riesgos a abordar y materiales para preparar.
Planes de contestación y llamadas
Sugerencia del siguiente mensaje o guion de llamada basado en el estado actual del trato e interacciones recientes.
Cronología de las pruebas
Cada reclamación que el coach hace enlaza a una fuente: un número de ticket, ID de transcripción del chat, fecha de actividad o visita al sitio web.
Cómo usar el entrenador
1
Lea el informe
Abra cualquier trato y desplácese hasta la sección de Negocios, lea el estado del trato y las señales clave.
2
Cerrar brechas de cualificación
Si falta el "Comprador Económico", planifique identificar y comprometerse con el titular del presupuesto.
3
Actuar sobre las sugerencias
El entrenador sugiere acciones concretas. Haga clic para crear una tarea, redactar un correo electrónico o programar una reunión, todo enrutado a través de la cola de aprobación.
Preparación para una reunión importante
Escenario:
You have a meeting with a prospect tomorrow about a $50,000 deal.
Qué hacer:
Abre el trato y lee la sección de Preparación para la reunión.1) Puntos clave de conversación basados en interacciones recientes. (2) Objeciones que plantearon en el chat la semana pasada.3) Competidor que mencionaron en un ticket de soporte. (4) Preguntas para hacer sobre su línea de tiempo. (5) Factores de riesgo a abordar proactivamente.Utilice este resumen para preparar una agenda enfocada y basada en la evidencia.
Entender por qué un acuerdo está en riesgo
Escenario:
The pipeline shows a red badge on a deal you thought was going well.
Qué hacer:
Haga clic en el trato y lea la explicación de salud del Coach de tratos, que podría decir: "Este trato ha estado en fase de propuesta durante. 22 días (umbral: ) 14 Último contacto fue a las 12:05 11 El contacto principal abrió un ticket de soporte sobre problemas con la migración de datos.5Hace 2 días (ticket #T-892 Sugerencia: aborde la preocupación de migración y programe una llamada de seguimiento". Ahora ya sabe exactamente qué debe arreglar.
CRM
Previsión e informes
Pronósticos de calidad con un rango defendible, explicaciones de cambios a nivel de acuerdo y seguimiento de precisión para que pueda probar y explicar sus números.
PronósticoComprobar, el mejor caso y la tubería de un vistazo, AI ponderado por salud del trato, con precisión rastreada para que puedas defenderlo.
Categorías de pronóstico
Comprometido
Ofertas con 80% o más probabilidad de ganar. Estas son las ganancias más probables, y deberían ser los ingresos mínimos esperados.
Probabilidad ponderada por IA
Todas las operaciones abiertas ponderadas por su probabilidad de ganar calculada por la IA, es la predicción más realista de lo que cerrará.
El mejor caso
Todos los negocios abiertos a su valor total, es decir, el máximo de ingresos posible si todo va perfectamente (lo cual rara vez sucede).
Intervalo de confianza
An 80% Ejemplo: "Es probable que cierre entre 1.200 y 3.000 puntos". $45,000 and $72,000 En este trimestre."
Qué cambió y por qué
El pronóstico incluye la atribución del cambio semana a semana. Cuando el pronóstica disminuye en $15,000, el informe explica exactamente qué acuerdos causaron el cambio: "El acuerdo A se deslizó al próximo trimestre ($8,000), Trato B perdido ($5,000), Oferta C reducida en valor ($2,000)."
Seguimiento de precisión
Pronóstico del tiempo MAPE
Mean Absolute Percentage Error: how far off your forecasts have been historically. Lower is better. A MAPE of 15% means your forecasts are typically within 15% of actual results.
Calibración de probabilidad de ganar
Puntuación de Brier que mide qué tan bien las probabilidades de ganar coinciden con los resultados reales.70% Probabilidad de ganar realmente 70% La mayoría de las veces, la calibración es buena.
Instantáneas semanales
OpsIQ captura una instantánea de tu pronóstico cada semana (a través del cron) y con el tiempo puedes ver cómo mejora la precisión de tus previsiones.
Conjuntos y advertencias
Conversión por etapa
How many deals move from each stage to the next. If 80% pass from Qualified to Proposal but only 20% go from Proposal to Negotiation, your proposals might need work.
Tasa de victoria por fuente
Invierte más en las fuentes de leads que tengan una alta tasa de ganancia.
Rendimiento por propietario
Cómo se desempeña cada miembro del equipo de ventas: negocios ganados, valor del embudo, tamaño promedio del trato, tasa de victoria.
Advertencias
Sandbagging (probabilidades poco realistas), overcommitting (probabilidad muy alta) y committed-at-risk (tratamientos de alta probabilidad que muestran señales de estancamiento).
Entender una caída de pronóstico
Escenario:
Your quarterly forecast dropped from $180,000 to $155,000 since last week.
Qué hacer:
Abra la página de predicción y compruebe "Qué cambió". El informe muestra: "Acme Corp deal (Acmé Corp)$15,000) se movió a Lost, competidor elegido. Beta Inc acuerdo ($8,000) fecha de cierre empujado al próximo trimestre. Nuevo acuerdo con Gamma LLC ($3,000) añadió esta semana." El cambio neto es -$20,000 + $3,000 = -$17,000, explicando la caída de $180K a $163K (con el $8K restante explicado por ajustes de probabilidad en otras ofertas).
CRM
Encontrar nuevos negocios
El agente de prospección le ayuda a encontrar e investigar clientes potenciales: describa su cliente ideal, añada empresas objetivo y deje que la IA investigue, puntue y redacte el alcance del primer contacto.
ProspecciónEl agente de SDR encuentra las compañías objetivo, las califica en su idoneidad y redacta el primer contacto para su revisión.
Configuración de una sola vez
1
Describe a tu cliente ideal
Vaya a Configuración de CRM > Prospección. Describa su perfil de cliente ideal (ICP): industrias objetivo, tamaños de la empresa, cargos laborales, enfoque geográfico, términos de coincidencia del producto y puntuación mínima de ajuste.50-500"Tenemos más de 100 empleados en EE.UU./Reino Unido, que venden herramientas para desarrolladores, con un vicepresidente de ventas o jefe de crecimiento como contacto principal."
2
Añadir empresas objetivo
Ingrese los dominios o nombres de las empresas que desea investigar, y deje que la IA le sugiera compañías basadas en su ICP.
3
Revisar los resultados de la investigación
La IA enriquece cada empresa con los datos disponibles: tamaño, industria, pila de tecnología, noticias recientes y puntuación de ajuste con explicación.
4
Aprobar la divulgación
Para las empresas que se ajustan bien, la IA redacta un mensaje personalizado de primer contacto y lo revisa y aprueba en la cola.
Puntuación de ajuste
Cada prospecto recibe un0-100 Puntuación de ajuste basada en cinco factores:
Ajuste de ICP
Qué tan bien la empresa se adapta a su perfil de cliente ideal (industria, tamaño, ubicación).
Señales de urgencia
¿Hay evidencia de que necesitan tu producto ahora?, anuncios de trabajo, cambios tecnológicos, quejas sobre la competencia.
Proxy de presupuesto
El tamaño de la empresa, el estado de financiación y los indicadores de ingresos sugieren disponibilidad presupuestaria.
Coincidencia de producto
Qué tan relevante es tu producto para su negocio en función de la industria y la tecnología.
Ajuste de soporte
Si puedes atender de manera efectiva a este cliente (zona horaria, idioma, complejidad).
Investigar una empresa objetivo
Escenario:
You want to evaluate whether acme.com is worth pursuing.
Qué hacer:
Añadir acme.com La IA devuelve: Puntuación de ajuste 78/100 Razones: B2B SaaS, 120 10 empleados, con sede en Estados Unidos, contrató recientemente a un vicepresidente de ventas (señal de urgencia), utiliza al competidor X (concordancia del producto). Señales de compra: visitó su página de precios dos veces el mes pasado (por seguimiento del sitio web). [email protected] (VP de Ventas) El borrador del apertura hace referencia a sus visitas recientes a la página de contratación y precios.
CRM
Secuencias de seguimiento automáticas
Las secuencias automatizan el seguimiento de varios pasos: una combinación de pasos de correo electrónico, espera, tarea, llamada y webhook que se ejecutan automáticamente después de aprobar el envío inicial.
SecuenciasSeguimiento automatizado multi-paso (email, espera, correo electrónico, tarea) que aprueba primero y una respuesta se detiene automáticamente.
Cómo funcionan las secuencias
1
Crear una secuencia
Definir los pasos: correo electrónico, esperar 3 días, correo electrónico, esperar 5 Días, tarea (llamar si no hay respuesta), correo electrónico.Cada paso de correo electrónico tiene una plantilla que puede personalizar.
2
Inscribir contactos
Añadir contactos a la secuencia. La IA también puede proponer inscripciones de los resultados de prospección.
3
Ejecución automática de órdenes
Si un contacto responde en cualquier momento, la secuencia se detiene automáticamente y el mensaje no se muestra más.
4
Seguimiento de resultados
Vea las tasas de apertura, respuestas y conversión por paso para optimizar su secuencia.
Responder a understanding
Cuando un contacto responde, la IA clasifica la respuesta:
Positivo
Interesado, quiere hablar. Pausas de secuencia, tarea creada para seguimiento.
Objeción
La secuencia hace pausas, la tarea se crea con los detalles de la objeción.
Darse de baja
Quiere dejar de recibir mensajes. El contacto se suprime permanentemente.
No ahora
Interesado pero el tiempo es incorrecto. Secuencia de pausas, tarea de snooze creada.
La persona equivocada
No es el contacto correcto. La secuencia se detiene, el contacto se marca para revisión.
Soporte
Una pregunta de soporte, no una respuesta de ventas. Secuencia pausas, ticket creado.
Protecciones anti-spam
Manejo de opt-out
Las solicitudes de cancelación se cumplen inmediatamente y el contacto se suprime de todas las secuencias futuras.
Límite de envío diario
Límite diario a nivel de espacio de trabajo (predeterminado: correos electrónicos 1,000). Evita los envíos masivos que activan filtros de spam.
Límite por contacto
Máximo de 1 mensajes por contacto al día. Evita sobrecargar a las personas individuales.
Manejo de sobre-tapa
Los pasos que superen el límite diario se aplazan hasta el día siguiente y nunca se omiten ni se pierden.
¿Qué sucede si un contacto abre un ticket de soporte durante una secuencia?+
La secuencia se detiene automáticamente, ya que el soporte tiene prioridad sobre la divulgación. La secuencia puede reanudarse manualmente una vez resuelto el problema del soporte.
¿Puedo realizar pruebas A/B de los pasos de secuencia?+
No directamente dentro de secuencias, pero puedes crear dos secuencia con diferentes mensajes y comparar sus resultados.
CRM
Herramientas de crecimiento
Una página debajo de CRM que contiene el motor de crecimiento: ingresos recurrentes (MRR / ARR), el catálogo de productos, formularios de captura de clientes potenciales, enlaces de reserva y enrutamiento de clientes Todo aquí se escribe directamente en el CRM, por lo que un envío de formulario o una llamada reservada es un contacto con historial, no una fila en una hoja de cálculo.
Lo que vive en la página
Ingresos recurrentes
Ingresos
Las suscripciones se agrupan a partir de los pagos por plataforma, el ciclo de facturación se infiere de las brechas de pago y una suscripción caduca cuando un pago está atrasado más allá de 1.5 veces su ciclo. Los clientes se vinculan automáticamente con los contactos de CRM cuando el libro mayor lleva su correo electrónico.
Catálogo de productos
Catálogo
Una única fuente de información sobre lo que vende. Las cotizaciones extraen el nombre y el precio del catálogo, y las cotización aceptadas se acumulan en los ingresos por producto.
Formularios de captura de leads
Capturar
Cada formulario tiene una página alojada y un código de inserción iframe para tu propio sitio, los envíos se convierten en contactos, el propietario recibe una notificación y tus reglas de enrutamiento asignan al lead.
Enlaces de reserva
Programación
Comparte un enlace, deja que los clientes potenciales elijan una plaza libre. Las plazas respetan las horas de trabajo del organizador, la zona horaria y las reuniones existentes. Una reserva crea la reunión, envía por correo electrónico al cliente potencial una confirmación y notifica al organizador.
Enrutamiento de leads
Enrutamiento
Las reglas del territorio funcionan primero, luego las reglas de campo (para conseguir un campo como país o fuente), y después la robina redonda a través de su piscina de rep. It route CONTACTS AND DEALS por igual, cualquiera que sea el estado del acuerdo: un trato ganado todavía necesita un propietario para la atribución de comisiones, responsabilidad de cuenta y seguimiento, y en modo de visibilidad del dueño o equipo un registro no propiedad es invisible para todos pero un administrador.
Crear tu primer formulario
1
Herramientas de crecimiento abierto
Ve a CRM, luego Herramientas de crecimiento y luego la sección Formularios de captura de clientes potenciales.
2
Nombrarlo y elegir campos
Escriba un nombre y una lista de campos separados por comas, por ejemplo: nombre, correo electrónico, teléfono, mensaje.
3
Compartir o incrustar
Copia el enlace alojado para compartirlo en cualquier lugar, o copia el código de inserción y pégalo en cualquier página de tu sitio web.
4
Observe cómo llegan los clientes potenciales
Cada envío es un contacto de CRM con una actividad form. submitted, una notificación al propietario y un enrutamiento automático.
💡
Las páginas de captura públicas usan la dirección propia del espacio de trabajo, mientras que los espacios de trabajo en la nube utilizan su subdominio asignado (company.opsiq. help), por lo que el enlace siempre resuelve los datos correctos.
Protecciones incorporadas
Los bots ven el éxito, tú no ves nada
Un campo de honeypot oculto descarta silenciosamente los envíos del bot.
Tasa limitada
Diez envíos por hora por dirección IP a través de formularios y reservas.
El consentimiento se mantiene honesto
El envío de un formulario no otorga consentimiento para el marketing, solo una casilla de verificación de consentimiento explícito lo hace.
No hay reserva doble
Una plaza se vuelve a validar contra una nueva verificación de disponibilidad en el momento de la reserva.
¿De dónde provienen los datos de ingresos recurrentes?+
Desde el mismo libro mayor de comercio que usa tu página de ventas, alimentado por conectores de facturación. Utilice Re-sync from billing después de conectar una nueva plataforma.
¿Puedo utilizar los formularios sin un sitio web?+
Cada formulario tiene una página alojada en su propia dirección que funciona de forma independiente, con o sin JavaScript.
CRM
Centro de mensajes (SMS y WhatsApp)
Un conector, hasta veinte gateways. Conecte los proveedores de SMS y WhatsApp que realmente utiliza, marque uno como predeterminado y elija cualquiera de ellos al enviar mensajes de texto a un contacto. El consentimiento es verificado por el CRM antes de contactar con cualquier gateway.
Configurarlo
1
Habilitar el conector
En la página Conectores, abre el Centro de mensajes (SMS y WhatsApp) y habilitelo.
2
Añadir un proveedor
En el mismo cajón, o en CRM Growth Tools, elige una pasarela del menú desplegable (Twilio, Vonage, Termii, Meta WhatsApp Cloud, Infobip y más), pega sus credenciales API y conéctate. Puedes agregar varias, incluyendo la misma pasarela dos veces con diferentes cuentas.
3
Conecta el webhook
Cada entrada de proveedor muestra su propio webhookURLcon un botón de copia. Pruébalo en la entrada-deporte y ajustes del mensaje entrante para obtener el estado de entrega y las respuestas aOpsIQ.
4
Enviar desde un contacto
Abra un contacto y utilice el botón SMS o WhatsApp Si más de un proveedor admite el canal, un selector le permite elegir; en caso contrario, se utiliza el valor predeterminado.
El consentimiento es lo primero
Solo consentimiento otorgado
Un consentimiento desconocido no es un consentimiento, ya que el envío se rechaza a menos que se otorgue explícitamente. WhatsApp también tiene ese mismo consentimiento.
No-contacto siempre gana
Una bandera de no contacto bloquea todos los canales, sin importar qué más se haya establecido.
Supresión respetada
Los contactos de la lista de supresión nunca reciben mensajes.
Los rechazos nombran su razón
Un envío bloqueado te indica exactamente por qué, para que puedas corregir los datos en lugar de adivinar.
Para desarrolladores: el contrato webhook
URL forma
https://your-address/opsiq/cron/messaging_webhook.php?sk=SITE_KEY&e=ENTRY_ID&t=TOKEN. El token por entrada se acuña cuando el proveedor está conectado y nunca rota al editar.
Formatos comprendidos
Twilio form posts (MessageStatus/MessageSid for delivery, Body/From for inbound), Meta WhatsApp Cloud JSON (statuses and messages, including the hub.challenge subscription handshake), and a generic JSON shape: {"type":"delivery","message_id":"...","status":"delivered"} or {"type":"inbound","from":"+234...","body":"..."}.
Efectos
Los informes de entrega sellan la fila del libro mayor de divulgación que lleva el id. de mensaje del proveedor como Entregado o Rebotado, los mensajes entrantes coinciden con el contacto por número telefónico dentro del espacio de trabajo, llegan como una actividad message. received y marcan la conversación como respondida.
Modo de falla
Respuestas de token incorrectas o faltantes 403 Las cargas útiles desconocidas se cuentan e ignoran, nunca son fatales, por lo que una puerta de enlace mal configurada no puede romper el punto final.
¿Qué gateways son compatibles?+
Twilio, Vonage, Plivo, MessageBird, Sinch, Infobip, Telnyx, ClickSend, Termii, África hablando, BulkSMS, Textlocal, Meta WhatsApp Cloud, 360dialog, SMSAPI, Gupshup, Kaleyra, D7 Networks, Hubtel y un webhook HTTPS personalizado para cualquier otra cosa.
¿Son seguras las credenciales?+
Las credenciales se almacenan encriptadas en la configuración del conector y nunca se transmiten al navegador. Editar una entrada con un secreto en blanco conserva el guardado.
¿Puede la IA enviar mensajes?+
Sí, a través de acciones registradas que requieren confirmación y ejecutan la misma puerta de consentimiento. La IA también puede listar proveedores conectados para explicar lo que está disponible.
CRM
Mantener y hacer crecer a los clientes
La gestión del ciclo de vida te ayuda a proteger los ingresos existentes: cada cuenta obtiene una puntuación de riesgo de abandono, una puntuacion de salud, una puntacion de expansión y un manual recomendado para el éxito.
Ciclo de vidaLos clientes pasan por el a bordo, activo, en riesgo y renovación, cada uno de ellos marcado para la salud y expansión con un libro de juegos.
El tablero del ciclo de vida
Mapa de la etapa
Tablero visual que muestra dónde se encuentra cada cuenta: Lead, Prospecto, Oportunidad, Cliente, Expansión, Renovación, En riesgo, Churned.
Cuentas en riesgo
Cada una muestra el principal factor de riesgo (pico de asistencia, inactividad, falla en el pago) y un juego guardado recomendado.
Oportunidades de expansión
Cuentas que muestran señales de disposición para comprar más: alto uso, solicitudes de funciones, consultas sobre planes.
Renovaciones pendientes
Cuentas con fecha de renovación próxima. Ordenadas por nivel de riesgo y valor de ingresos.
Cómo OpsIQ detecta el riesgo de abandono
El riesgo de abandono se calcula a partir de múltiples señales fusionadas:
Señales de CRM
Salud del trato, inactividad, pérdidas recientes, disminución de la participación.
Señales de soporte
Recuento de tickets abiertos, picos en el volumen de tickets, sentimiento negativo, escaladas.
Compromiso con el producto
Frecuencia de inicio de sesión, uso de funciones, visitas a páginas, llamadas API.
Señales de facturación
Pagos fallidos, facturas vencidas, solicitudes de bajada de categoría, visitas a la página de cancelación.
Libros de juegos
Guardar el juego
Para cuentas en riesgo: contacte de forma proactiva, aborde la preocupación, ofrezca apoyo y escale si es necesario.
Juego de renovación
Para las próximas renovaciones: confirmar la satisfacción, revisar el uso, presentar valor, ofrecer incentivos si es apropiado.
Juego de expansión
Para cuentas listas para crecer: presenta opciones de actualización, comparte historias de éxito y demuestra el ROI.
Juego de adopción
Para cuentas que no utilizan lo suficiente: ofrezca capacitación, comparta las mejores prácticas y habilite funciones que no están utilizando.
Detección de la rotación antes de que suceda
Escenario:
A customer who normally logs in daily has not logged in for 2 weeks, and they opened 3 support tickets this month.
Qué hacer:
El tablero del ciclo de vida marca esta cuenta como "En riesgo" con los controladores: inactividad (14 Días desde el último inicio de sesión) y pico de soporte (3x Juego recomendado: llamada de alcance proactivo para entender lo que está sucediendo. ¿Hay un problema con el producto? ¿Están evaluando a los competidores? Una intervención temprana puede salvar la cuenta.
CRM
Mantener sus datos limpios
El agente Data Steward encuentra y corrige automáticamente los problemas de calidad de datos: duplicados, campos faltantes, inconsistencias y registros obsoletos.
Administrador de datosEl agente Steward mantiene su CRM limpio, encontrando duplicados, vacíos, registros de establo y formatos malos, fijando la aprobación.
El steward propone fusionar: mantener el registro con más actividad, combinar los tratos y actividades del otro registro. Revise la propuesta, ajuste el nombre de visualización superviviente si es necesario y apruebe.
CRM
Crear mi CRM
Build My CRM le permite describir su configuración de CRM en inglés sencillo. OpsIQ genera un plan validado y reversible y lo aplica al aprobarlo, sin codificación ni clics de configuración manuales.
Crear mi CRMDescribir su negocio en inglés claro;OpsIQtodo el mundoCRM(etapas, campos, segmentos) y lo aplica en aprobación.
Cómo funciona
1
Describe lo que quieres
Escribe una descripción en inglés sencillo de la configuración de tu CRM. Ejemplo: "Crea un embudo de renovación con las siguientes etapas: Próximo, Contactado, Negociando, Renovado, Perdido.
2
Revisar el plan
OpsIQ muestra una vista previa de lo que va a crear: pipeline, etapas, probabilidades de etapa, reglas de puntuación, regla de ciclo de vida.
3
Aplicar
Cada cambio se registra como un paquete que puede deshacer con un solo clic, y cada cambio es automáticamente guardado en el plan.
4
Retroceda si es necesario
Si algo no está bien, haga clic en Deshacer para revertir todo el paquete y su CRM volverá a su estado anterior.
Lo que puedes construir
Pipelines y etapas
Cree canalizaciones con nombres, etapas personalizadas, probabilidades predeterminadas y umbrales de putrefacción.
Reglas de puntuación
Aumenta las puntuaciones de los clientes potenciales en función del comportamiento: "Puntúa más alto cuando ven precios", "Puntua menos cuando visitan la página de carreras".
Reglas del ciclo de vida
Avance automáticamente las etapas del ciclo de vida: "Mover a SQL cuando soliciten una demostración", "Moverse al cliente cuando se gane el trato".
Campos personalizados
Añadir campos a contactos, ofertas o empresas: texto, número, fecha, seleccionar, casilla de verificación, URL, correo electrónico.
Lista de verificación de calificación
Defina la lista de verificación MEDDICC o BANT contra la que el Coach de Negocios califica.
Configuración de una canalización de renovación
Escenario:
You manage SaaS subscriptions and need a pipeline for renewals.
Qué hacer:
Tipo: "Crear una canalización de renovación. Etapas: 90 Días fuera (10%), 60 Días fuera (25%), Contactado (40%), Negociación (60%), renovado (100%), Churned (0%). Establezca el umbral de putrefacción en. 14 days."OpsIQ Una vez generado el plan, puedes revisarlo y hacer clic en Aplicar para que aparezca inmediatamente en la página Embudos.
¿Qué pasa si describo algo que no es posible?+
El constructor solo genera acciones que sabe validar, si pides algo fuera de sus capacidades (por ejemplo, "Integrate with my custom API"), rechazará la solicitud y te explicará qué puede hacer en su lugar.
¿Puedo deshacer los cambios?+
Cada acción de Build My CRM se captura como un paquete reversible. Vaya a Estado de CRM > Historial de cambios para ver todos los paquetes y deshacer cualquiera de ellos.
CRM
Configura tu CRM a tu manera
Configuración manual de CRM para equipos que prefieren hacer clic en lugar de escribir Todas las configuraciones que Build My CRM puede crear también están disponibles como campos de formulario tradicionales.
Pipelines y etapas
Crea, cambia el nombre, reordena y elimina canalizaciones y etapas. Establece la probabilidad de ganar por defecto por etapa. Especifica el umbral de putrefacción (días sin actividad antes de que un trato se marque como "detenido").
Campos personalizados
Añade campos a ofertas, contactos o empresas. Tipos de campo: texto, número, fecha, selección (menú desplegable con opciones predefinidas), casilla de verificación, URL, correo electrónico. Los campos personalizados aparecen en el perfil del objeto y en los filtros.
Lista de verificación de calificación
Defina la lista de verificación que usa el Coach para evaluar los tratos. Elija MEDDICC, BANT o un conjunto personalizado de criterios. Cada elemento puede marcarse como obligatorio u opcional.
Reglas de etapa del ciclo de vida
Defina transiciones automáticas de etapas: cuando un contacto cumple una condición (ve precios, envía un formulario, realiza una compra), su etapa del ciclo de vida avanza automáticamente.
Reglas de lead-scoring
Aumenta o reduce las puntuaciones de leads en función del comportamiento. Ejemplos: "Página de precios vista = +15"Papel blanco descargado = +10"Página de carreras visitada = -5Se puede establecer un recuento mínimo (por ejemplo, "debe ver los precios al menos 10 veces"). 2 times").
Vistas guardadas
Cree combinaciones de filtros y ordenes con nombre para contactos, ofertas o empresas. Comparte vistas con tu equipoEstablece una vista predeterminada por tipo de objeto.
Agregar una regla de puntuación de leads
Escenario:
You want contacts who view your pricing page twice or more to get a higher score.
Qué hacer:
Vaya a Configuración de CRM > Reglas de puntuación de clientes potenciales. Haga clic en Agregar regla. Set: Event = "pageview", URL contiene = "/pricing", Recuento mínimo =2, Aumento de puntuación = +20 La próxima vez que se ejecute el marcador, los contactos que coincidan con esta regla obtendrán +20 a su puntaje de ventaja.
CRM
CRM Chequeo de salud
El estado de CRM es una página de autodiagnóstico que verifica si su CRM está configurado correctamente y funciona sin problemas.
Chequeo de saludUna auditoría de CRM de una página: un puntaje general de salud más una lista de verificación de lo que está configurado correctamente y lo que aún necesita atención.
Lo que comprueba
Esquema
Si se ha perdido una migración, CRM Health la marcará como no realizada y le enviará un mensaje de error.
Agentes de IA
Todos los agentes de CRM (Capture, Data Steward, Deal Intelligence, etc.) están registrados y funcionan correctamente: verde = en ejecución, ámbar = necesita atención, rojo = error.
Rutas
Las rutas CRM API y los puntos finales AJAX están registrados y se pueden llamar.
Acciones de IA
El catálogo de acciones de CRM se registra en el Registro de aciones Si faltan acciones, CRM Health las vuelve a registrar para autocorregirlas.
Recuento de datos en vivo
Total de contactos, empresas, negocios, tareas, actividades y eventos. Útil para verificar importaciones y captura continua de datos.
Después de la verificación de configuración
Después de la primera configuración del CRM, abra el estado del CRM y verifique que todas las comprobaciones estén en verde; si alguna está en ámbar o rojo, haga clic en el elemento para obtener una explicación de diagnóstico y una solución sugerida.
¿Con qué frecuencia debo comprobar el estado de CRM?+
Compruebe después de la configuración inicial, después de las actualizaciones principales y siempre que el comportamiento del CRM parezca incorrecto. CRM Health se autocura muchos problemas (como los registros de acciones faltantes) con solo abrir la página.
CRM
Conexiones CRM para desarrolladores
El CRM expone un REST público completo API Webhooks entrantes y salientes para que se ajuste a cualquier pila sin exportaciones manuales.
API puntos finales
Autenticación
API Una clave (Autorización: Portador opq_...) con el ámbito crm.read o crm.write. /api/v1.php con acción y site_key.
Contactos
crm. contacts. list (búsqueda + filtro), crm, contactos. detalles (por ID), cRM, contactos, upsert (crear o actualizar), cRm, contactos de guardar.
Se activa cuando se agrega un nuevo contacto al CRM.
crm. deal. stage_changed
Se dispara cuando un trato pasa a una etapa diferente.
crm.deal.won
Se dispara cuando un trato se cierra como ganado.
crm.deal.lost
Se dispara cuando un trato se cierra como perdido.
crm.task.created
Se activa cuando se crea una nueva tarea (generada manualmente o por IA).
crm.outreach.reply
Se activa cuando un prospecto responde a un correo electrónico de secuencia.
crm. agent. proposal_created
Se activa cuando un agente de IA crea una propuesta para la cola de aprobación.
All webhook events are HMAC-signed and retried on failure. Subscribe a URL in Settings > Webhooks, or poll crm.events.list with since_id for a durable change feed.
Sincronizar contactos de CRM con Hojas de cálculo de Google
Escenario:
You want every new CRM contact to appear in a Google Sheet for your marketing team.
Qué hacer:
Configura un suscriptor de webhook para crm. contact. created. Apunte a una aplicación web de Google Apps Script o a un webhooku Zapier URL. La carga útil incluye el nombre del contacto, el correo electrónico, la empresa, la puntuación de clientes potenciales y la fuente. El script adjunta una fila a la Hoja de cálculo de Google para cada nuevo contacto.
CRM
Segmentos
Los segmentos guardan filtros de contacto reutilizables para vistas de CRM, alcance, promociones y otras herramientas conscientes del público.
Pantalla de productoEl editor de segmentos combina condiciones, muestra el recuento de coincidencias en tiempo real y permite al operador elegir un filtro en tiempo Real o una instantánea fija.
A Segmento en vivo Se recalcula a partir de los datos actuales cada vez que se utiliza. Snapshot de pined congela la lista de miembros actual, lo cual es útil cuando un público de divulgación no debe cambiar después de su aprobación.
Elegir TODOS Cuando todas las condiciones deben coincidir o CUALQUIER Los segmentos del sistema pueden ser visibles, pero protegidos de la edición ordinaria. Los segmentos de sistema pueden estar ocultos o no aparecer en el panel de control.
CRM
Puntuación de leads
Las reglas de puntuación de leads convierten las señales de comportamiento y perfil en una puntuación uniforme que pueden usar las ventas y la automatización.
Pantalla de productoLa puntuación de leads muestra las reglas activas, la ventana móvil y el cambio de puntuación positivo o negativo que se aplica a cada regla.
El generador de reglas de IA puede convertir una instrucción en inglés sencillo en una regla estructurada, pero cada regla debe ser revisada antes de su activación: confirmar la actividad o palabra clave, el recuento mínimo, la ventana móvil y el cambio de puntuación.
Las reglas positivas y negativas pueden coexistir. Uso Espacio de trabajo Rescore Los resultados pueden ser utilizados para alimentar segmentos, enrutamiento, prospección y condiciones de flujo de trabajo.
CRM
Tabla de ventas
El ranking compara a los representantes usando el logro de cuotas, ingresos ganados, comisiones y canales abiertos para el mes seleccionado.
Pantalla de productoLa tabla de clasificación mensual clasifica a los representantes de ventas mientras mantiene visibles los ingresos ganados, las comisiones y el embudo abierto.
El cumplimiento de la cuota solo tiene sentido cuando cada representante tiene una cuota actual y los negocios tienen el propietario, cantidad, moneda y estado de cierre correctos. Utilice el cuadro de mando para entrenamiento y reconocimiento, no como única medida de calidad; combínelo con el estado del trato, actividad y precisión de pronóstico.
CRM
Aprobaciones de transacciones
Las aprobaciones de los acuerdos requieren la firma del gerente antes de que se puedan marcar como ganados los acuerdoes de alto valor.
Pantalla de productoLa política de aprobación define dos umbrales de valor y la cola muestra las decisiones pendientes, aprobadas y rechazadas.
Habilitar la política y establecer el nivel1y nivel2umbrales. 0 Cuando un no-administrador intenta ganar un trato en el umbral o por encima de él, OpsIQ crea una solicitud de aprobación en lugar de cambiar silenciosamente la etapa.
Los administradores y los administradores completos no están bloqueados por la política. Cada decisión debe conservar el solicitante, aprobador, tiempo y razón para auditabilidad.
CRM
Reglas del ciclo de vida
Las reglas de ciclo de vida mueven automáticamente los contactos entre etapas cuando sus datos actuales coinciden con una condición guardada.
Pantalla de productoLas reglas de ciclo de vida se evalúan por prioridad; la primera regla coincidente cambia la etapa del contacto.
Cada regla tiene una etapa de origen, una etapa del destino, un indicador activo, prioridad y filtro de estilo de segmento. El trabajo programado del ciclo de vida evalúa las prioridades más altas primero y se detiene después de la primera coincidencia para un contacto.
Las reglas deben ser mutuamente comprensibles. Evite dos reglas activas que pueden mover el mismo contacto en direcciones opuestas durante la misma ejecución. Pruebe el filtro contra un segmento antes de activarlo.
CRM
Flujo de actividad CRM
El flujo de actividad del espacio de trabajo combina eventos operativos y de clientes para que los equipos puedan investigar lo sucedido sin abrir cada módulo.
Pantalla de productoEl flujo de actividad intercala chat, ticket, correo electrónico, webhook, conversión y eventos de anomalía con filtros y paginación.
Filtre por tipo de evento, fecha, contacto o estado del cliente (incluidos los clientes que pagan). La fuente es un modelo de lectura de la actividad registrada; no reemplaza el registro de ticket, conversación, trato o conector de origen.
CRM
Flujos de trabajo
Los flujos de trabajo responden a un evento y ejecutan una serie ordenada de acciones, incluyendo pasos retrasados reanudado por cron.
Pantalla de productoUna ejecución de flujo de trabajo muestra su desencadenador, acciones completadas, retraso en espera y siguiente paso.
Crea un flujo de trabajo eligiendo el desencadenador, añadiendo pasos en orden y activándolo. Los retrasos se almacenan, no son retenidos por una solicitud del navegador; la cron unificada reanuda las ejecuciones del flujo de trabajado debido.
Las plantillas iniciales incorporadas incluyen bienvenida después del registro, agradecimiento posterior a la compra y confirmación de demostración. Clone una plantilla, reemplace sus destinatarios / contenido, luego pruebe con un registro controlado antes de la activación amplia.
Un nuevo intento no debe enviar solicitudes duplicadas de movimiento de dinero ni crear registros duplicados.
Soporte
Boletos
Los tickets son su canal de soporte formal. Tienen departamentos, prioridades, objetivos SLA, archivos adjuntos, notas internas y hilos completos de conversación. OpsIQ Administrador, formulario de ticket/inserción, ingestión de correo electrónico, escalamiento de chat, conector o API.
BoletosCada billete lleva su prioridad, departamento, temporizador SLA y completo hilo, y la AI puede redactar la respuesta para usted.
Cómo fluye un ticket
1
El billete llega
Un cliente envía un mensaje por correo electrónico, escalación de chat, incrustación de ticket o el administrador crea uno. El ticket recibe un ID único (por ejemplo, T-12345).
2
Triage
La IA lee el asunto y el cuerpo del mensaje, asigna la prioridad (baja/normal/alta/urgente), sugiere un departamento y detecta el sentimiento de los destinatarios.
3
Responder
Un agente abre el ticket, lee el contexto (perfil del cliente, datos de la plataforma de los conectores, tickets anteriores) y escribe una respuesta que puede redactarse mediante IA y editarse antes de enviarla.
4
Cerrar
Cuando el problema se resuelve, el agente cierra el ticket y notifica al cliente. Si el cliente responde después de cerrar el ticket, este vuelve a abrirse automáticamente.
Acciones por ticket
Cambiar departamento
Mover el ticket a un departamento diferente (por ejemplo, de General a Facturación). Útil cuando la ruta inicial era incorrecta.
Asignar al agente
Asigna el ticket a un miembro del equipo específico: El agente asignado verá el ticket en su vista "Mis tickets".
Añadir nota interna
Escribe una nota visible solo para el personal. Úsala para: resultados de la investigación, razones del reembolso, contexto de ingeniería, compromisos anteriores.
Combinar tickets
Combina los tickets duplicados del mismo cliente. El asunto del ticket combinado recibe una etiqueta [MERGED] (Fusionado). Todos los mensajes de ambos tickets se conservan en el ticket restante.
Respuesta enlatada
Insertar una plantilla de respuesta preescrita. Variables como {{customer_name}} and {{ticket_id}} Se reemplazan automáticamente.
Reescritura de AI
Deja que la IA mejore tu borrador de respuesta: ajusta el tono, acorta/alarga, corrige la gramática o traduce.
Cambiar la prioridad
Establezca en Baja, Normal, Alta o Urgente. La prioridad afecta a los temporizadores de SLA y al orden de clasificación.
Cambiar el estado
Establecer como Abierto, Pendiente, Esperando al cliente, Resuelto o Cerrado.
Ejemplo de trabajo: manejo de un cliente insatisfecho
Correo electrónico del cliente: "Me cobraron dos veces por mi suscripción"
Escenario:
Subject: Double charge on my account
Body: Hi, I just checked my bank statement and I see two charges of $49.99 from your company dated June 3. I only have one subscription. Can you please refund the duplicate charge? This is really frustrating.
Qué hacer:
Step 1: AI triage assigns Priority: High, Department: Billing, Sentiment: Frustrated.
Step 2: Agent opens the ticket. The connector panel shows the customer's Stripe charges, confirmed two charges on June 3.
Step 3: Agent adds an internal note: "Confirmed duplicate charge in Stripe. Transaction IDs: ch_xxx and ch_yyy."
Step 4: Agent drafts a reply: "Hi [Name], I can see the duplicate charge and I'm processing a refund for the second transaction right now. You should see $49.99 back in your account within 3-5 business days. I'm sorry for the inconvenience."
Step 5: Agent triggers the refund action through the Stripe connector (with confirmation).
Step 6: Agent sends the reply and sets status to Resolved.
Departamentos
Crea departamentos en Configuración > Tickets > Departamentos. Departamentos comunes: General, Facturación, Técnico, Ventas, Abuso, IncorporaciónCada departamento puede tener diferentes reglas de respuesta automática, conocimiento de IA y asignaciones de equipo.
Respuestas enlatadas
Cree plantillas de respuesta reutilizables en Configuración > Tickets > Respuestas predefinidas. Las buenas respuestas predeterminadas incluyen:
Ejemplo de plantilla de respuesta enlatada
Hi {{customer_name}},
Thanks for reaching out. I checked the details and here is what I found:
{{response_details}}
If you need anything else, just reply to this ticket and I will be happy to help.
Best regards,
{{agent_name}}
{{department_signature}}
Fusionar tickets
Cuando un cliente envía la misma pregunta varias veces (por correo electrónico y chat, o dos correos electrónicos separados), puede combinar los duplicados. Vaya al ticket, haga clic en Combinar, seleccione el otro ticket que desea combinar. El ticket restante recibe todos los mensajes de ambos tickets.
Prioridad y SLA
Bajo
Preguntas no urgentes, solicitudes de funciones, comentarios generales. Primera respuesta prevista: 24 horas.
Normal
Preguntas de soporte estándar. Primera respuesta prevista: 8 horas.
Alto
Impacto en el negocio del cliente. Primera respuesta prevista: 4 horas.
Urgente
Incidente de seguridad, pérdida de datos, error de facturación. Primera respuesta prevista: 1 hora.
Los temporizadores de SLA comienzan cuando se crea el ticket y se pausan cuando el estado es "En espera del cliente" Si no se alcanza el objetivo de SL, el ticket se resalta y, opcionalmente, se escala.
¿Pueden los clientes ver las notas internas?+
Las notas internas son estrictamente para el personal y no aparecen en el portal de tickets del cliente, las notificaciones por correo electrónico ni ninguna otra superficie que esté orientada al cliente.
¿Qué sucede cuando se responde a un ticket cerrado?+
El ticket se reabre automáticamente y vuelve a la cola activa, y el equipo recibe una notificación de la nueva respuesta.
¿Puedo bloquear un ticket para evitar más respuestas?+
Sí. Usa la opción Bloquear hilo para evitar que el cliente y la IA agreguen nuevas respuestas, útil para disputas resueltas o investigaciones cerradas.
Soporte
Service Studio: SLA, flujo de estado y calidad
La sala de control para el comportamiento de su operación de soporte: políticas SLA con escaleras de escalada, calendarios de horario laboral, un flujo de estado obligatorio, ajustes CSAT y los interruptores de funciones empresariales. Abre desde la página Tickets (el botón Service Studio en la barra de operaciones).
Políticas de SLA
Cada ticket nuevo recibe una fecha límite de primera respuesta y resolución según la política activa más específica: departamento + prioridad supera al departamento, supera a la prioridad, superan el valor predeterminado. Los plazos se pausan automáticamente mientras un ticket está en Pendiente o En espera.
Escaleras de escalada
Instead of one breach action, a policy can define up to six steps: for example warn the assignee at 75% of the window, alert managers at 100%, reassign to a named agent at 150%. Each step fires exactly once per ticket.
Horarios y calendarios
Con el horario de oficina, los relojes del SLA solo se encienden durante el tiempo laboral, por lo que un ticket abierto el viernes por la noche no se infringe el sábado. Se pueden adjuntar calendarios con nombre (zona horaria, días, horas, festivos) a políticas individuales para equipos en diferentes regiones.
Flujo de estado
Una matriz de origen/destino que restringe los cambios de estado que pueden realizar los administradores, con un valor preestablecido al estilo de Zendesk. La automatización, el correo electrónico entrante y las respuestas a tickets originadas por clientes siempre están exentas, por lo que una matriz estricta nunca puede atascar la canalización.
Aprobaciones
Los agentes solicitan la aprobación de un ticket (reembolsos por encima de un umbral, excepciones de políticas). Un aprobador designado o cualquier administrador completo decide con una nota; los solicitantes nunca pueden aprobar su propia solicitud.
Relaciones de tickets
Enlace de tickets como relacionados, duplicados, padres/niños o bloqueos; dividir respuestas a un nuevo ticket vinculado (el reverso de fusión, sin enviar por correo electrónico al cliente); seguir entradas para notificaciones en aplicación y opcionalmente direcciones de correo electrónico del seguidor CC sobre las respuestas externas.
Bandeja de entrada en vivo y colisiones
Con la bandeja de entrada en tiempo real habilitada, los nuevos tickets y respuestas aparecen para los agentes en cuestión de segundos a través del flujo de notificaciones existente. En un ticket, los actores ven quién más está viendo el ticket y reciben una advertencia cuando un compañero de equipo ya está escribiendo una respuesta.
Enrutamiento consciente de IA
Las reglas de enrutamiento pueden coincidir con las señales de clasificación de IA: prioridad, categoría, sentimiento y riesgo de escalada, además de los valores de campos personalizados introducidos desde el formulario de solicitud del portal.
💡
Activar uno en Service Studio → Quality & Automation es la opción de participación; si los deja desactivados, el comportamiento se mantiene idéntico al que tenía antes de la actualización.
¿Por qué un cliente puede reabrir un ticket cerrado cuando mi matriz prohíbe cerrado → abierto?+
Las respuestas originadas por el cliente, las respuestas de correo electrónico y la automatización están exentas deliberadamente para que una política estricta nunca pueda bloquear a los clientes o romper el embudo.
¿Las escaleras de SLA reemplazan la antigua acción de violación?+
No, las políticas guardadas con una acción de infracción única siguen funcionando sin cambios. Una escalera reemplaza la acción única solo en las políticas donde se definen pasos.
Soporte
Respuesta automática y escalamiento de tickets
La respuesta automática permite que la IA responda automáticamente a los nuevos tickets, mientras que la escalada mueve los tickets a un departamento diferente cuando la IA detecta necesidades especializadas. Ambas funciones funcionan tanto con tickets nativos como con tickets creados por correo electrónico.
Auto-respuestaLos nuevos boletos reciben un breve retraso (para que los humanos puedan saltar), luego una respuesta de AI de su conocimiento, enviado o consultado como borrador.
Cómo funciona la respuesta automática
1
Aparece el boleto
Se crea un nuevo ticket desde cualquier fuente (correo electrónico, chat, portal, API).
2
Programar respuesta
OpsIQ Espera el retraso configurado (por defecto: ) 2 Esto les da a los agentes humanos la oportunidad de responder primero.
3
La primera respuesta gana
Si un agente humano responde durante el retraso, la respuesta automática se cancela; de lo contrario, la IA genera una respuesta.
4
Generar y enviar
La IA lee el ticket, comprueba la base de conocimientos, el contexto del conector y el historial del cliente, luego escribe una respuesta que se envía (o se pone en cola como borrador para su revisión, según los ajustes).
Cómo funciona la escalada
1
Configurar los departamentos
Establezca qué departamentos pueden recibir escalaciones (por ejemplo, Facturación puede ser escalada desde General, Técnico puede ser escalo de General).
2
Clasificar el ticket
Antes de responder automáticamente, la IA clasifica el ticket en función de su intención: facturación, técnica, reembolso, abuso, etc.
3
Muévase si es necesario
Si la intención del ticket coincide con un departamento de escalado, el ticket se mueve y una nota interna explica por qué.
4
Generar en nueva voz
La respuesta se genera utilizando el conocimiento del departamento de destino y la capacitación en IA.
Referencia de configuración
Auto-respuesta habilitada
Activa para habilitar la respuesta automática de IA para los tickets.
Departamentos permitidos
Comience con los departamentos de bajo riesgo (general, ventas) antes de habilitar la facturación.
Retraso
Cuánto tiempo esperar antes de que la IA responda (en segundos). Por defecto: 120 segundos (215 minutos).0Para respuestas instantáneas.
Horario de retraso
Opcionalmente, establezca diferentes retrasos para horas de trabajo vs. fuera del horario laboral.
Detención en la respuesta del administrador
Si un agente humano responde primero, cancela la respuesta automática. Valor predeterminado: activada.
Escalada habilitada
Habilite el enrutamiento automático de departamentos basado en la intención del ticket.
Departamentos de escalada
A qué departamentos se pueden escalar los tickets.
Estado de la escalada
Qué estado establecer al escalar (por ejemplo, Abierto, Pendiente).
Nota de incremento
Si se debe agregar una nota interna que explique el motivo de la escalada.
Tickets creados por correo electrónico
Los tickets creados desde el correo electrónico (a través de la consulta del buzón o la entrega por canalización MX) siguen las mismas reglas de respuesta automática y escalado. La respuesta de IA se envía como una respuesta al cliente, mientras que los borradores de correo electrónico van a la cola de borradores para su revisión si está configurada.
¿La IA responderá automáticamente a las preguntas de facturación?+
Solo si habilitas la respuesta automática para el departamento de facturación. Te recomendamos que empieces con la respuesta automatizada desactivada para la facturación y solo la habilites después de haber entrenado a la IA con un conocimiento completo de facturaciones y probarla exhaustivamente.
¿Qué pasa si la IA da una respuesta incorrecta?+
Si un cliente responde diciendo que la respuesta era incorrecta, un agente humano debe intervenir. Revise el historial de IA para entender por qué la IA dio la respuesta incorrecto, a continuación, actualizar la base de conocimientos o entrenamiento de AI para evitar que vuelva a suceder.
¿Puedo revisar las respuestas automáticas antes de que se envíen?+
Establece el modo de entrega en "Borrador" en lugar de "Envío automático". Los borradores de respuestas automáticas aparecerán en la cola Borradores para que los revise un usuario antes de enviarlos.
Soporte
Insertar portal de entradas
El portal de tickets embed le permite agregar una interfaz de gestión de entradas a cualquier sitio web. Los clientes pueden ver sus entradas, crear nuevos y responder, todo sin entrar en el OpsIQ admin.
Cómo funcionaInsertar portal de entradas
Tres sabores de incrustación
Inserción en línea
Renderiza el portal de tickets dentro de un div en tu página El portal ocupa todo el ancho del contenedor.
Widget flotante
Muestra un botón flotante que abre el portal de tickets en un panel, similar al widget de chat.
Autenticado
Requiere un token de identidad firmado. Los clientes solo ven sus propios tickets.
Para el modo autenticado, tu servidor debe generar un token de identidad firmado que le diga a OpsIQ quién es el cliente para que solo vea sus propios tickets.
Una lista filtrada por estado y con capacidad de búsqueda. Un "Esperando a usted" resalta los tickets que el equipo ha respondido.
Conversación en hilo
Vista completa de la conversación con texto enriquecido, archivos adjuntos y marcas de tiempo.
Borrador de autoguardado
Los borradores de respuestas del cliente se guardan automáticamente para que no pierdan el trabajo si se alejan.
Encuesta en vivo
El widget encuesta nuevas respuestas cada ~12 segundos.
Resolver / reabrir
Los clientes pueden resolver o reabrir sus propios tickets con un solo clic.
✅
Las notas internas del personal NUNCA se muestran a los clientes en la inserción de tickets, ya que es un límite de seguridad.
Soporte
Bandeja de entrada del chat
La bandeja de entrada del chat es donde tu equipo administra las conversaciones en vivo con los clientes, y muestra los chats activos, asignados, gestionados por IA e historial archivado.
Bandeja de entrada del chatUna bandeja de entrada para cada chat en vivo, lista de conversaciones, el hilo con AI borrador sobre grifo y completo contacto con el visitante + contexto CRM.
Administración de conversaciones
Chats activos
Conversaciones en curso. Punto verde = cliente está escribiendo o activo recientemente.
AI-manipulado
Conversaciones en las que la IA está respondiendo. Puedes tomar el control en cualquier momento haciendo clic en "Unirse".
Asignado a mí
Conversaciones asignadas a usted específicamente.
Esperando
Conversaciones donde el cliente está esperando una respuesta.
Archivo
Conversaciones completadas. Búsqueda por palabra clave, fecha y cliente.
Entrega de IA a humano
Cuando te hagas cargo de una conversación de la IA, sigue estas tres reglas:
1
Saluda personalmente
Preséntate por tu nombre: "Hola, soy Sarah del equipo de soporte".
2
Contexto de referencia
Muestra que has leído la conversación. "Veo que me preguntaste sobre el estado de tu pedido".
3
Establecer las expectativas
Dile al cliente lo que sucederá a continuación: "Estoy investigando esto ahora y tendré una respuesta para usted en unos minutos".
Activar/desactivar la IA por conversación
Utilice el interruptor de IA en la parte superior de cada conversación. Cuando está activada, la IA genera respuestas. Cuando se desactiva, solo los agentes humanos pueden responder. La IA recuerda el contexto de la conversación incluso cuando se apaga y vuelve a encenderse.
Modo fuera de horario
Configura el horario de trabajo en Ajustes. Fuera del horario laboral, la IA puede:1) Seguir respondiendo a los clientes, (2) Mostrar un mensaje de "ausencia" y crear un ticket para seguimiento, o (3) Deshabilitar el chat por completo y mostrar el formulario de ticket.Elige el comportamiento que se ajuste a tu modelo de soporte.
Manejo de conversaciones difíciles
1
Manténgase en calma
No iguales la intensidad emocional del cliente, reconoce su frustración sin estar a la defensiva.
2
Recopilar los hechos
Antes de responder, recopila la información relevante: detalles del pedido, estado de la cuenta, tickets anteriores.
3
Escalar temprano
Si la situación involucra reembolsos, amenazas legales, abuso o seguridad, escala a un miembro del equipo senior en lugar de tratar de manejarlo solo.
¿Puedo tener chat de equipo (de agente a agente)?+
Sí, puede usar notas internas dentro de una conversación para comunicarse con otros agentes. Estas notas nunca son visibles para el cliente.
¿Qué sucede cuando cierro un chat?+
Si el cliente envía un nuevo mensaje más tarde, se crea una nueva conversación y la conversación se guarda en el archivo.
Soporte
Canales de mensajería
Conecta WhatsApp, Facebook Messenger, Instagram DM, Telegram y LINE para que los clientes de mensajes ya te envíen lleguen a la misma bandeja de entrada que tu chat web, contestado por el mismo asistente de AI.
Cada canal se comporta de forma idéntica una vez conectado: un mensaje del cliente se convierte en una conversación en la bandeja de entrada de chat, su asistente de inteligencia artificial lo responde utilizando el mismo conocimiento e instrucciones que su chat web y cualquier agente puede asumir. Nada sobre sus necesidades de IA configurar por canal.
Qué conexión parece
Facebook Messenger & Instagram
Un clic. Conectadores abiertos→Facebook Messenger & Instagram DM, haz clic en Conectar, inicia sesión con la cuenta de Facebook que gestiona tu página y elige la Página. Instagram viene con ella cuando tu página tiene una cuenta profesional conectada a Instagram.
WhatsApp
Un clic donde su proveedor lo ofrece: abra el conector del centro de mensajería y utilice Connect WhatsApp, luego siga la señalización guiada de Meta para recoger o crear su número de negocio de Whatsapp. De lo contrario, pega las credenciales de cualquiera de los portales 20.
Telegram
Dos minutos. Mensaje @BotFather en Telegram, envía/newbot,Elija un nombre y un nombre de usuario finalizando en "bot", y pega el token que le da al conector Telegram.OpsIQregistra el Webhook para usted.
LINE
Create a Messaging API channel at developers.line.biz, paste the Channel secret and access token, then copy the webhook URL shown in OpsIQ into LINE and switch its own auto-replies off.
SMS
Agregue un proveedor (Twilio, Vonage, Termii y otros) en el Centro de Mensajería con sus credenciales y número de remitente.
✅
Cada conector muestra sus propias instrucciones paso a paso dentro del cajón, incluyendo exactamente qué copiar y dónde. Nunca necesita credenciales de desarrollador para las opciones de un clic.
Activar un canal
Conectar un canal no lo inicia. Ir a Settings → Client Chat → Advanced → Messaging Channels, cambiar el toggle maestro y luego el canal individual. Cada canal tiene su propio interruptor de auto-reply AI, por lo que puede pilotar en uno antes de abrir el resto.
1
Conectar el canal
En Connectors, usando las instrucciones en el cajón de ese conector.
2
Prueba la conexión
Haga una llamada real al proveedor y le dice qué es incorrecto si algo es.
3
Permitir canales de mensajería
Ajustes→Chat de cliente→Avanzado. Enciende el interruptor principal, luego el canal.
4
Envíe un mensaje
De otra cuenta, envía un mensaje a tu página, número o bot. Debe aparecer en la bandeja de entrada de chat en segundos y obtener una respuesta de AI.
Responder ventanas
Las plataformas de mensajería limitan cuánto tiempo puede responder un negocio después de que un cliente escriba. OpsIQ muestra el tiempo restante en cada conversación y hace cumplir la regla para usted.
WhatsApp
24 horas del último mensaje del cliente. Después de esto, solo puede enviar una plantilla aprobada, que configura en la misma pestaña Advanced.
Mensajero & Instagram
24horas para las respuestas normales; los agentes pueden responder hasta7días después bajo la asignación humana-agente de Meta.
Telegrama, LINE, SMS
No hay ventana de proposición.
⚠️
Si una respuesta falla porque la ventana se cerró, la conversación muestra por qué. Esta es una regla de plataforma, no un límite OpsIQ.
Preguntas comunes
¿Los clientes ven que una AI respondió?+
Sólo si les dices. La respuesta viene de tu página, número o bot exactamente como una respuesta humana. Tus instrucciones AI controlan el tono y si se identifica a sí mismo.
¿Puede un agente tomar el control de la conversación?+
Sí. Abra la conversación en el Chat Inbox y haga clic en Join. La AI para, escribe y el cliente ve un hilo continuo en su lado.
¿Y si desconecto un canal?+
Use Desconectarse en el conector. Historia del mensaje se mantiene; nuevos mensajes simplemente dejan de llegar, y la plataforma es ordenada para dejar de enviarlos.
¿Pueden dos espacios de trabajo utilizar la misma página de Facebook?+
No. Una página pertenece a un espacio de trabajo a la vez. Conectarla en otro lugar lo mueve, y el primer espacio de trabajos deja de recibir mensajes, así que desconectar deliberadamente en lugar de reconectarse en otra parte.
Soporte
Conversaciones de chat reales
Estos ejemplos muestran cómo una IA de cliente bien entrenada debería manejar escenarios comunes, y se pueden usar para probar su entrenamiento de IA e identificar brechas.
10 ejemplos de conversación
1. Cliente que vuelve a preguntar sobre el pedido
Escenario:
Customer: Hi, I placed an order 3 days ago and haven't received any shipping notification yet. Order #ORD-5523.
Qué hacer:
El AI debería: (1) Busque el orden #ORD-5523 A través del conector. (2) Informe el estado actual y la información de seguimiento si está disponible. (3) Si el pedido se retrasa, reconozca la demora y proporcione un cronograma estimado. (4) NO invente un estado de envío si el conector no tiene uno.
2. El prospecto pregunta sobre los precios
Escenario:
Customer: How much does your Pro plan cost? Do you offer annual billing?
Qué hacer:
El AI debería: (1) Respuesta de la base de conocimientos con precios actuales. (2) Explique la diferencia entre facturación mensual y anual. (3Si la respuesta no está en la base de conocimientos, díselo y ofrézcase a conectarlos con las ventas.4) NO invente precios que no estén en la base de conocimientos.
3. Cliente enojado exigiendo reembolso
Escenario:
Customer: This is ridiculous! Your product does not work and I want my money back NOW.
Qué hacer:
The AI should: (1) Reconocer la frustración tranquilamente. (2) Solicitar el número de pedido o correo electrónico de cuenta. (3) Explicar el proceso de reembolso. (4) Crear un billete de apoyo o escalar a un agente humano. (5) NO promete un reembolso, que requiere la aprobación humana.
4. Caso de doble borde de facturación
Escenario:
Customer: I was charged twice this month. My bank shows two charges of $29.99.
Qué hacer:
El AI debería: (1) Reconocer la preocupación. (2) Reúna los detalles relevantes (correo electrónico, fechas de cargos).3) Explique que los problemas de facturación requieren revisión humana. (4) Crear un ticket de departamento de facturación con los detalles. (5) Establezca la prioridad en Alta.
5. Cliente multilingüe
Escenario:
Customer: Bonjour, je voudrais savoir si vous livrez en France?
Qué hacer:
El AI debería: (1) Responder en el idioma del cliente si ese idioma es compatible. (2) Responda la pregunta sobre el envío a España desde la base de conocimientos. (3) Si el idioma no es compatible, responda en el idioma predeterminado y mencione qué idiomas están disponibles.
6. Conversación después de las horas laborales
Escenario:
Customer: Hello, is anyone there? I need help with my account.
Qué hacer:
El AI debería: (1) Si está configurado para IA fuera de horario, responda y asista. (2) Si después del horario de trabajo se crean tickets, di: "Nuestro equipo está desconectado en este momento. He creado un ticket de soporte para usted y alguien lo seguirá durante el horario laboral".3) Proporcione el número del ticket.
7. Comprador de comparación previa a la compra
Escenario:
Customer: How does your product compare to [Competitor X]?
Qué hacer:
El AI debería: (1) Describa las fortalezas de su producto con hechos. (2) NO insulte al competidor. (3) Si hay una página de comparación en la base de conocimientos, enlace a ella. (4) Si el cliente pregunta sobre características que no tienes, sé honesto.
8. El cliente quiere una recomendación
Escenario:
Customer: I run a small online store with about 100 orders per month. Which plan is right for me?
Qué hacer:
El AI debería: (1) Haga preguntas aclaratorias si es necesario (por ejemplo, qué características son más importantes).2) Recomendar un plan basado en la base de conocimientos. (3) Explique por qué ese plan se ajusta a sus necesidades. (4) Mencione que pueden comenzar con un plan más pequeño y actualizarlo más tarde.
9. Cliente tratando de obtener un descuento no autorizado
Escenario:
Customer: I saw online that you give 50% discounts. Can I have one?
Qué hacer:
El AI debería: (1) Explique cortésmente las promociones actuales si alguna existe. (2) NO cree ni prometa descuentos que no estén en la base de conocimientos. (3) Si el cliente persiste, ofrézcale conectarlo con el equipo de ventas.
10. El cliente necesita ayuda con una función
Escenario:
Customer: How do I export my data? I can't find the export button.
Qué hacer:
El AI debería: (1) Proporcionar instrucciones paso a paso de la base de conocimientos. (2) Incluya la ruta exacta de la página y la ubicación del botón.3) Si la función requiere un plan específico, menciónelo. (4) Si la característica no existe, se honesto y sugiere alternativas.
Soporte
Enrutamiento y escalado de chat
Cuando un chat en vivo necesita una persona real, la IA responde a dos preguntas: ¿qué equipo es el propietario de esta conversación y quién debe ser informado? Ambos están configurados en Configuración, Chat del cliente, Flujo de soporte, bajo Departamentos de enrutamiento de AI.
Elegir qué departamentos puede usar la IA
Los dos cuadros de ese panel son una lista blanca. Los departamentos que se mueven a la derecha son los únicos a los que el IA puede enrutar o abrir tickets. Cualquier cosa que queda a la izquierda es invisible para él, incluso si el departamento existe y tiene personal.
💡
Si no se habilita ningún departamento, OpsIQ vuelve al enrutamiento heredado a través de todos los departamentos que puede encontrar. Trate esto como una red de seguridad, no como una opción de configuración.
Quién recibe la escalada
Esta es la parte que la mayoría de las personas esperan configurar y no necesitan hacerlo. Cuando el AI escala un chat, OpsIQ envía correos electrónicos a las personas adjuntas a ese departamento. Usted administra esa lista una vez, en la página Equipo y Departamentos, y tanto la escalada del ticket como la escalación del chat siguen esta lista.
Miembros del equipo de departamento
Cada administrador activo adjunto al departamento recibe su propia copia, y se omiten las cuentas suspendidas e inhabilitadas.
Administrador primario
Se usa cuando no hay miembros del equipo adjuntos, por lo que una escalada todavía llega a alguien.
No hay nadie adjunto
El panel de enrutamiento marca ese departamento en rojo y la IA no le dice al visitante que un humano fue notificado.
⚠️
La dirección de correo electrónico del propio departamento nunca se utiliza deliberadamente como destinatario. Esa dirección es el buzón de entrada de tickets del departamento, con la que se comparan los mensajes entrantes para abrir los tickets. Una escalada enviada allí sería canalizada de vuelta como un nuevo ticket en lugar de llegar a una persona.
El departamento de capturar todo
Exactamente un departamento lleva la marca de capturar todo, recibe chats que la IA no podría colocar con confianza y es el último recurso en lugar del camino normal.
1
Las señales claras ganan
La redacción de facturación va a un departamento de facturaciones, la redacción del hosting y los errores a uno técnico, la formulación de compras a las ventas.
2
El clasificador de IA intenta a continuación
Si las palabras clave no son concluyentes, el modelo lee la conversación y elige entre los departamentos habilitados.
3
Entonces el catch-all
Solo cuando ambos se quedan vacíos, el departamento de captura general recibe el chat.
4
El guardia de ventas
Si el catch-all es un departamento de ventas y el visitante no mostró ninguna señal de compra, OpsIQ busca en su lugar un departamento técnico o de soporte, por lo que las preguntas ordinarias de soportes no se acumulan en Ventas.
Lo que se le dice al visitante
Si el correo electrónico de escalada sale, la IA le dice al visitante que el equipo ha sido notificado. Si no puede salir, la AI dice algo honesto e invita a dejar el mensaje en el chat en su lugar. No afirmará que un humano fue alertado cuando no se envió ningún correo electrónico.
El panel dice "Nadie a notificar" para un departamento+
No hay nadie conectado a él. Abra Equipo y Departamentos, conecte al menos un administrador activo, luego vuelva a cargar la página de configuración.
¿Pueden las escaladas de chat ir a otro lugar que no sea el equipo?+
Una dirección personalizada guardada previamente para un departamento aún reemplaza la lista de equipos. Las nuevas configuraciones deberían adjuntar personas al departamento en su lugar, por lo que hay un solo lugar para mantener.
¿Por qué se omitió mi captura general?+
Si es un departamento de ventas y el visitante no ha mostrado ninguna señal de compra, OpsIQ enruta a propósito al soporte o departamento técnico.
Soporte
Buzones de correo electrónico y borradores
OpsIQ puede conectarse a buzones de correo electrónico para crear automáticamente tickets desde el correo entrante y enviar respuestas como correo electrónico, además de proporcionar respuestas redactadas por IA para revisión humana.
Correo electrónicoRecibe correos electrónicos a través de IMAP (o reenvía), convierte cada uno en un ticket con hilo y deja que la IA redacte la respuesta para su revisión.
Conectar un buzón
Protocolo
IMAP (la mayoría de los proveedores), Gmail API (Google Workspace), o Microsoft Graph (Outlook 365).
Configuraciones necesarias
Host, puerto, cifrado (SSL/TLS), nombre de usuario, contraseña o contraseña de aplicación, carpeta (normalmente INBOX).
Mapeo de departamentos
Los correos electrónicos a [email protected] crean tickets en el departamento de "Soporte" y se asignan al buzón del departamento.
Configuración de Gmail (paso a paso)
1
Habilitar la verificación de 2pasos
Ve a Cuenta de Google > Seguridad > Verificación en 2pasos y habilitela.
2
Crear una contraseña de aplicación
Ve a Cuenta de Google > Seguridad > Contraseñas de aplicación. Selecciona "Correo" y "Otros (OpsIQ)". 16-contraseña de carácter.
3
Entrar en OpsIQ
Go to Email > Mailboxes > Add. Set host: imap.gmail.com, port: 993, encryption: SSL, username: [email protected], password: the app password.
4
Prueba
Si la conexión se realiza correctamente, OpsIQ comenzará a buscar nuevos correos electrónicos en el intervalo configurado.
Configuración de Outlook 365
1
Compruebe que IMAP está habilitado
En Configuración de Outlook > Correo > Sincronizar correo electrónico, asegúrese de que IMAP esté habilitado.
2
Usar contraseña de aplicación o autenticación moderna
Si la autenticación multifactor está habilitada, crea una contraseña de aplicación; en caso contrario, usa tu contraseña habitual.
3
Entrar en OpsIQ
Anfitrión: outlook.office365.com, puerto: 993, cifrado: SSL, nombre de usuario: [email protected].
cPanel configuración de correo web
1
Encuentra la configuración de IMAP
En cPanel > Cuentas de correo electrónico, haga clic en su cuenta de correo. IMAP Configuraciones.
2
Entrar en OpsIQ
Host: usualmente mail.yourdomain.com o su nombre de host del servidor, puerto: 993 (SSL) o 143 (STARTTLS), nombre de usuario: dirección de correo electrónico completa.
Borrador de correo electrónico AI
Cuando la respuesta automática está configurada en el modo "Borrador", la IA genera borradores de respuesta que aparecen en la cola Borradores.
Examen
Lea el borrador y compruebe la exactitud.
Editar
Modifica el texto, tono o contenido antes de enviar.
Enviar
Aprobar el borrador y enviarlo como respuesta por correo electrónico.
Descartar
Suprimir el borrador si no es apropiado.
Auto-envío
Si la confianza es lo suficientemente alta y el envío automático está habilitado, los borradores se envían automáticamente después de un retraso configurable.
¿Por qué los correos electrónicos no se convierten en tickets?+
Cheque: (1) ¿Está el buzón conectado y funcionando correctamente? Busque un estado verde en Correo electrónico > buzones. (2) ¿Está ejecutándose el trabajo cron? El sondeo de correo electrónico requiere cron. (3) ¿Se está filtrando el correo electrónico o se ha movido a una carpeta distinta de la bandeja de entrada?
CSAT mide la satisfacción de los tickets y chats, resalta las respuestas insatisfechas y compara los resultados humanos con los de IA.
Pantalla de productoLa página de CSAT combina tarjetas de puntuación, seguimiento de detractores, comentarios, desglose por departamento y agente y retroalimentación del chat.
Las encuestas de boletos se programan después del cierre (normalmente 24 horas antes).24 Una respuesta positiva es una puntuación de 10 puntos.4o 5. Utilice la cola de detractores para obtener puntuaciones de.1o2y lea el ticket/conversación antes de contactar al cliente.
Los comentarios de chat se informan por separado para las conversaciones resueltas por IA y las manejadas por humanos. Los tamaños de muestra bajos no deben usarse para clasificar a los agentes o modelos.
Soporte
Difusión de correo electrónico del equipo
La página de la plataforma de correo electrónico permite a un operador autorizado enviar un mensaje único a todos los agentes activos, agentes seleccionados o un departamento y revisar el historial de envíos.
Pantalla de productoEl compositor de correo electrónico del equipo muestra la audiencia, el asunto, el mensaje y el historial de entregas anteriores.
Esta página es para mensajes operativos internos, no de marketing al cliente. Elija el público correcto más pequeño, obtenga una vista previa de los nombres y direcciones y luego envíelo.
Soporte
Buzones, entrega y correo entrante
Configure cómo OpsIQ envía correo electrónico, convierte mensajes entrantes en tickets y prueba que el dominio de envío está listo.
Pantalla de productoLa configuración de correo electrónico combina enrutamiento saliente, identidad de origen, ingestión del buzón, comprobaciones de entregabilidad y correo electrónico de prueba.
Correo electrónico saliente
Los administradores completos pueden elegir el conector de correo electrónico preferido; OpsIQ Cae de nuevo a configurado SMTP Establezca un nombre/dirección del remitente reconocible, envíe una prueba y compruebe el estado de la entrega. 24 Métricas de éxito / fracaso por hora.
Buzones
Un buzón IMAP necesita un nombre, una dirección de correo electrónico, el departamento de destino, el host, el puerto, el modo de seguridad, el nombre de usuario, la contraseña, la carpeta, el estado de sondeo y la opción de validación del certificado. Encuesta ahora Para verificar la ingestión antes de esperar a cron.
Tubería instantánea
En el mismo servidor, una tubería de correo puede pasar directamente el mensaje RFC822 sin procesar. Un servidor de correo remoto puede enviar el mensaje sin procesarse al punto final entrante protegido utilizando su token. Ambas rutas ingresan a la misma canalización de deduplicación, hilo y enrutamiento de tickets.
Entregabilidad
La comprobación SPF/DKIM/DMARC es una prueba de asesoramiento para el dominio From configurado. Una marca verde no garantiza la ubicación en la bandeja de entrada, pero un error debe corregirse antes de enviar mensajes de producción.
Soporte
Portal de soporte
Support Portal Studio diseña y publica la experiencia de soporte orientada al cliente sin necesidad de recursos de imágenes externos.
Pantalla de productoPortal Studio muestra una vista previa adaptativa junto con el tema, la navegación, los conocimientos, el ticket, el asistente, el formulario, el pie de página y los controles CSS.
Utilice la plantilla como punto de partida, luego configure el tema, diseño, navegación, búsqueda de conocimientos, formulario de ticket, asistente, pie de página, marca, comportamiento del ticket, CSS personalizado y configuración general.
Soporte
Brechas de conocimiento
La cola de brechas de conocimiento recopila las preguntas del cliente que la IA no pudo responder con confianza para que el equipo pueda mejorar la cobertura.
Pantalla de productoLa cola de brechas clasifica las preguntas perdidas o con poca confianza y realiza un seguimiento para ver si el equipo las ha resuelto.
Abre un espacio para leer la pregunta original y la conversación cercana, luego elige la solución correcta: actualiza un artículo existente, crea un nuevo artículo de conocimiento, agrega un hecho comercial, corrige los datos del conector o cambia las instrucciones de escalada. Marcalo como resuelto solo después de que una evaluación o prueba real devuelva una respuesta aceptable.
Soporte
Administración de la página de estado
La página de administración del estado comunica el estado y los incidentes del servicio mediante componentes, estados actuales y actualizaciones.
Pantalla de productoLa administración de estado enumera los componentes y incidentes para que los operadores puedan publicar información clara sobre el servicio con marca de tiempo.
Cuando un incidente afecte a los clientes, publica una notificación inicial, agrega actualizaciones con marca de tiempo según cambien los hechos y cierra con un resumen conciso de la resolución. No uses la página de estado como registro interno de depuración; los diagnósticos confidenciales pertenecen al OpsIQ y a los registros del servidor.
IA
Configura tu IA
Configuración de IA es donde usted elige su proveedor, modelo y controles de costos. OpsIQ Este sitio soporta múltiples proveedores: Claude (Anthropic), GPT-4o (OpenAI), Gemini (Google), y Grok (xAI). Puede utilizar su propio API clave (BYOK) o IA administrada si está disponible en su plan.
Configurar AIElija IA administrada o su propia clave, elija un modelo para velocidad vs profundidad y limite el gasto mensual con un presupuesto de token.
Elegir un proveedor
Claude.Anthropic)
Razonamiento fuerte, cuidadoso con los hechos, bueno para seguir instrucciones complejas. Modelos: claude-sonnet-4-20250514, claude-3.5 Lo mejor para: conversaciones de soporte, preguntas técnicas, análisis detallados.
GPT-4o OpenAI)
Rápido, creativo, buen conocimiento general. Modelos: gpt-4o, gpt 4o-mini. Mejor para: respuestas rápidas, escritura creativa, preguntas de amplio conocimiento.
Gemini (Google)
Bueno en preguntas fácticas, soporte multi-idioma. Modelos:gemini-2.0-flash,gemini-1.5 Lo mejor para: soporte multilingüe, búsquedas de hechos.
Amarillo (xAI)
Respuestas rápidas y concisas. Modelos: grok-3-mini-fast. Mejor para: respuestas rápida, tono informal.
BYOK vs IA gestionada
BYOK (Traiga su propia clave)
Usted proporciona su propia clave API del proveedor. Usted paga directamente al proveedor. Control total sobre la selección de modelos y el uso.
AI Gestionado
La IA se proporciona como parte de su. OpsIQ Plan. No API El uso se mide en función del saldo de crédito de AI de su plan.
Configuración paso a paso
1
Ir a Configuración de AI
En el administrador de OpsIQ, vaya a Configuración > Configuraciones de IA.
2
Seleccionar proveedor
Elija su proveedor de IA en el menú desplegable.
3
Ingrese la clave API
Si se utiliza BYOK, introduzca su. API En el caso de la IA administrada, esto se gestiona automáticamente.
4
Elige el modelo
Seleccione el modelo específico que desea utilizar. Los modelos más pequeños son más rápidos y baratos, mientras que los modelos más grandes proporcionan respuestas de mejor calidad.
5
Conexión de prueba
Haga clic en "Probar conexión" para verificar que la clave API y el modelo están funcionando, una marca de verificación verde significa éxito.
6
Guardar
Haga clic en Guardar para activar su configuración de IA.
Controles de costos
Presupuesto mensual
Cuando se alcanza el presupuesto, las funciones de IA disminuyen con gracia (respuestas más cortas, sin respuesta automática) en lugar de detenerse por completo.
Límite de token por conversación
Máximo de tokens por conversación. Evita que las conversaciones fuera de control consuman créditos excesivos.
Alerta de saldo bajo
Cuando el saldo de créditos de IA cae por debajo del umbral (por defecto: 50,000 tokens), aparece una advertencia en la administración, que puede configurar en Configuración de AI.
Configuración por espacio de trabajo
Si administras varios sitios, cada espacio de trabajo puede usar un proveedor, modelo y presupuesto diferentes. El espacio de trabaja hereda los valores predeterminados globales a menos que se anulen. Para configurar por espacio de Trabajo: cambia al espacio de labor, luego ve a Configuración de IA y guarda la configuración allí.
Obtención de API claves
Anthropic (Claude)
Ir a console.anthropic.com > API Teclas > Crear clave. Copia la clave que comienza con "sk-ant-".
OpenAI (GPT)
Ir a platform.openai.com > API Teclas > Crear nueva clave secreta. Copie la clave que comienza con "sk-".
Google (Gemini)
Ve aaistudio.google.com, ConsigueAPIKey. Crea una llave para tu proyecto. Copia la clave.
xAI (Grecia)
Ir a console.x.ai > API Claves. Crea y copia tu clave.
Probar tu configuración de IA
Escenario:
After entering your API key, click "Test connection." You should see a green checkmark and a sample response from the AI.
Qué hacer:
Si la prueba falla: (1) Compruebe que el API La clave es correcta (sin espacios adicionales).2) Comprueba que tu cuenta tenga la facturación configurada con el proveedor. (3) Compruebe que el nombre del modelo es válido. (4) Si utiliza IA administrada, verifique que su licencia esté activa.
¿Cuál es el mejor proveedor?+
No hay un único proveedor que sea el mejor. Claude es excelente para las conversaciones de soporte. GPT-4o es rápido y versátil. Gemini maneja bien varios idiomas. Pruebe cada uno y vea cuál produce los mejores resultados para su caso de uso específico.
¿Puedo cambiar de proveedor más tarde?+
Sí, puede cambiar el proveedor y la clave API en cualquier momento. El historial de conversaciones existente se conservará y la IA utilizará el nuevo proveedor para todas las conversaciones futuras.
¿Qué sucede cuando me quedo sin créditos?+
La IA se degrada con gracia: las respuestas se vuelven más cortas, la auto-respuesta se detiene y el administrador muestra una advertencia de saldo bajo. El seguimiento principal, los tickets y CRM continúan funcionando sin AI.
IA
Chat de clientes más inteligente y barato
A set of opt-in controls that make your customer chat either smarter (it reasons across a customer's account like a human agent) or cheaper (it sends the AI less, or answers in fewer steps). Every control is off by default and independent, turning one on never changes any other behaviour. Most live under Settings > Client Chat > Behaviour; a few are on Set up your AI and Train your AI.
Respuestas más inteligentes (modo agente)
Un chatbot normal responde una pregunta de una búsqueda. Con Modo de agente on, el asistente puede hacer varios cheques de cuenta sólo lectura en un solo turno y referenciales cruzados, por ejemplo: "¿Tengo entradas abiertas, y es mi saldo suficiente para mi próxima renovación?" se responde en una respuesta con las matemáticas hechas. Sólo participa para clientes verificados en preguntas de cuenta o reembolso; todo lo demás funciona la ruta normal de una sola respuesta.
Modo de agente
Hasta unas pocas búsquedas de solo lectura por turno, con referencia cruzada antes de responder.Activa cuando tienes una plataforma conectada (WHMCS, Shopify, Stripe, Zendesk, etc.). Desactivado = comportamiento de búsqueda única actual, sin cambios.
Profundidad de pensamiento para las respuestas del agente
Cómo de difícil es el modelo para razonar en giros complejos (bajo/medio/alto) Comience con bajo; la mayoría de las preguntas de soporte se manejan bien allí.
Modelo de agente
Se fija un modelo más fuerte solo para turnos de agentes complejos, por lo que el chat diario se mantiene en un modelo ligero y barato y solo los turnos difíciles pagan por la profundidad.
Planear adelante · respuestas de un paso (beta)
Un pequeño paso de planificación decide qué búsquedas para tirar y si la base de conocimiento es necesaria, entonces responde en UNA llamada principal en lugar de varios pasos. Una sub-retroducción bajo modo Agente. No puede ser habilitado a menos que el modo Agente esté encendido. La misma calidad de respuesta, menos llamadas en preguntas multiparto.
Conversación & comprensión
Memoria de conversación larga (beta)
Mantiene un resumen corto de los mensajes más antiguos (nombres, números de tickets/facturas, cantidades, decisiones) para que el asistente se mantenga consistente en chats muy largos sin volver a enviar toda la transcripción. Mejor para hilos largos y pesados de soporte; se combina con el modo Agente.
Tolerancia de errores tipográficos
Lee pequeños errores tipográficos ("mis tickets abiertos", "facturas no pagadas") como las palabras deseadas para que la información correcta se encuentre en lugar de perderse. Funciona con todas las plataformas conectadas.
Contexto de cuenta Lean
Sólo se adjunta la instantánea de cuenta del cliente cuando la pregunta es en realidad sobre su cuenta (balance, facturas, entradas, servicios), saltando a las preguntas generales. Costos de corte sin pérdida de calidad. El asistente puede todavía buscar la cuenta en vivo cuando un turno lo necesita.
Ahorro de costos
Saltar la búsqueda de conocimientos para saludos (beta)
"Hola", "gracias" y "ok" no activan una búsqueda basada en el conocimiento, esas respuestas nunca la usan. Cualquier mensaje con contenido real todavía busca como normal.
Respuesta más larga permitida (tokens)
Límite de la duración máxima de una respuesta. La duración de las respuestas es la parte más costosa de una llamada, por lo que un límite razonable (alrededor de 500 para el soporte) es el control de costes de chat más eficaz.
Configura tu IA
Profundidad de pensamiento (chat con clientes y administradores)
Cuanto piensa el modelo antes de responder (mínimo a alto) Mantenga el chat con el cliente en mínimo/bajo para la velocidad; reserve ajustes más altos para el análisis y el copiloto del administrador.
Modelo por IA (por trabajo)
Cada superficie de IA ( chat en vivo, borradores de tickets, resúmenes, análisis, copiloto de administración, promociones, Inteligencia del Sitio y más) puede funcionar en su propio modelo. Luz donde importa la velocidad, fuerte donde importa calidad. Enfría sobre una superficie = predeterminado proveedor para ese trabajo.
Controles de coste del chat administrativo
El copiloto administrador puede mantener una memoria de trabajo limitada y cargar solo las herramientas que necesita una pregunta (herramientas lean) en lugar de todas las herramienta en cada turno.
Entrena tu IA
Instrucciones de compresión
Sus instrucciones se envían en cada turno, por lo que su longitud es un costo recurrente. El botón Compress reescribe una ranura para decir la misma cosa con menos palabras. Se niega a la reescritura si deja caer cualquier {variable} o gobernar, e informa lo que protegió, por lo que nunca cambia silenciosamente significado.
"Lo que ya está en el cerebro" (ℹ️)
Muestra lo que OpsIQ ya sabe sobre tu negocio por espacio, para que puedas borrar cualquier cosa que estuvieras repitiendo en tus propias instrucciones.
💡
¿Dónde va el dinero? Para charlar de soporte corto la entrada (instrucción + datos de cuenta + historia, enviado cada turno) generalmente cuesta más que la respuesta corta, caché y contexto magro ayudan a la mayoría allí. Para contenido generado largo domina la salida. La tapa de respuesta-longitud y una profundidad de pensamiento inferior pagan allí. Ver Configurar su inteligencia para mantener encendido rápido, lo que hace la parte repetida grande de cada vuelta barato.
¿Cambia esto la forma en que el chat ya responde?+
No, cada control está desactivado por defecto e independiente. Activar uno solo añade su comportamiento; al desactivarlo el chat vuelve a funcionar exactamente como antes.
¿En qué orden debo encenderlos?+
Ejecuta el chat diario en un modelo ligero y fija un modelo de agente más fuerte. Luego, si tienes una plataforma conectada, habilita el modo Agente, luego Planificar con anticipación, luego Memoria de conversaciones largas. A continuación, reduce el contexto, omite los KB para los saludos y añade un cap de respuesta.
El kit de agente administrativo: búsqueda web, runbooks, misiones, transferencia de archivos
El chat de IA del administrador es un ingeniero en acción, no solo una caja de preguntas: puede buscar soluciones en la web, mantener una biblioteca de sus procedimientos operativos, patrullar sus servidores según un horario y mover archivos. La mayor parte de esto se realiza al solicitarlo en el chat; lo único que debe configurar por adelantado es qué proveedor de búsqueda web usará, en la página Configuración de su IA.
Búsqueda en la web
Construido en
El agente busca en la web documentos, mensajes de error e información actual mientras trabaja. Desde el principio, esto utiliza DuckDuckGo, que no necesita clave ni configuración.
Runbooks
En el chat
Una biblioteca guardada de tus procedimientos ("cómo hacemos X aquí") El agente escribe uno después de hacer un trabajo complicado y lo sigue la próxima vez, por lo que el conocimiento sobrevive al final del chat.
Misiones
Programado
"Cada mañana, comprueba el espacio en disco y los registros de errores e infórmanos". Los resultados llegan a tu campana de administración.
Transferencia de archivos
En el chat
Pide un archivo de registro y obtén un enlace privado para descargarlo, o haz que se copie un archivo desde un servidor conectado a otro, ambos con límite en 5 MB.
Búsqueda web de Admin Agent (en Configurar tu IA)
Proveedor de búsqueda
Lo que utiliza el agente de búsqueda web. El valor predeterminado es DuckDuckGo: sin llave, libre, funciona en cada instalación.Serper.dev(Resultados Google) generalmente devuelve mejores resultados pero cada uno necesita unAPIclave de ese proveedor. Si un proveedor con llave falla por cualquier razón (bad key, contingent used up, network problem), esa búsqueda se remonta a DuckDuckGo automáticamente, así que la búsqueda nunca se oscurece.
Buscar la clave API
La clave del proveedor que hayas elegido, solo se necesita para Brave, Tavily o Serper. Una vez guardada, queda enmascarada y no vuelve a aparecer en la página; pega una nueva para reemplazarla. Un proveedor con clave solo se activa cuando tanto el proveedor como su clave están guardados.
Runbooks
Cuando el agente haya terminado de trabajar en un trabajo que desea realizar de la misma manera, diga "guardar esto como un runbook llamado nightly-cleanup". A partir de entonces, ve el runbook por su nombre en cada sesión y cuando le pide el trabajo por su nome (o lo describe) extrae los pasos y los sigue.
💡
Un runbook es una guía, no un pase libre. Cuando el agente sigue uno, cada paso que cambiaría un servidor aún pasa por su modo de permiso actual y muestra las tarjetas de aprobación habituales.
Misiones
Una misión es un trabajo recurrente que el agente ejecuta por sí mismo: cada hora, diariamente a una hora establecida o semanalmente en un día determinado. Las misiones están diseñadas para ser de solo lectura. Pueden leer servidores, datos y la web, pero nunca pueden cambiar nada; investigan e informan. Cuando termina una misión, los resultados aparecen como una notificación en su campana de administración.
⚠️
Las misiones se ejecutan desde el cron OpsIQ, por lo que necesita ser configurado (ver Cron y automatización). Un "ejecútalo ahora" único desde el chat funciona incluso entre las ejecuciones de cron en la mayoría de los servidores.
Mover archivos
Si solicita un archivo ("obtenga el registro de errores del servidor web para hoy"), el agente lo prepara y le responde con un enlace privado de descarga, que solo funciona para los administradores registrados y caduca después de aproximadamente un día. Los archivos tienen un límite máximo de 5 MB; si es más grande, pídale al agente que primero lo comprima o recorte en el servidor.
El agente también puede copiar un solo archivo entre dos servidores conectados, de nuevo hasta 5 MB. La escritura en el destino se trata como cualquier otro cambio que haga: en modo preguntar primero obtiene una tarjeta de aprobación, el archivo existente se respalda y la copia es reversible. Por seguridad, el contenido del archivo se vuelve a leer desde el origen en el momento en que se aplica la copia, no se toma del chat.
IA
Entrena tu IA
En el entrenamiento de IA, se le enseña a OpsIQ cómo comportarse. Se escriben instrucciones que definen la personalidad, los límites, el enfoque del conocimiento y las reglas de escalada.
Entrena a AIEntrena la AI como un nuevo contrato, Manuales de cliente y Admin escritos en inglés claro (tone, always, never), basado en tu KB.
Dos áreas de entrenamiento
Solicitud de IA del cliente
Controla cómo la IA habla con tus clientes en el widget de chat, es el mensaje más importante para hacerlo bien.
Solicitud de AI del administrador
Controla cómo la IA ayuda a su equipo de administración en el panel del operador, gestionando las consultas internas y la ejecución de acciones.
Escribir un gran mensaje de IA para el cliente
El mensaje de IA para el cliente debe cubrir estas áreas:
1
Identidad
¿Quién es la IA? Dale un nombre, rol y personalidad. Ejemplo: "Eres Luna, una amigable y conocedora asistente de atención al cliente para Acme Store".
2
Tono y estilo
Ejemplo: "Sé profesional pero cálido. Usa un lenguaje sencillo. Evita la jerga. Mantén las respuestas concisas (2-3 20 párrafos máx.)."
3
Límites del conocimiento
¿Qué debe saber y qué no? Ejemplo: "Conoce nuestros productos, precios, envíos y política de devoluciones. NO conoce los productos de la competencia ni las decisiones internas de la empresa".
4
Reglas de escalada
Ejemplo: "Envía el mensaje a un agente humano cuando: el cliente solicita un reembolso, menciona una acción legal, informa de un problema de seguridad o hace la misma pregunta tres veces".
5
Cosas que nunca hacer
Ejemplo: "Nunca prometa reembolsos. Nunca comparta fórmulas internas de precios. Nuncan invente características del producto que no existen. Nuncen dé consejos médicos, legales o financieros".
Ejemplo de prompts
Ejemplo cliente AI prompt · tienda online
You are Aria, a friendly customer support assistant for TechGear.
PERSONALITY:
- Warm and professional
- Concise (2-3 paragraphs max per response)
- Use simple language, no jargon
- If unsure, say so honestly
KNOWLEDGE:
- Our products: laptops, accessories, software subscriptions
- Pricing: as listed in the knowledge base
- Shipping: free over $50, 3-5 business days standard, 1-2 days express ($12)
- Returns: 30-day money-back guarantee, must be in original condition
ESCALATION (hand off to human):
- Refund requests over $100
- Account security concerns
- Legal threats or complaints
- Customer explicitly asks for a human
NEVER DO:
- Promise specific delivery dates (say "estimated")
- Share discount codes not in the knowledge base
- Make up product specifications
- Give financial or legal advice
Ejemplo cliente AI prompt · compañía de hosting
You are Atlas, an AI assistant for CloudHost web hosting.
TONE: Technical but accessible. Assume the customer has basic web knowledge.
KNOWLEDGE:
- Shared hosting, VPS, dedicated servers
- cPanel, DNS, SSL, email configuration
- WordPress, Joomla, Drupal installation
- Common error codes and troubleshooting
ESCALATION:
- Server outages affecting multiple customers
- Data loss or security breach reports
- Billing disputes over $50
- Complex migration requests
BOUNDARIES:
- Do NOT access customer servers or databases
- Do NOT change DNS records or passwords
- Always recommend the customer makes changes themselves
- For code issues, suggest steps but clarify you cannot debug their application
Perfeccionar tu mensaje con el tiempo
1
Comience con lo básico
Comience con la identidad, el tono y los límites clave; no trate de cubrir todo en el primer día.
2
Revisar la historia de AI semanalmente
Lee conversaciones donde la IA dio respuestas incorrectas o subóptimas.
3
Actualice el mensaje
Agregue reglas específicas para problemas recurrentes. Ejemplo: si la AI mantiene reembolsos prometedores, agregue "Nunca promete un reembolso. Diga que se escalará al equipo de facturación".
4
Agregar conocimientos
Si la IA no puede responder a una pregunta, añada la respuesta a la Base de conocimiento en lugar de tratar de que todo se ajuste al mensaje.
⚠️
Mantenga su solicitud bajo 2,000 palabras. Solicitudes demasiado largas pueden confundir a la IA y aumentar los costos de token, en lugar de poner información detallada en la base de conocimiento.
¿Cuál es la diferencia entre el prompt y la base de conocimientos?+
El prompt define la personalidad, los límites y las reglas; mientras que la base de conocimiento proporciona información objetiva (detalles del producto, precios, políticas). La IA lee ambos, pero el prompt da forma al comportamiento mientras que el KB ofrece respuestas.
¿Puedo tener diferentes mensajes para los distintos departamentos?+
Si necesitas un comportamiento de IA diferente para diferentes departamentos, utiliza la base de conocimientos para proporcionar información específica del departamento y menciona el contexto del departamento en tu solicitud.
IA
Historia de la IA
El historial de IA muestra todas las conversaciones que la IA ha tenido con clientes y administradores, lo que le permite auditar el rendimiento de la IA, encontrar respuestas incorrectas e identificar lagunas en la capacitación.
Historia de la IACada cambio de IA (chat, ticket draft, acción administrativa) se ha conectado con el aviso exacto, respuesta, duración y resultado.
Lo que muestra cada conversación
Fecha y hora
Cuando la conversación sucedió.
Identidad del cliente
Nombre y correo electrónico si se conoce, de lo contrario IP y país.
Canal
Widget de chat, respuesta automática de tickets, borrador de correo electrónico o IA administrativa.
Mensajes
Transcripción completa de la conversación: mensajes del cliente y respuestas de IA.
Uso de token
Un alto uso de tokens puede indicar que la IA está dando respuestas demasiado detalladas o que la conversación se ha ido en círculos.
Medidas adoptadas
Cualquier acción que la IA haya ejecutado durante la conversación (orden buscada, ticket creado, etc.).
Calificación
Si CSAT está habilitado, la calificación de satisfacción del cliente para esta conversación.
Encontrar problemas
Buscar por palabra clave
Busca temas específicos para ver cómo los maneja la IA, por ejemplo: busca "reembolso" para comprobar si la IA está siguiendo tu política de reembolsos.
Filtrar por valoración
Muestre solo las conversaciones con baja calificación para centrarse en los clientes insatisfechos.
Filtrar por canal
Mostrar solo respuestas automáticas de tickets para auditar las respuestas automatizadas por separado del chat.
Ordenar por uso de token
Las conversaciones de alto token pueden indicar problemas: la IA vaga, gira en círculos o no responde a la pregunta.
Rutina de auditoría semanal
1
Comprueba las conversaciones de baja calificación
Lea la transcripción completa. ¿Qué salió mal? ¿Fue una brecha de conocimiento, un problema de tono o una respuesta incorrecta?
2
Compruebe conversaciones de alto token
Estos podrían indicar confusión. ¿Se estaba repitiendo la IA? ¿No entendió la pregunta?
3
Actualizar la capacitación
Para las lagunas de conocimiento, añade artículos a la base de coñecemento. Para los problemas de comportamiento, actualiza el mensaje de IA. Para respuestas incorrectas recurrentes, agrega reglas explícitas de corrección.
Encontrar brechas de conocimiento
Escenario:
You search AI History for "installation" and find 15 conversations where the AI said "I do not have specific installation instructions for this product."
Qué hacer:
Esto significa que a tu base de conocimientos le faltan guías de instalación. Crea artículos para los pasos de instalación de cada producto y, después de agregarlos, haz una prueba haciendo las preguntas de la instalación de IA.
IA
Perspectivas de IA
AI Insights analiza automáticamente los patrones de conversación y revela resultados prácticos: preguntas comunes, tendencias de satisfacción, brechas de conocimiento y patrones ascendentes.
Perspectivas de IAEl verdadero centro de inteligencia: un resumen del día escrito por IA, alertas inteligentes para anomalías, puntuación de clientes potenciales bajo demanda y análisis de páginas, y el patrón de tráfico del día 14.
Qué muestran los insights
Las preguntas más frecuentes
Si la pregunta "¿Cómo puedo restablecer mi contraseña?" es #1, tu base de conocimientos necesita una guía destacada para restablecimiento de contraseña.
Tendencias de satisfacción
CSAT scores over time. Is AI satisfaction improving or declining? Sudden drops may indicate a knowledge base change that broke something.
Tasa de resolución
What percentage of conversations does the AI resolve without human intervention? A rate above 70% is good. Below 50% means the AI needs more training.
Razones de la escalada
Razones comunes: el cliente solicitó un humano, la IA no pudo responder, tema delicado, problema de facturación.
Brechas de conocimiento
Temas donde la IA frecuentemente dice "no sé" o da respuestas de baja confianza.
Duración media de la conversación
Conversaciones muy largas (10+ mensajes) pueden indicar que la IA no está entendiendo la pregunta, por lo que es posible que el sistema de respuesta no esté respondiendo correctamente.
Usando insights para mejorar
Escenario:
AI Insights shows that 23% of escalations are "Customer asked about warranty" and the AI could not answer.
Qué hacer:
Esta es una clara brecha de conocimiento. Pasos: (1) Escriba un artículo completo sobre la garantía en la Base de Conocimientos que cubra todos los términos, el proceso de reclamación y las exclusiones.2) Actualice el mensaje de AI para hacer referencia a la información de garantía. (3) Monitoree AI Insights la próxima semana para ver si disminuyen las escaladas de garantía.
IA
Guía de IA para administradores
La IA del administrador (Ask OpsIQ) ayuda a tu equipo a gestionar _OpsIQ desde el panel de administración. Puedes pedirle que busque datos, explique funciones, resuma tickets y ejecute acciones en la plataforma.
Administrador de AIDígale a la administración AI lo que desea en inglés claro; propone la acción exacta (espejado, reversible, auditado) y espera su confirmación.
Lo que puede hacer la IA del administrador
Buscar datos
Pregunta: "Mostrarme todos los boletos de [email protected]" o "¿Cuál es el estado del pedido #ORD-5523?"
Resumen
Pregunta: "Resume los últimos tickets de 10" o "¿Cuáles son los principales problemas de soporte esta semana?"
Explicar las características
Pregunta: "¿Cómo configuro la respuesta automática?" o "¿Qué significa la tarjeta de tasa de rebote?"
Ejecutar acciones
Pregunte: "Crear un ticket para [email protected] ¿Tienes dudas sobre la facturación?" o "Cerrar ticket"12345"
Consultas de plataforma
Pregunte: "¿Cuántos visitantes recibimos ayer?" o "¿Qué ingresos tenemos este mes?"
Ejemplo de conversaciones
Buscar a un cliente
Escenario:
Admin asks: "Find customer [email protected] and show me their recent activity"
Qué hacer:
La IA busca al cliente en todas las fuentes de datos conectadas: sesiones de visitantes, tickets, conversaciones de chat, pedidos y contactos de CRM, y devuelve un resumen de la actividad reciente con enlaces a cada elemento.
Obtener un resumen diario
Escenario:
Admin asks: "What happened today?"
Qué hacer:
La AI resume: "Hoy tuviste 245 Visitantes (hasta ) 12%), 8Nuevos billetes (3 resolvido por AI),2Nuevos pedidos por un total de $198, y1"Escalación de chat sobre un retraso en el envío."
Ejecutar una acción
Escenario:
Admin asks: "Change ticket T-5523 priority to Urgent"
Qué hacer:
La IA confirma: "Cambiaré la prioridad del ticket T-5523 de Normal a Urgente. Esto afectará al temporizador SLA. ¿Confirmar?" Usted confirma y se ejecuta la acción.
💡
La IA del administrador solo ejecuta acciones que están registradas en el Registro de Acciones, no puede inventar acciones o sistemas de acceso fuera de OpsIQ.
IA
Escenarios de IA del cliente
Esta sección cubre escenarios comunes de IA frente a clientes con el comportamiento esperado y consejos de entrenamiento.
IA del clienteUna biblioteca de preguntas reales del cliente y exactamente cómo la AI debe manejar cada uno, para probar su entrenamiento y encontrar lagunas.
Biblioteca de escenarios
Consulta de estado del pedido
Escenario:
Customer: "Where is my order #12345?"
Qué hacer:
Comportamiento esperado de la IA: (1) Busque el pedido a través del conector de la plataforma. (2) Informe el estado actual (procesamiento, enviado, entregado).3) Incluya el número de seguimiento si está disponible.4) Si el pedido se retrasa, reconozca y proporcione un cronograma estimado. (5) Nunca invente la información de seguimiento.
Solicitud de restablecimiento de contraseña
Escenario:
Customer: "I forgot my password and cannot log in"
Qué hacer:
Comportamiento esperado de la IA: (1) Proporcione los pasos para restablecer la contraseña de la base de conocimientos. (2) Incluya el enlace de restablecimiento o la ruta de la página. (3) Mencione que el correo electrónico de restablecimiento puede tardar unos minutos. (4) Sugiere revisar la carpeta de spam. (5) Si el cliente aún no puede restablecer, escalar a un humano.
Solicitud de característica
Escenario:
Customer: "Can you add dark mode to the mobile app?"
Qué hacer:
Comportamiento esperado de la IA: (1Gracias por la sugerencia.2) Explicar cómo se manejan las solicitudes de características (registradas, revisadas, priorizadas).3) NO prometa que la característica será construida. (4) Si existe una característica similar, menciónela.
Disputa de facturación
Escenario:
Customer: "I was charged but my service is not working"
Qué hacer:
Comportamiento esperado de la IA: (1) Reconozca la frustración. (2) Compruebe el estado del servicio si es posible. (3) Escalar al departamento de facturación con todos los detalles. (4) NO prometa un reembolso. (5) Establezca la prioridad del ticket en Alta.
Pregunta fuera de tema
Escenario:
Customer: "What is the weather like in London today?"
Qué hacer:
Comportamiento esperado de la IA: (1"Soy su asistente de soporte [de la empresa] y puedo ayudarle con preguntas sobre nuestros productos y servicios. Para obtener información meteorológica, pruebe un servicio meteorológico".2) Pregunte si tienen una pregunta sobre el producto.
¿Cómo puedo probar el comportamiento de IA del cliente?+
Abre tu sitio web en un navegador privado/de incógnito y chatea con la IA como cliente. Prueba preguntas comunes, casos extremos y escenarios adversarios. Comprueba que la IA sigue tus reglas de prompt y usa el contenido de la base de conocimiento correctamente.
IA
Base de conocimientos sobre IA
La base de conocimientos es una biblioteca de artículos que la IA utiliza para responder a las preguntas: cuando un cliente hace una pregunta, la IA busca en la base de datos los artículos relevantes y los usa para generar una respuesta precisa y fundamentada.
Base de conocimientosRastree su sitio e importe documentos a la base de conocimientos; la IA recupera las piezas y respuestas correctas, fundamentadas y citadas.
Cómo funciona
1
El cliente hace una pregunta
"¿Cuál es su política de devolución?"
2
La IA busca en la base de conocimientos
OpsIQ encuentra el artículo "Política de devolución" haciendo coincidir las palabras clave y el significado semántico.
3
La IA genera una respuesta
La IA lee el artículo y escribe una respuesta en lenguaje natural basada en el contenido del artículo.
4
El cliente obtiene una respuesta precisa
La respuesta se basa en su política real, no en los datos generales de entrenamiento de la IA.
Crear buenos artículos
Un tema por artículo
Escribe un artículo separado para cada tema: política de devoluciones, tarifas de envío, configuración de la cuenta, restablecimiento de contraseña. No combines temas no relacionados.
Escribe como un FAQ
Comienza con la pregunta que hacen los clientes y luego proporciona la respuesta, lo cual ayuda a la IA a relacionar las preguntas con los artículos.
Sé específico
"Las devoluciones se deben iniciar dentro de los 30 días posteriores a la entrega" es mejor que "Tenemos una política de devolución".
Incluir casos de borde
¿Qué pasa con las devoluciones internacionales?, ¿qué pasa con los productos digitales?, y qué pasa con artículos comprados en rebajas?
Mantenerlo actualizado
Revise los artículos trimestralmente. Elimine la información desactualizada. Actualice los precios, las políticas y los procedimientos cuando cambien.
Artículos de inicio que debería escribir
Envío y entrega
Costos de envío, plazos de entrega, seguimiento, envíos internacionales y retrasos en la manipulación.
Devoluciones y reembolsos
Ventana de devolución, condiciones, proceso, cronograma de reembolso y excepciones.
Gestión de cuentas
Restablecimiento de contraseña, cambio de correo electrónico, eliminación de cuenta y exportación de datos.
Precios y facturación
Descripciones de plan, ciclo de facturación, métodos de pago, facturas y moneda.
Guías de productos
Cómo usar cada producto o función. Instrucciones paso a paso con capturas de pantalla.
Solución de problemas
Problemas comunes y soluciones. Mensajes de error y sus correcciones.
Información de contacto
Horario de atención, canales de soporte, tiempos de respuesta y rutas de escalada.
Legal y cumplimiento
Resumen de la política de privacidad, resumen de los términos del servicio, solicitudes de datos GDPR.
Conocimiento del conector
Cada conector puede contribuir con conocimientos a la IA. Cuando se habilita un conector, sus artículos de conocimiento integrados (catálogo de productos, preguntas frecuentes y solución de problemas específicos de plataforma) están disponibles automáticamente para la IA, pero puedes cambiar el modo en que se muestran los conocimiento de cada conector en la configuración del conector.
Presupuesto de tokens
La base de conocimientos tiene un límite configurable (predeterminado: tokens 32,000) que controla la cantidad de contexto de coñecemento enviada a la IA por conversación. Si tu base de datos es muy grande, la IA selecciona los artículos más relevantes dentro de este presupuesto. Aumenta el límite si la IA no está encontrando artículos relevantes; disminuyelo si quieres reducir los costos de tokens.
¿Cuántos artículos debo tener?+
Comience con.5-10 Añada más a medida que identifique las lagunas mediante el historial de IA y la información sobre IA. La mayoría de los negocios necesitan 20-50 Artículos para una cobertura completa.
¿Puedo importar artículos de otro sistema?+
Actualmente, los artículos se crean manualmente en OpsIQ Puede copiar y pegar contenido de preguntas frecuentes existentes, centros de ayuda o documentos.
¿En qué formato deben estar los artículos?+
El texto sin formato funciona mejor, ya que la IA entiende el lenguaje natural mejor que los HTML estructurados o los códigos de marcación. Escribe como le explicarías a un cliente.
IA
Evaluación de IA y Watchtower
Los conjuntos de evaluación convierten las preguntas críticas del cliente en pruebas repetibles para la calidad de respuesta, citaciones, escalamiento y seguridad de acción.
Pantalla de productoLa evaluación de IA enumera casos de prueba dorados, comportamientos requeridos, resultados más recientes y ejecuciones programadas de Watchtower.
Los administradores completos pueden crear conjuntos de evaluación con un mensaje, etiquetas de fuente esperadas, citas requeridas, reglas de confirmación humana, expectativas de escalamiento y acciones prohibidas. Ejecute un conjunto directamente, ejecútelo en seco o repita el historial seleccionado.
Atalaya Programa comprobaciones diarias o semanales a través de cron y ejecuta un número limitado de casos (hasta ocho por paso programado) Revisa los fallos junto con el proveedor / modelo, la versión del prompt, la edición del conocimiento, las acciones propuestas y el costo antes de cambiar el comportamiento de producción.
IA
Idiomas y traducción
Idiomas gestiona el texto traducido dirigido al cliente y el comportamiento utilizado cuando OpsIQ sigue un idioma del cliente.
Pantalla de productoLa página Idiomas muestra el idioma de origen, los idiomas traducidos, el estado borrador/activo y el comportamiento del idioma del cliente.
OpsIQ Establezca el idioma de origen correctamente antes de crear traducciones, agregue los idiomas de destino y revise los borradores antes de publicarlos. La opción “Seguir el idioma del cliente” controla el lenguaje de respuesta; traduciendo la interfaz del widget se controlan sus botones, etiquetas y texto del sistema.
No confíe en la traducción automática para textos legales, de reembolso o de seguridad sin una revisión humana.
Cada lugar que contiene su propia redacción se enumera con su conteo de mensajes: mensajes de chat del cliente, promociones, mensajes proactivos, flujos de chat, visitas guiadas, anuncios, burbujas de teaser y más. Encuestas y formulariosLa superficie de la encuesta cubre cada encuesta publicada por completo: título, todas las preguntas, todas los opciones de respuesta, botones, copia de bienvenida y agradecimiento, página de cromo y páginas de resultados. Las teclas están vinculadas al ID de la pregunta y el valor de opción, por lo que reordenar preguntas u opciones nunca pierde una traducción, y cambiar la redacción de un mensaje vuelve a traducir solo ese mensaje.
La encuesta por correo electrónico después del chat sigue el idioma en que ha chateado realmente el visitante, siempre y cuando ese idioma sea uno de los que ofreces aquí; de lo contrario, utiliza el idioma de tu sistema. Sus seis campos editables también se traducen en esta página, y el comportamiento tiene su propio interruptor en la configuración del Chat del cliente.
Mensajes de tickets y portal cubre el tipo de operadores de texto fijo una vez y cada cliente recibe en ese idioma: el recibo del ticket, las confirmaciones abiertas, cerradas y retroalimentaciones, los signos por partida y la línea de bienvenida portal. (La AI auto-reply no necesita nada de esto, ya responde en el lenguaje del cliente.) Envíe correos electrónicos a sus clientes en su propio idioma habilitado en OpsIQ Escribir, enviar un correo electrónico resuelve el idioma del destinatario en este orden: el idioma que escogieron en el portal o Centro de Ayuda (carried on the ticket), el locale en su registro de contacto, luego el lenguaje que escribieron, detectado localmente por scripts y palabras marcadores, sin llamada externa. Sólo los idiomas seleccionados en la página Idiomas se utilizan siempre, así que la función está inerte hasta que se añadan los idiomas. HTML El envoltorio de correo electrónico no se traduce deliberadamente: es marcado, no prosa. Correo electrónico que hace frente al personal (notificaciones, alertas del departamento, informes analistas, informes programados, el digest semanal) siempre utiliza el lenguaje del sistema.
Soporte
Centro de ayuda
Tu Centro de ayuda es un sitio de autoayuda creado a partir de los artículos que publicas. Los clientes pueden leerlo y buscar en su propia página pública, así como dentro del widget de chat, para encontrar respuestas por sí mismos antes de abrir una conversación. Todo lo que contiene proviene de tu base de conocimientos, por lo que el mismo contenido que sustenta tu IA también alimenta tu ayuda pública.
Donde lo ven tus clientes
Su propia página pública
Un sitio de ayuda limpio y buscable en /help.php. Los clientes pueden navegar por categorías, buscar y abrir cualquier artículo que quieran, dándole su propio nombre y estilo.
Dentro del widget de chat
Un enlace de ayuda en el widget del chat para que los clientes puedan buscar tus artículos sin salir del chat y, si aún necesitan una persona, están a un toque de iniciar una conversación.
Enciéndelo
1
Abrir la página del Centro de ayuda
Ir a la página Config, then Help Center Ingresa a tu cuenta de administrador y enciéndela Habilitar el Centro de ayuda público.
2
Dale un nombre y una mirada
Establezca el nombre del Centro de ayuda, que se muestra en la cabecera y en la pestaña del navegador, y seleccione un estilo visual. Puede desactivar la navegación superior para tener una página limpia sin menús.
3
Publicar algunos artículos
No se muestra nada hasta que publicas artículos en él. La siguiente parte cubre cómo hacerlo.
Publicar artículos en el Centro de ayuda
Los artículos se encuentran en tu base de conocimiento. Un artículo aparece en el Centro de ayuda una vez que se publica y marca como público, lo cual puedes hacer de varias maneras:
Publicar un artículo
Abre el artículo, márcalo como publicado y activa la opción para mostrarlo en el Centro de ayuda.
Publica todo a la vez
Utilice el Publicar todo Haga clic en el botón para enviar todo su conjunto publicado al Centro de ayuda con un solo clic, en lugar de hacerlo uno a la vez.
Convierte las preguntas frecuentes en artículos
¿Ya tienes preguntas frecuentes? Uso Publicar todo para ayudar para convertirlos en artículos de ayuda, así que se sientan junto a todo lo demás.
Importar una base de conocimientos existente
¿Se está trasladando de otro help desk? Importación de KB El botón de la pestaña Artículos te trae una base de conocimiento existente, que puedes apuntar a tu contenido de tres maneras:
Pegar un URL
Si el motor de búsqueda reconoce la plataforma (por ejemplo, Zendesk), lee el árbol de categorías exacto de esa plataforma. De lo contrario, rastrea el sitio y reconstruye la estructura a partir de las páginas, importando solo los artículos reales y omitiendo las páginas de inicio de sesión, precios y contacto.
Elige una aplicación conectada
Si una plataforma ya está conectada a este espacio de trabajo y tiene una base de conocimientos, se muestra en un menú desplegable debajo Importar desde una aplicación conectada. Selecciona la aplicación e importa, no se necesitan URL ni contraseña La aplicación solo aparece una vez que está conectada y configurada.
Subir un CSV
¿No tienes un sitio en vivo al que apuntar? title, category, y body 10 columnas. Poner Parent / Child En la columna de categorías para crear categorías anidadas.
De cualquier manera que elijas, obtienes un Ver vista previa primero: los artículos que encontró, agrupados por categoría, cada uno con una casilla de verificación para que pueda eliminar cualquier cosa que no desee. Nada se guarda hasta que haga clic en Importar. Deshacer Importar todo en un solo clic, o Re-sincronización Puedes usar una importación URL o de aplicación conectada más tarde para importar artículos nuevos y modificados.
💡
Desarrolladores: cualquier conector puede anunciar su base de conocimientos en este menú desplegable declarando un kb_capabilities Bloque en su settings.json (tipo kb_source, con un adapter y a base_templateConsulte la sección Conectores y la referencia de conector de plataforma.
Organizar con IA
Un centro de ayuda ordenado es fácil de navegar y más fácil de buscar. Organizar con IA El botón de ordenación hace el trabajo por ti. Con un solo clic lee tus artículos publicados, los clasifica en categorías sensibles y añade etiquetas. Crea una categoría cuando la necesita, reutiliza una categoría que ya cabe y omite cualquier cosa que hayas organizado previamente, para que puedas ejecutarlo nuevamente cada vez que agregues nuevos artículos. Deja que la IA se organice en subcategorías en la configuración del Centro de ayuda y también puede archivar artículos bajo Parent / Child Categorías, lo cual es útil justo después de importar una base de conocimientos que tenía subsecciones.
💡
Las categorías permiten a los clientes navegar por el contenido, y las etiquetas perfeccionan la búsqueda tanto en la página pública como en el widget. Puedes cambiar el nombre o mover cosas después de que hayas terminado de crear tu sitio web, ya que la IA te da un punto de partida sólido, no una configuración con la que te quedes atascado.
El Centro de ayuda dentro del widget de chat
Puedes mostrar el Centro de ayuda directamente dentro del widget de chat para que los usuarios busquen respuestas antes de enviarte un mensaje. En la configuración del widget, elige dónde aparecerá el enlace de ayuda:
En el encabezado
Un pequeño icono de ayuda en la parte superior del widget.
En la parte inferior
Un enlace de texto debajo del cuadro de mensaje, por ejemplo "Explorar el centro de ayuda", que puedes cambiar.
En ambos lugares
Muéstralo en el encabezado y en la parte inferior para obtener más visibilidad.
El enlace de ayuda tiene su propio control de color en la configuración del widget Apariencia. Ninguno para que coincida con el color de su lanzador, o elegir un Sólido Color o un DegradadoToda la experiencia de ayuda sigue el tema del widget, por lo que siempre se ve como parte de tu marca.
Pon tu centro de ayuda en tu propia dirección web
Su centro de ayuda ya tiene una dirección propia limpia y compartible (por ejemplo, /help/your-help-centerPuedes ir un paso más allá y servirlo bajo tu mesa. Tu propio dominio, por lo que los clientes y motores de búsqueda lo ven como parte de su marca, por ejemplo yourdomain.com/help o help.yourdomain.comTodo sigue funcionando en tu dominio: enlaces, imágenes, búsqueda y las valoraciones de los artículos.
Bajo tu sitio principal
En Configuración, luego Centro de ayuda, abrir el Incrustar pestaña y encuentra "Mostrar tu centro de ayuda en tu propia dirección web".Cloudflare, Nginx o Apache), copiar el bloque listo y pegarlo en su sitio. Cada opción tiene una Guía de configuración Haga clic en el botón junto a él con los pasos exactos.
En un subdominio
Prefiera help.yourdomain.com? El mismo panel tiene una opción de subdominio. En Cloudflare un subdomnio es la ruta más confiable, y le da una dirección limpia sin nada después de ella.
💡
Usando Cloudflare? Solo ejecuta su Worker en una dirección que es un proxy a través de Cloudflare Su dominio principal a menudo apunta directamente a su sitio web, por lo que una regla colocada en el dominio central no puede hacer nada silenciosamente. La forma más confiable es un subdominio proxy como help.yourdomain.com. La guía de configuración te lleva a través de la DNS grabar y la ruta.
✅
Bien porSEO. Una vez que su centro de ayuda está en su propio dominio, los motores de búsqueda indexan sus artículos bajo su marca. Cada página declara su dirección correcta y el mapa del sitio las lista, por lo que el mismo artículo nunca se indienta dos veces.
💡
En la configuración del widget de chat, en "Abrir en el centro de ayuda", establezca Donde va el enlace a Su propio dominio de centro de ayuda Entonces, esos enlaces de artículo se abrirán en tu dominio también, no en la dirección OpsIQ.
Vea cómo está funcionando todo su centro de ayuda
Más allá de las votaciones por artículo, el Centro de ayuda tiene su propia analytics. Enciende en los ajustes de Centro de Ayuda y registra silenciosamente cómo la gente utiliza su ayuda: los artículos más vistos, lo que buscan y las búsquedas que volvieron vacías (una lista de escritura lista para escribir), trabajando por país de visitantes y dispositivo por sí solo, así que no necesita el widget de chat instalado para informar. both Los widgets de ayuda muestran los lugares donde aparece tu ayuda, la página pública y la ayuda en el widget, así como combinados, para que puedas ver cuánto se usa cada uno.
💡
El análisis permanece desactivado hasta que lo activas, y puedes hacer que las direcciones de los visitantes IP sean anónimas. Nada se registra antes de que optes por participar.
Elige lo que aparece en cada parte de la página
Cada sección del Centro de Ayuda (las categorías en la página principal, los artículos populares, la lista de artículos en una página de categoría y más) tiene su propia regla simple. Para cada uno puede mostrar o ocultarlo, y mostrar all Artículos, a Número de conjunto, el más reciente, o solo los que usted feature Cuando una regla termina una lista, los clientes siguen recibiendo un enlace "Mostrar todo", por lo que nada está realmente fuera de su alcance.
Usted también decide cómo se ven los votos útiles: ocultos, una relación amigable como "12 de 2013 14 Un ajuste de votos mínimos evita que un artículo nuevo muestre una imagen incómoda, como "0de 20130".
Ver qué artículos están funcionando
Cada artículo muestra un ¿Fue útil esta información? Cada sí o no se cuenta por artículo, así que puedes ver de un vistazo qué artículos responden bien a las preguntas y cuáles necesitan ser reescritos. Los votos repetidos del mismo visitante son ignorados, para que los conteos permanezcan honestos.
Texto y etiquetas
Puedes cambiar los encabezados y las etiquetas del Centro de ayuda para que coincidan con tu voz, deja cualquier campo en blanco y volverá a un valor predeterminado razonable, por lo que solo editas el texto que realmente quieres cambiar.
✅
El Centro de ayuda comparte una biblioteca con tu IA, y cada artículo que publiques aquí es el mismo contenido que la IA usa para responder a los chats y tickets.
Preguntas comunes
¿Necesito escribir contenido por separado para el Centro de ayuda?+
No, se construye a partir de los mismos artículos de la base de conocimiento que ya utiliza la IA. Publica un artículo una vez y puede servir para ambos.
¿Puedo mantener algunos artículos internos?+
Sí. Solo los artículos que publique y marque como públicos aparecerán en el Centro de ayuda, pero no se mostrará nada que no haya publicado.
¿Podrán los clientes seguir contactando con una persona?+
El enlace de ayuda del widget está a un toque de distancia para iniciar una conversación, por lo que el autoservicio nunca atrapa a nadie.
Crecimiento & SEO
Inteligencia del sitio (suite SEO)
Site Intelligence es OpsIQ incorpora SEO y suite de visibilidad de búsqueda. Recorra su sitio como un motor de búsqueda, pistas donde usted clasifica, investiga palabras clave, relojes backlinks y competidores, escanea su presencia del mapa local, verifica la velocidad de página y lo convierte en informes listos para el cliente, con un analista de inteligencia que explica qué arreglar y puede redactar los mezclados.
Inteligencia del SitioEl sitio de inteligencia: una puntuación de la salud del sitio desde el último gate, seguimiento en vivo de las palabras claves, una tendencia de clics orgánicos y el bucle de tres pasos: arrastrar, rastrear, dejar que la AI redacte los arreglos.
Correr un rastreo · empezar aquí
Un rastreo es OpsIQ visitando sus páginas de la manera en que lo haría un motor de búsqueda, para encontrar problemas técnicos: enlaces rotos, títulos faltantes, contenido fino, páginas lentas, problemas de indexación.
1
Comience el rastreo
En la vista general, haz clic para iniciar un rastreo. OpsIQ lo pone en cola y trabaja a través de tus páginas en segundo plano. Un indicador de estado muestra el progreso.
2
Lea los informes
Cuando termine, abra los problemas y la lista de páginas. Cada problema está agrupado por gravedad para que pueda abordar primero las victorias más grandes.
3
Deje que la IA le ayude
El analista de AI produce un informe en lenguaje claro sobre lo que es incorrecto y por qué importa, y puede generar correcciones sugeridas que usted revisa antes de aplicar.
Qué rastrea Site Intelligence
Rastreos y salud del sitio
Analiza tus páginas en busca de problemas técnicos de SEO y enumera cada página con sus problemas. Reejecuta en cualquier momento, o programalo.
Seguimiento de Rank
Añade las palabras clave que te interesan; OpsIQ comprueba dónde se encuentra tu sitio y realiza un seguimiento de los movimientos a lo largo del tiempo.
Investigación de palabras clave
Descubre nuevas ideas de palabras clave a las que dirigirte, con el entrenador de palabras principales de IA para ayudarte a priorizar.
Enlaces de retorno
Ve quién te enlaza, actualiza la lista y rechaza los enlaces que no quieres asociar con tu sitio.
Competidores
Añade dominios de la competencia y compara tu visibilidad con la de ellos, con un análisis de IA de competidores.
Cuadrícula local (mapa)
Escanea la visibilidad de tu perfil local en una cuadrícula geográfica para ver dónde apareces en el mapa, además de las herramientas del Perfil Empresarial de Google.
Velocidad de página
Ejecuta comprobaciones de velocidad de página para poder corregir páginas lentas que perjudican los rankings y las conversiones.
Contenido de AI
Generar resúmenes de contenido y borradores dirigidos a las palabras clave que estás segmentando.
Informes
Cree informes imprimibles y listos para el cliente de todo lo anterior.
Conecta Google para obtener datos precisos
Dos conectores de Google convierten estimaciones en números reales:
Google Search Console
Buscar
Obtenga los informes exactos de consultas, clics e impresiones que Google genera para su sitio web, mapee su propiedad y descubra oportunidades de posicionamiento directamente desde los datos propios de Google.
Google Analytics 4
Tráfico
Combina los datos de tráfico y participación con tus datos SEO para que los informes muestren la visibilidad y el comportamiento juntos.
Actualizaciones programadas e informes de marca blanca
Usted no tiene que ejecutar todo a mano. Refrescos programados re-run gates, cheques de rango, chequeos de palabras clave, refrescos backlink, escaneos locales-grid y generación de reportes en una cadencia (de forma diaria o semanal dependiendo del plan y volumen). OpsIQ cron, vea la sección Cron y automatización. Informes generados exportan como documentos impresos y listos para el cliente: las agencias envían a cada cliente una actualización SEO regular, y porque los datos de cada dominio son separados, cada cliente sólo ve su propio.
✅
Algunas características de Inteligencia del Sitio llaman proveedores de datos externos y AI a través OpsIQ's proveedor configurado. Funcionan fuera de la caja cuando la suite está habilitada para su plan. Si una actualización no funciona, confirme el OpsIQ cron se ejecuta (ver Cron y automatización).
¿Necesito añadir algo a mi sitio para el seguimiento SEO?+
Para obtener datos exactos de tráfico y búsqueda, conecte Google Search Console a GA4 para que pueda rastrear su sitio web y analizar sus resultados.
¿Puedo hacer un seguimiento de más de un dominio?+
Añade cada dominio por separado; sus rastreos, clasificaciones e informes permanecen completamente aislados entre sí.
¿Con qué frecuencia debo gatear?+
Una vez a la semana es suficiente para la mayoría de los sitios; haz un rastreo bajo demanda después de un gran cambio en el contenido o la estructura.
Crecimiento & SEO
Auto-Implementación (SEO Agent)
Auto-Implement es la parte de Site Intelligence que realmente aplica las correcciones que el analista de gate y AI recomienda, en lugar de sólo aconsejarle. El agente trabaja estrictamente de lo que ya encontró Site Intelligence (nunca puede inventar un cambio) y camina cada fijado a través del mismo bucle seguro: una vista previa de funcionamiento seco, su aprobación por paso, la escritura en vivo, una instantánea automática, y una re-rockwl que demuestra el número abierto de A
Implementación automáticaCómo funciona una sesión: el agente enumera las correcciones que ya se recomienda Inteligencia del Sitio, muestra un diff de funcionamiento seco de cada uno, aplica los que aprueba sobreSSHo un anfitriónAPI, instantáneas antes de cada escritura, y re-crawls para probar que el conteo de entrada abierta cayó.
Lo que puede cambiar
El agente solo aplica las correcciones que Site Intelligence (o el analista de IA) ya ha recomendado para ese dominio, y no las que se han encontrado en otras plataformas.
Configuración del servidor
sitemap.xml, robots. txt y redirección, reglas canónicas y de encabezado en. htaccess (Apache / LiteSpeed) o la configuración de nginx.
Cadenas de redirección
Colapsa una cadena de redireccionamiento multi-salto hasta un solo salto directo al URL final, dentro del mismo bloque. htaccess administrado, por lo que la velocidad y el valor del enlace dejan de filtrarse a través de los saltos adicionales.
Page <head>
Títulos de página, metadescripciones, etiquetas canónicas y bloques de datos estructurados (esquema) que faltan o son débiles.
WordPressSEO
Yoast, Rank Math y SEOPress títulos " meta, e imagen texto alt, aplicado a través de WP-CLI en elSSHel camino o la RESTAPIen el camino alojado.
WordPress datos estructurados
Adds JSON-LD (schema) a las páginas que no lo tienen. En el SSH En la ruta alojada, un pequeño ayudante administrado (un plugin que debes usar) imprime el marcado para que funcione con o sin un plugin SEO; en la ruta alojada, tu plugin SEO lo lleva.
Enlaces internos de la página
Añade un enlace interno relevante dentro del contenido existente de WordPress para rescatar páginas huérfanas y conectar publicaciones relacionadas. Un enlace por página, nunca dentro de un encabezado, un enlace existente o un código corto, y siempre aprobado por usted primero.
Reescrituras de contenido de página delgada
Crea borradores de contenido completo para páginas finas (activado por una opción de rastreo, ver más abajo) Cada borrador es revisado y aprobado por usted antes de que se publique algo, y el contenido antiguo se mantiene para que pueda ser restaurado.
Caché de página (WordPress)
Activa el almacenamiento en caché de páginas W3 Total Cache cuando el rastreo encuentra problemas de velocidad y ese plugin está instalado, por lo que las páginas se sirven más rápido.
ShopifySEO
Títulos y descripciones SEO de productos y colecciones, SEO de páginas y artículos de blog, más 301 Redirige, a través de la. Shopify Administrador API.
WebflowSEO
Título SEO por página y meta descripción a través del. Webflow Datos API v2.
Preparar las correcciones automáticamente (dos opciones de rastreo)
El panel Configurar inteligencia del sitio para un dominio (su configuración de rastreo) tiene dos opciones que deciden cuánto el agente se alinea por usted con anticipación. Ambas están desactivadas de forma predeterminada y ambas usan crédito de IA, por lo que solo las activa cuando desea que ese trabajo se haga por ustede.
Preparación automática de correcciones de IA después de cada rastreo
Cada rastreo también escribe el contenido concreto de la corrección (títulos, metadescripciones, texto alternativo, esquema, redirecciones) para lo que encontró, por lo que las correcciones están listas para revisar y aplicarse en el momento en que finaliza el rastreos en lugar de generarse más tarde bajo demanda.
Reescritura de contenido por IA (páginas finas)
El agente puede redactar contenido de reemplazo completo para páginas delgadas. Nada se publica nunca por sí solo: cada borrador aparece como un cambio que revisa lado a lado y aprueba o rechaza, el contenido anterior se mantiene para que sea reversible, y está limitado a unas pocas páginas por pase.
💡
Cada cambio sigue pasando por el mismo proceso de aprobación paso a paso, instantánea y reversión que cualquier otra corrección, así que activarlas nunca pone nada en vivo por sí solo.
Dos maneras de conectar
SSH / SFTP ruta
Autogestionados
Para los sitios en su propio servidor, el agente se conecta a través de SSH/SFTP Utiliza las credenciales que almacenas, edita la configuración del servidor y los archivos de paginación directamente, y ejecuta WP-CLI para. WordPress. Mejor cuando tienes acceso a shell y quieres control total de los archivos.
Hosted-API ruta (no SSH)
Sin shell
Para plataformas que no permiten SSH, el agente trabaja enteramente a través de un funcionario API conector, WordPress (REST + Contraseñas de Aplicación), Webflow (Data)API v2) y Shopify (Admin API). Nada se instala en el host.
💡
Wix y Squarespace no tienen un API público de SEO-write, así que en esas plataformas Auto-Implement se ejecuta en modo asesor: te muestra el cambio exacto que hay que hacer (el título preciso, meta o configuración) para que lo apliques manualmente. Todo lo demás es de solo lectura y seguro.
Encienda los conectores
El agente llega a cada plataforma a través de un conector:
Construido en
Shopify y WordPress barco de conexión con OpsIQ, sólo habilitarlos bajo Connectors y añadir las credenciales de la tienda / sitio.
Desde el Marketplace
Webflow, Wix y Squarespace se instalan desde Conectores → Marketplace, luego conéctate de la misma manera.
Cómo se ejecuta una sesión
1
Elige las soluciones
Abre la opción de implementación automática (cohete) en la sección Site Intelligence, que muestra los problemas que ya ha encontrado Site Intelligence y que puede corregir en este dominio.
2
Vista previa de cada cambio
Para cada solución el agente muestra un diff de funcionamiento seco (exactamente lo que escribirá) antes de cualquier cosa toca el sitio en vivo.
3
Aprueba paso a paso
Usted aprueba (o omite) cada cambio individualmente, y nada se aplica sin su aprobación explícita en ese paso.
4
Escribe, luego toma instantáneas
Con la aprobación el agente hace que el cambio en vivo sobreSSHo el anfitriónAPIy guarda una instantánea primero, así que cualquier cambio puede ser removido.
5
Demuéstralo, vive
A medida que aplica cada cambio, el agente vuelve a comprobar inmediatamente esa página exacta y muestra un veredicto de “corrección en vivo” paso a paso. Así puedes ver cómo cada corrección llega a la página activa mientras sucede. Al final, vuelve al sitio completo y confirma que se ha reducido el número de problemas abiertos.
Seguridad & facturación
Solo SEO
El agente sólo puede hacer lo que Site Intelligence recomendó para ese dominio. No puede realizar cambios arbitrarios en su sitio o servidor.
Aprobación por pasos
Cada escritura se previsualiza como una diferencia y solo se aplica después de que apruebe ese paso específico.
Instantánea & rollback
Se guarda una instantánea antes de cada escritura, por lo que cualquier cambio puede revertirse.
Prueba en vivo por paso
Cada página modificada se vuelve a comprobar en el instante que se escribe y obtiene un veredicto de “corrección en vivo”, por lo que una corrección se confirma contra la página en vivo inmediatamente, no solo en el re-rastreo final.
El contenido nunca se publica automáticamente
Los enlaces internos y las reescrituras de contenido de página delgada tienen un mayor impacto, por lo que siempre se muestran para su aprobación y nunca se aplican automáticamente, independientemente del modo en el que se ejecute.
Solo IA gestionada
La implementación automática se ejecuta en IA administrada; está bloqueada cuando un espacio de trabajo utiliza sus propias claves (BYOK).
Facturación
AI tokens Bill normalmente como usted los utiliza, más una tarifa plana por uso por sesión de Auto-Implement, ambos extraídos del mismo crédito de la Administración-AI.
✅
Habilite la implementación automática en la página de configuración de IA (tarjeta de implementación automatizada) y asegúrese de que el conector para su plataforma esté conectado primero.
¿Cambia algo sin preguntar?+
No, cada cambio se previsualiza como una comparación en prueba y solo se aplica después de que apruebe ese paso exacto. Se guarda una instantánea antes de cada escritura para que pueda revertirla.
¿Necesito acceso a SSH?+
No en WordPress, Shopify o Webflow. Esos trabajos a través de su funcionario APIs sin acceso a la concha. SSH es sólo uno de los dos caminos, usado cuando desea que el agente edite config servidor y archivos directamente en su propio servidor.
¿Cómo sé que funcionó?+
Después de aplicar las correcciones aprobadas, el agente vuelve a rastrear el sitio y muestra el recuento de problemas abiertos antes y después, para que pueda confirmar que las correciones han reducido los problemas.
¿Reescribirá o publicará el contenido de la página por sí mismo?+
No, las reescrituras de contenido con IA están desactivadas hasta que las activas en las opciones de rastreo. Están limitadas a unas pocas páginas finas por pasada y cada borrador se muestra para su aprobación lado a lado antes de publicarse.
¿Puedo usarlo con mis propias llaves de IA?+
No. La implementación automática solo es para IA administrada y está bloqueada bajo BYOK. Factura los tokens de IA normalmente más una tarifa fija por uso por sesión, con el mismo crédito de IA administrado.
Crecimiento & compromiso
Estudio de encuestas
Survey Studio es el espacio de trabajo para crear encuestas editables que se pueden entregar como una página independiente, un widget del sitio web o incrustar en línea. El producto actual también proporciona enlaces alojados, vistas previas de borradores firmados, invitaciones privadas, uso compartido de códigos QR, exploración de respuestas y análisis con alcance de encuesta.
⚠️
Límite actual versus objetivo: Conector Builder, la experiencia de creación y vista previa premium survey Survey Studio todavía necesita la arquitectura independiente de implementación múltiple, el token firmado de Survey Identity Gateway, el cableado de orientación/variables, el flujo de envío de CRM Outreach y los límites de registro/estado del proveedor propiedad de Survey. surveys.* API.
Crear una encuesta
1
Elige cómo la gente lo tomará
El asistente actual ofrece página y enlace independientes, widget de sitio web e incrustación en línea. El flujo de destino aprobado comienza con el tipo de encuesta y más tarde agrega correo electrónico CRM, enlace privado y implementaciones QR como opciones de primera clase.
2
Elige el propósito
Elija NPS, CSAT, CES, comentarios sobre el producto, post-compra, cancelación, incorporación, sitio web, evento, seminario web, soporte, lead/demostración, prueba, testimonio, investigación, empleado, admisión o comentarios generales.
3
Usar una plantilla completa o empezar en blanco
Al elegir una plantilla, se crea un borrador copiado: cambiar la encuesta no cambia el inicio ni ninguna otra encuesta.
4
Personalizar o Revisión rápida
Personalizar abre cada pregunta, diseño, comportamiento y control de entrega. La revisión rápida abre el mismo borrador en la comprobación final de la vista del cliente.
Opciones de entrega y comportamiento actual
Página independiente y enlace
Una página de marca responsiva con su propio URL. Utiliza invitaciones privadas y vencimiento cuando cada destinatario necesita un enlace controlado.
Widget del sitio web
El canal heredado migrado. Puede usar reglas de página, geografía, dispositivo, visitante, fecha, muestreo, tiempo de reutilización, visita y cuota. Todavía está respaldado por el puente de widget activo heredado mientras se crea la arquitectura de implementación.
Inserción en línea
Una encuesta adaptable que se coloca dentro de una página, portal, producto o centro de ayuda y no requiere Promotion Studio.
Correo electrónico
Hoy en día el estudio puede generar invitación HTML El envío de extremo a extremo desde los contactos/segmentos de CRM, con consentimiento, supresión, programación, reintento y correlación de respuestas, es el objetivo aprobado para la integración de CRM Outreach.
Diseño y vista previa empresariales
Las páginas de encuestas tienen temas y familias de diseño de página propiedad de Survey, controles adaptables, copia de bienvenida y finalización, y una vista previa del borrador firmado. La vista previa de diseñador es de ancho completo debajo del editor, no un riel lateral estrecho; utiliza el tiempo de ejecución real alojado en un marco aislado y admite anchos para escritorio, tableta y teléfono; el tráfico de vista previa no escribe respuestas ni análisis.
💡
Survey Studio es independiente de Promotion Studio, por lo que la orientación en tiempo de ejecución, la identidad, los activos, el procesamiento y las analíticas deben ser propiedad de Survey. El contenido promocional solo puede reutilizarse mediante una copia/importación explícita única que cree datos separados de la Encuesta; las ediciones posteriores de la Promoción no deben tener efecto alguno.
El producto de forma completa
Despliegues independientes
En vivo
Una encuesta puede tener versiones separadas de página, widget, incrustación, correo electrónico CRM, enlace privado y implementaciones QR, cada una con su propio estado, diseño, público y análisis. Cada encuesta se puede pausar, deshabilitar o eliminar.
CRM Alcance y campañas
En vivo
Cree una audiencia verificada a partir de segmentos de CRM y conectores compatibles con encuestas, congelala en una versión inmutable, emita una invitación firmada cada vez y envíela mediante el conector de correo electrónico saliente anclado con prueba de entrega por invitación.
Kit de campo y validación
En vivo
Deslizadores, elección de imagen, carga de archivo, firma, dirección, teléfono, encabezados y texto enriquecido, con longitud mínima / máxima, correo electrónico/URL/número preestablecidos, texto de error personalizado y parámetros URL por pregunta.
Lógica, fórmulas y resultados
En vivo
Grupos de condiciones AND/OR, reglas de ramificación, un motor de fórmula segura sobre las respuestas y bandas de puntuación que llevan su propia página de resultados: una prueba con puntuación aterriza en su veredicto.
Idioma, quiosco, precarga
En vivo
Un menú desplegable del idioma del visitante que muestra solo los idiomas con traducciones reales, modo quiosco para tabletas compartidas (objetivos más grandes, restablecimiento automático, sin redirecciones), un creador de enlaces precompletados y texto editable de pie de página e insignia segura.
Pruebas de versión A/B
En vivo
Publica una versión desafiante en cualquier implementación con división de tráfico. Los visitantes se asignan automáticamente, las respuestas se etiquetan con la versión que realmente se ha servido y la tabla comparativa muestra las respuesta, el tiempo de finalización y la puntuación media por versión.
Resumen semanal
En vivo
Un correo electrónico semanal con los últimos 7 días de KPIs de encuesta, las encuestas más ocupadas, el Pulso de comentarios y la última reunión informativa sobre IA, enviado a través del conector saliente anclado. Configurarlo en Centro de entrega, Automatización.
Gobernanza
En vivo
Las listas de acceso por encuesta restringen quién puede editar, publicar o eliminar una encuesta. La aprobación de publicación (cuatro ojos) requiere que un segundo administrador publique el borrador exacto; la edición restablece la aprobación.
Plataforma de desarrollador
En vivo
Contrato de conector 2.2, encuestas mecanografiadas* y actividades de retroalimentación* sobre api/v1, eventos de encuesta canónica.*, webhooks firmados duraderos con formatos de retransmisión de Slack y Hojas de cálculo de Google y una respuesta PDF export.
Crecimiento & compromiso
Análisis de encuestas y comentarios son productos diferentes
Survey Analytics explica cómo una encuesta está llegando a las personas y su rendimiento, mientras que Feedback explica lo que los clientes dijeron de todas las fuentes permitidas y qué debe hacer la empresa al respecto. Los dos productos se vinculan entre sí pero no comparten ni sobrescriben la verdad analítica.
Análisis de encuestas
Se ingresa desde la encuesta individual en Survey Studio, no desde la navegación lateral global. Mide elegibilidad, exposición, comportamiento de activación, inicios, finalización, abandono, fricción entre preguntas y ramas, tiempo, resultados de implementación/campaña/versión y confiabilidad en tiempo de ejecución.
Descripción general y bandeja de entrada
Un feed cronológico con permisos para respuestas de encuesta completadas, comentarios sobre widgets heredados, chat y CSAT de tickets, comentarios de respuesta a tickets, calificaciones de respuestas AI del cliente, votos útiles de la base de conocimientos y fuentes externas/personalizadas aprobadas.
Análisis de comentarios
Analiza el significado del cliente: tendencias de métricas originales, temas/temas, sentimiento, emoción, intención, urgencia, solicitudes, quejas, elogios, segmentos de viaje/producto/servicio/equipo, detractores y resultados en bucle cerrado.
Propiedad de los datos
Las respuestas de la encuesta siguen siendo autorizadas en el almacenamiento de la Encuesta. La retroalimentación almacena una referencia de origen reconstruible y señales derivadas, luego carga las pruebas permitidas bajo demanda.
⚠️
La página de comentarios actual todavía tiene un navegador de respuestas de encuesta y una bandeja de entrada de widget heredada independiente, y sus totales de IA aún no utilizan el modelo de origen normalizado completo. El diseño unificado de Descripción general / Bandeja de salida / Análisis / Fuentes e integridad es el objetivo de implementación.
NPS, CSAT, CES, estrellas, pulgares y utilidad deben siempre conservar su método original, escala, muestra, ventana de fecha y denominador; nunca se deben combinar en un promedio inexplicable.
Crecimiento & SEO
Estudio de Promociones
El Promotion Studio convierte su sitio web en un motor de conversión. Diseño pop-ups, banners, toboganes, barras top/bottom, tomas de pantalla completa, bloques inline e incluso redirecciones basadas en el país, luego mostrar el mensaje correcto al visitante adecuado en el momento oportuno. OpsIQ widget ya en su sitio, por lo que no hay nada extra para instalar. Usted diseña y ahorra campañas en cualquier momento; sólo muestran una vez que usted Publish ellos y el estudio se activa para su espacio de trabajo.
Estudio de PromocionesEl diseñador visual: una paleta de bloques a la izquierda, tu campaña en el lienzo (aquí un pop-up de cupón personalizado usando un token {first_name}), y el panel de segmentación + publicación a la derecha.
La gran imagen
Campaña
¿Qué?
Una promoción: pop-up, banner, bar, slide-in, pantalla completa, bloque en línea o geo-redirect. Cada uno tiene un objetivo: ventas, plomo, registro, chat, encuesta, anuncio.
Diseño & versiones
¿Cómo?
Construye la mirada en el editor visual. Cada ahorro crea una nueva versión, así que siempre puedes volver a rodar. Nada se pierde nunca.
Segmentación
Quién
Quien lo ve: país, página, dispositivo, fuente de tráfico, retorno vs nuevo, horario y (con un conector) sus clientes conectados.
Activadores
Cuando
Cuando aparece: instantáneamente, con retraso, al desplazarse, en la intención de salida, cuando está inactivo, en un clic, después de N páginas o desde la actividad del chat / ticket.
Análisis
Resultados
Impresiones en vivo, clics, conversiones, un embudo de salida, divisiones por país / página / dispositivo, ganadores A/B y una visión de IA.
Lanza tu primera promoción en 5 pasos
1
Empezar desde una plantilla o en blanco
Abre Promotion Studio y haz clic en Nueva campaña, o elige un diseño ya preparado de la galería Plantillas. Se abrirá un borrador en el diseñador.
2
Diseñarlo
Arrastre en bloques, encabezados, texto, botones, imágenes, placas, estadísticas, cuentadowns, formas, cupones, videos, puntuaciones, spin-wheels. Colores de estilo, gradientes y efectos 3D con los deslizadores. Avance Desktop / Tablet / Mobile, y utilice Movilidad gratuita para colocar cualquier cosa en cualquier lugar.
3
Personalízalo ahora
Tipo de tokens como {first_name}, {country} o {company} En el momento de la exposición se convierten en los valores reales del visitante.
4
Objetivo & disparador
Elige quién la ve (país, página, dispositivo, público) y cuándo se activa (retraso, desplazamiento, intento de salida). Deja una regla en blanco para significar todos.
5
Comprueba, luego publica
Haz clic en Comprobar para realizar un análisis rápido antes del lanzamiento y, a continuación, haz clic en Publicar.
Bloques que puedes construir
Contenido
Núcleo
Encabezamiento, párrafo, lista, cita, imagen, icono, insignia, estat, divider y espaciadora, los bloques de construcción de cualquier mensaje.
Llamado a la acción
Núcleo
Botones con acciones reales: abrir un enlace, iniciar un chat, crear un ticket, copiar un cupón o saltar a una página.
Urgencia & captura
Prima
Temporizadores de cuenta atrás, formularios (correo electrónico / teléfono / texto), revelaciones de cupones e incrustaciones de video.
Gamificado & feedback
Prima
Ruedas de giro para ganar, tarjetas rasca y gana, NPS / clasificaciones por estrellas y embudos multi-paso.
Diseño & efectos
Prima
Columnas, barras de progreso, acciones sociales, garrapatas de prueba social, sí/no dos pasos, cuestionarios y efectos 3D, inclinación, brillo, paralaja, vidriomorfismo.
Tokens de personalización
Escribe cualquiera de estos en los títulos, párrafos, botones, insignias, estadísticas, listas o citas y serán reemplazados por los detalles del visitante en el momento que se muestre la promoción (siempre limpiados para mayor seguridad):
Los tokens disponibles
From the visit: {country} {city} {device} {page_path} {utm_source} {referrer}
From your CRM: {first_name} {last_name} {email} {company} {segment} {lifecycle_stage}
From a connector: {balance_due} {unpaid_invoices} (logged-in customers only)
Referencia de orientación
País & ubicación
Mostrar solo en (u ocultar de) países, ciudades o zonas horarias seleccionadas a través de GeoIP. Excelente para ofertas específicas de la región o una redirección geográfica.
Páginas & URLs
Limitar a ciertas páginas usando iguales / comienza con / contiene / regex, y excluir las páginas también.
Dispositivo
Escritorio, tableta o móvil, por ejemplo una barra delgada en el móvil, un modal en el escritorio.
Tipo de visitante
Nuevos, recurrentes, conocidos (en tu CRM) o anónimos; segmentos de CRM, etapa del ciclo de vida, puntaje de leads o idioma del navegador.
Fuente de tráfico
Por UTM (utm_source, utm_campaign) o sitio de referencia, por ejemplo sólo los visitantes de un anuncio específico.
Horario & frecuencia
Fechas de inicio / finalización, ventanas horarias y con qué frecuencia puede verlo una persona (por sesión, por día, después de que cierren / hagan clic / convierta).
División de tráfico A/B
Muestre a un porcentaje de visitantes y ejecute variantes frente a frente; la misma persona siempre ve la misma variante.
Audiencias (ha iniciado sesión)
Con un conector habilitado, objetivo por estado de cuenta en vivo, por ejemplo clientes con facturas no pagadas o suscriptores activos.
Activadores
Elija cómo aparecerá la promoción: Inmediatamente, después de un retraso, en profundidad de desplazamiento, al salir del sitio, cuando esté inactivo, al hacer clic en un elemento, después del número de páginas vistas, al abandonar el formulario o desde la actividad de chat / ticket. window.OpsIQPromo.fire('event').
Orientar a clientes conectados (conectores)
Esto es lo que hace OpsIQ Promociones especiales: conecta una plataforma como. WHMCS (o cualquier conector que admita audiencias) y el estudio puede dirigirse a los visitantes por su estado de cuenta activa.
1
Habilitar un conector de audiencia
Bajo Connectors, habilitar uno que exponga los hechos del público (WHMCS los clientes son reconocidos de forma segura cuando se registran en esa plataforma, OpsIQ nunca confía en un email escrito.
2
Agregar una regla de audiencia
En Segmentación > Público de la campaña, requiera que se haya iniciado sesión y agregue reglas como facturas impagadas >= 1, la suscripción está vencida o hay crédito en la cuenta > 0.
3
Personaliza con sus datos
Utilice símbolos como {first_name} o {balance_due}. Un recordatorio "Tiene una factura vencida" se escribe a sí mismo.
✅
El objetivo de audiencia es seguro por fallos: si el conector no puede confirmar un hecho (o el visitante no está conectado), la promoción simplemente no se muestra, así que una oferta dirigida a facturar nunca llega a la persona equivocada. ¿Construir su propio conector? Vea "Promoción de audiencia apuntando" abajo.
El comercio conectado (la superpotencia del estudio)
Tarjetas de producto desde tu tienda
Datos en vivo
Un bloque de producto tira artículos reales (nombre, precio, precio de venta, imagen, enlace) directamente desde WHMCS, WooCommerce, Shopify o tu OpsIQ Facturación. Tick "Keep fresh" y la tarjeta actualiza su precio de la plataforma cada hora mientras se publica.
Cupones aprovisionados en la tienda
Cupones
Un bloque de cupones puede crear el código de descuento real en tu tienda en el momento que lo publicas, por lo que el código que un visitante revela siempre funciona al finalizar la compra.
Ingresos por orden de verdad
Atribución
Los pedidos reales de sus plataformas se corresponden con campañas por hora (por código de cupón utilizado o por correo electrónico del líder) así que los ingresos que usted ve son de ventas reales, no estimaciones.
Prueba social real
Confianza
El ticker social-prueba puede liderar con órdenes recientes genuinas ("Ada ordenó Plan de Inicio · 2h hace"), nombre y artículo solamente, nunca correos electrónicos o cantidades.
Experimentos & viajes
Variantes A/B y ganador automático
Dividir el tráfico a través de las variantes del diseño; dejar que el estudio promueva automáticamente al ganador estadístico, o el tráfico manual al optimismo bandido que desplaza a los visitantes hacia lo que convierte como evidencia entra.
Aumento de retención
Reserva una porción de visitantes que no vean nada, para poder probar que la propia campaña causa el aumento.
Variantes de segmento
Contenido diferente por audiencia en la campaña SAME (visores móviles, carritos grandes, clientes retornados), cada segmento obtiene su propia versión.
Activar experimentos
Las variantes también pueden probar CUÁNDO aparecerán: inmediato vs retrasado vs intención de salida, medido frente a frente.
Viajes (encadenamiento)
Meta por lo que alguien hizo con otra campaña ("campaña de visión A pero no se convirtió") para construir secuencias de promoción multi-paso.
Teasers
Una pequeña píldora que los visitantes pueden volver a abrir después de cerrar la campaña, por lo que un pop-up cerrado nunca se ha ido para siempre.
Saber lo que pasó
Mapa de calor de clics
Diseñador
En el diseñador, activa o desactiva el mapa de calor para pintar los clics reales de visitantes sobre cada bloque de tu diseño.
Embudo de pasos
Embudos
Las campañas de varios pasos muestran exactamente dónde se quedan los usuarios, pantalla por pantalla.
Comparar las campañas
Estudio
Poner hasta cuatro campañas lado a lado (impresiones, clics, conversiones), mejor valor resaltado.
Historia semanal y resumen
IA
Cada lunes, un resumen aterriza en tus notificaciones; el botón 📖 Historia semanal escribe un resumer en lenguaje sencillo con los próximos pasos cuando lo desees.
Trabaja cómodamente
Copiloto de IA e ideas
Chatea con el copiloto de diseño para editar el lienzo ("hacer que el titular sea urgente, agregar una cuenta atrás"), obtener ideas de campaña a partir de tus propios datos de tráfico, traducir una campaña por país o corregir automáticamente un puntaje bajo del diseño.
Importación de Kits
Un comando lee tu sitio web y propone los colores y fuentes de tu marca real; guarda y cada picker se lleva con ellos.
Embudos de múltiples pantallas
Los bloques de pasos se hacen realidad por pantalla: pestañas para cada pantalla, añadir o reordenar las pantallas y la vista previa sigue.
Versiones con nombre y presencia
Nombra versiones importantes ("Candidato a lanzamiento"), restaura cualquiera de ellas y ve una advertencia cuando un compañero de equipo esté editando la misma campaña.
Tira de dispositivo y reglas
Vea el escritorio, la tablet y el móvil uno al lado del otro en una sola vista; cambie las reglas de píxeles para una colocación precisa.
Páginas y canales alojados
Cada campaña también puede ser una página alojada independiente para biografías y códigos QR, una secuencia de goteo de correo electrónico para clientes potenciales capturados o un borrador web push con un solo clic.
Seguridad de la empresa
Publicar ventanas de congelación (períodos de cambio-congelación), un interruptor de emergencia para pausar todo, aprobaciones, seguimiento de auditoría y revertir versiones.
¿Necesito añadir código a mi sitio?+
No, las promociones se entregan a través del mismo widget OpsIQ que ya tienes instalado. Diseña, publica y listo.
¿Verán los visitantes el mismo pop-up una y otra vez?+
No. Establecer gorras de frecuencia (por sesión / por día, o parar después de que alguien cierra, haga clic o conversos).
¿Quién puede publicar?+
Las funciones de publicación, pausa, archivo y restablecimiento están limitadas a los propietarios del espacio de trabajo y los administradores completos.
Crecimiento & SEO
Diseñador de Promoción
Promotion Designer es un editor de bloques adaptable para crear, revisar, editar y publicar una experiencia de campaña.
Pantalla de productoEl diseñador combina un lienzo en vivo, vistas previas de dispositivos, bloques, variables de personalización, comentarios e historial de versiones.
Usa bloques para componer la experiencia, obtener una vista previa de cada ventana compatible e insertar las variables de personalización aprobadas. Revisa los comentarios y la procedencia de los medios de IA antes del lanzamiento.
Crecimiento & SEO
Plantillas de promoción
Las plantillas proporcionan una galería de inicio categorizada y con capacidad de búsqueda para las campañas de Promotion Studio.
Pantalla de productoLa galería de plantillas filtra los diseños premium y aplica colores de marca del espacio de trabajo cuando una plantilla se convierte en un borrador.
Busque o filtre por categoría, cargue resultados adicionales, obtenga una vista previa de la experiencia completa y luego elija Usar plantillaLa nueva campaña sigue siendo un borrador y puede cambiarse en el Diseñador de promociones antes de su publicación.
Crecimiento & SEO
Análisis de promoción
Los análisis de promoción conectan las impresiones y los clics con las conversiones, el contexto del público, los resultados de la acción del conector y el aprendizaje de campaña.
Pantalla de productoLos análisis de promoción muestran el rendimiento del titular, la audiencia y los desgloses de disparadores, exportación de clientes potenciales y resultados de acciones conectoras.
Desglose los resultados por país, página, desencadenante y dispositivo; exporte los clientes potenciales capturados cuando sea necesario. Los resultados de las acciones del conector muestran si el seguimiento prometido de la promoción realmente se ha realizado. La información de IA y los resúmenes de aprendizaje deben tratarse como hipótesis para validar, no como pruebas automáticas.
Crecimiento & SEO
Anuncios
Los anuncios publican un mensaje en el área de notificación del widget con orientación opcional, programación y llamada a la acción.
Pantalla de productoEl editor de anuncios incluye contenido, CTA, público, segmento, regla de página, fechas activas y estilo visual.
Elige todos los visitantes, los visitadores que han iniciado sesión o los nuevos visitantes; opcionalmente, restringe la audiencia con un segmento de contacto y una regla de página. Establece fechas activas desde/hasta y un indicador activo. Los colores y los estilos predefinidos Premium cambian la presentación pero no reemplazan el contenido claro.
Crecimiento & SEO
Campañas de push
Las campañas push envían notificaciones del navegador a los visitantes suscritos después de que hayan salido del sitio.
Pantalla de productoEl compositor de push muestra el alcance, contenido, medios, acciones, reglas de destino y estado de programación de la suscripción.
Una campaña puede incluir el título, cuerpo, icono, imagen del héroe, insignia, CTA y hasta dos botones de acción; una notificación persistente permanecerá hasta que el visitante interactúe con la misma.
Puedes seleccionar un destinatario por audiencia, segmento de contacto opcional y regla de página. Guarda un borrador, programalo o envíalo inmediatamente. Utiliza las métricas de suscripción y clic para evaluar el alcance. En los sitios web integrados de terceros se requiere HTTPS y un service worker alojado correctamente; consulta Web Push en sitios web de terceras partes.
Privacidad
Estudio de consentimiento de cookies
El estudio Cookie Consent diseña la pancarta de cookies que tus visitantes ven, define lo que cuenta como esencial para tu negocio, aplica el comportamiento correcto para cada región del visitante y (crucialmente) efectivamente hace cumplir el consentimiento para que las etiquetas de análisis y marketing no funcionen hasta que el visitante esté de acuerdo. La banner se entrega a través del widget OpsIQ ya en tu sitio. Es un estudio de diseño premium; la bandera muestra sólo una vez que tienes el consentimiento de trabajo.
Consentimiento de cookiesEl banner de consentimiento como lo ven los visitantes: su redacción, sus categorías (esencial siempre está en, el resto son la elección del visitante), y Aceptar / Rechazar / Preferencias, con la aplicación per-categoría detrás de ella.
Las pestañas del estudio
Diseños
Escoja de una gran biblioteca de diseños de banner y un sistema de color completo (transparente, sólido o gradiente) para que coincida con su marca.
Estilo
Ajuste el texto, las etiquetas de los botones, los enlaces a políticas, la posición del banner y cuánto tiempo se recuerda una elección.
Categorías
Define tus propias categorías de cookies y los visitantes que lo hacen. Tú decides qué es esencial. Esencial siempre está en; todo lo demás es suyo para permitir o rechazar.
Cookies (escáner)
Escanee su sitio y deje que OpsIQ AI detecte automáticamente cada cookie y rastreador, lo categorice y escriba un propósito en lenguaje claro. Esto alimenta la tabla de preferencias y el bloqueo automático.
Ley & región
Elige cómo se comporta el consentimiento por ley (abajo) y activa el uso compartido de dominios de grupo, el modo de consentimiento de Google v2 e intervalos de re-consentimiento.
Análisis
Vea las estadísticas de consentimiento en vivo desde opciones reales de visitantes (valores de aceptación, por categoría) abarcadas a su espacio de trabajo.
Obtenga la ley correcta automáticamente
Automático por región
Inteligente
Los visitantes de la UE / Reino Unido obtienen opt-in (nada no esencial se ejecuta hasta que aceptan); los visitantes estadounidenses obtienen una opción de exclusión con una opción "No vender o compartir". OpsIQ decide por visitante por ubicación.
Opt-in en todas partes
Estricto
Strict GDPR para todos los visitantes, nada no esencial hasta que acepten.
Opt-out en todas partes
Lenient
Las etiquetas se ejecutan a menos que el visitante opte por no participar.
Las señales de Control global de privacidad (GPC) y No realizar seguimiento (DNT) del navegador se respetan en cualquier modo que elija.
Cómo la aplicación de la ley realmente detiene la captura
El consentimiento aquí no es sólo una bandera. Controla lo que funciona:
Aplicación por categorías. Cuando un visitante rechaza una categoría, OpsIQ para la captura que coincide, con análisis apagados, el seguimiento analítico genuinamente no funciona, no sólo visualmente.
Bloqueo automático de tus propias etiquetas. Etiquete cualquier script de terceros para permanecer inerte hasta que se conceda su categoría. OpsIQ activa el instante en que el visitante consiente, y nunca antes.
Bloquear automáticamente una etiqueta de terceros
<!-- This tag stays dormant until the visitor grants the "marketing" category -->
<script type="text/plain" data-opsiq-consent="marketing"
src="https://example.com/ads-pixel.js"></script>
💡
Google Consent Mode v2 (Law & Region tab) emite las señales gtag correctas de la elección de cada visitante, por lo que GA4 y Google Ads obedecen el consentimiento nativo. La mayoría de los sitios no necesitan IAB TCF, es decir, sólo para sitios en los que se ejecutan anuncios programáticos IAB-framework.
Comparta el consentimiento en sus sitios
Activar el intercambio de dominios para que un visitante que acepta uno de tus sitios no se le pida otra vez a los demás en este grupo de trabajo. Su elección lleva al otro lado por el número de días que estableces. Apágalo para un consentimiento estricto por dominio. Cookie Consentimiento empareja con la página Privacidad & Compliance, que mantiene el libro de consentimiento (prueba cada concesión y revocación).
¿Rechazar el análisis realmente detiene el seguimiento?+
Sí. La aplicación de la vigilancia para detener la captura coincidente en la fuente. No es un banner cosmético.
¿Necesito un desarrollador?+
No para el banner. Nave a través del widget. Sólo la bloqueo automática de sus propias etiquetas de terceros necesita un cambio de marcación una vez en esas etiquetas (shown above).
¿Dónde está la prueba de que un visitante consintió?+
En la página de Privacidad y cumplimiento: un registro de consentimientos que permite realizar búsquedas en cada concesión y revocación por contacto, canal, acción y fecha.
Crecimiento & SEO
Mensajes proactivos
Los mensajes proactivos alcanzan automáticamente el momento en que el comportamiento de un visitante coincide con una regla, antes de preguntar. Construye cada uno como norma con tres partes: lo que debe suceder, cuando debe disparar, y con qué frecuencia. Todo se entrega a través de la OpsIQ widget ya en su sitio.
ProactivoCada regla proactiva es tres opciones: qué sucede (chat, banner, tour, push, email, webhook), cuándo (condiciones) y con qué frecuencia (refrigeración).
Las tres partes de una regla
1
Qué debe suceder (acción)
Mostrar una burbuja de chat o banner on-page, iniciar un Tour guiado, enviar un empuje web o correo electrónico, asignar a un departamento, o disparar un Webhook.{{visitor_name}}y{{page_title}}se convierten en valores reales.
2
Cuando debe disparar (condiciones)
Gorrión que lo activa: página/URL, tiempo en la página, profundidad de desplazamiento, puntaje de plomo, retorno vs nuevo, ocioso. Sin condiciones, la regla se dispara para cada visitante. Añadir al menos uno a apuntarlo. Las condiciones se combinan con AND.
3
¿Con qué frecuencia (frecuencia)
Establezca una refrigeración para que la misma persona no esté plagada, por ejemplo una vez por sesión o una vez al día. Cada regla tiene un estado de encendido/apagado.
⚠️
El espacio de trabajo "Run time/idle rules hourly" permite que las acciones del lado servidor (email, push, webhook, assign) incendien un horario para contactos conocidos que no están actualmente en la página, así que puede "email idle hot leads" automáticamente. Necesita el OpsIQ cron corriendo. Déjalo si sólo deseas usar los lodos en vivo.
¿Se disparará para todos?+
Añade al menos una condición (página, puntuación de leads, visitantes que regresan…) para dirigirte a los visitantes adecuados.
¿Cómo se relacionan estos con los flujos y recorridos?+
Funcionan juntas: una regla proactiva puede iniciar un tour guiado, y un flujo de chatbot puede ser activado por una regla Empieza con una sola regla de mensaje de chat, luego superpone las otras.
Crecimiento & SEO
Flujos de chatbot
Chatbot Flows script ramificando conversaciones dentro de tu widget de chat (verde, respuestas de palabras clave, caminos guiados) sin código. Un flujo es un conjunto de pasos conectados (nodos): haces una pregunta, el visitante elige una opción, y el flujo los envía por la rama que coincide. Sólo los flujos activos funcionan en tu sitio.
Cómo funcionaFlujos de chatbot
Flujo vs la AI · cuándo utilizar cuál
Usar un flujo
Cuando el camino es predecible y lo deseas idéntico cada vez: pasos de reserva, un mago de retorno, un "que plan?" elija, recolectando un correo electrónico antes del despegue. Flujos nunca improvisan.
Usa la IA
Cuando las preguntas son abiertas, "¿hace este trabajo con mi configuración?". El chat de cliente AI responde desde su conocimiento entrenado. Un flujo puede entregar a la IA (o un humano) en cualquier paso.
Activadores
Saludo
Se ejecuta como el mensaje de apertura cuando un visitante abre por primera vez el chat.
Palabra clave
Se ejecuta cuando el visitante escribe una palabra que has incluido (por ejemplo, reembolso, precios, cancelar).
Después de detalles / después del retraso
Comienza una vez que se comparten los detalles del contacto o un tiempo establecido en la conversación.
Al final del chat / Proactivo
Se ejecuta cuando el chat termina (por ejemplo, una calificación) o se inicia por una regla de mensaje proactivo.
Construye uno en cuatro pasos
1
Crea el flujo
Haz clic en Nuevo flujo, ponle un nombre, elige un tipo de disparador (y palabras clave si es una palabra clave), guarda.
2
Abrir el lienzo
Haga clic en Editar Canvas. El constructor visual donde se añaden pasos (mensajes, preguntas con botones, ramas) y conectarlos.
3
Agregar ramas y un traspaso
Para cada opción, dibuja una rama al siguiente paso y termina los caminos resolviendo, entregándolo a la IA o transfiriéndolo a un humano.
4
Habilitarlo
Haz clic en Habilitar. El flujo se activará inmediatamente en tu widget, pero puedes desactivarlo en cualquier momento sin perder el diseño.
¿Los flujos reemplazan a la IA?+
No. Corren de lado a lado. Usan flujos para caminos predecibles y la IA para preguntas abiertas; un flujo siempre puede entregarse a cualquiera de los dos.
Crecimiento & SEO
Visitas guiadas en Barcelona
Los recorridos guiados son guías paso a paso que apuntan a partes de tu página con burbujas de diálogo y un foco, guiando al visitante a través del proceso de incorporación o una nueva función. Están completamente temáticos y construidos en un diseñador visual con una vista previa en vivo. Un recorrido solo se ejecuta cuando está marcado como Activo.
Cómo funcionaVisitas guiadas en Barcelona
Cómo se construye un tour
Pasos
Cada paso se centra en un elemento y muestra una burbuja con tu texto, agrega tantas paradas como necesite el recorrido y ordenalas.
Presets & tema
Comience desde un preset o diseñe su propia burbuja (colores, gradientes, foco) con una vista previa en vivo a la derecha.
Disparador
Opcionalmente, enlaza una regla proactiva para que el recorrido se inicie automáticamente cuando se active esa regla (por ejemplo, la primera visita al panel de control de un visitante habitual).
Activo toggle
Un tour solo puede ejecutarse mientras esté activado, desmarque la casilla para eliminarlo sin borrarlo.
Construye uno en cuatro pasos
1
Nuevo tour de
Haga clic en Nueva visita guiada, asignele un nombre y, opcionalmente, vincule una regla proactiva para que se inicie automáticamente.
2
Agregar pasos
Añade cada parada: elige el elemento al que apunta y escribe el texto de la burbuja, reordena hasta que el camino fluya.
3
Diseñarlo
Elige un preset o diseña tu propio estilo de burbuja, la vista previa en vivo muestra exactamente lo que ven los visitantes.
4
Activar
Tick Active y guardar. El tour puede funcionar ahora, en su propio gatillo, o iniciado por una regla de Mensaje Proactivo.
¿Cómo comienzan los tours?+
Por su propio gatillo, o a través de la acción "Viaje guiado" de una regla del Mensaje Proactivo, así que usted decide qué visitantes ven qué gira y cuándo.
Crecimiento & SEO
Objetivos de conversión
Conversion Goals turn an activity you care about (an inbound webhook event, a chat message, a ticket resolution) into a recorded conversion with full attribution. When the activity fires, OpsIQ logs a conversion against the contact and ties it back to the campaigns, segments and sources that led there.
Cómo funcionaObjetivos de conversión
Definir un objetivo en tres pasos
1
Elige la actividad desencadenante
Haga clic en Nuevo objetivo de conversión. Elija el tipo de actividad que cuenta como conversión, o utilice un preset Quick-start, Compra Stripe, Demo reservado, Registro de Newsletters o Inscripción iniciada.
2
Ponle un nombre y establece un valor
Dale un nombre a la conversión (compra, demo_booked, registro) y opcionalmente un valor fijo y una ventana de atribución.
3
Guardar
A partir de entonces, cada vez que se dispare la actividad, OpsIQ registrará una conversión contra el contacto con atribución a los toques anteriores.
✅
Los objetivos ya están conectados a los webhooks de entrada: cualquier objetivo cuyo desencadenador coincida con el tipo de evento de entrada se activa automáticamente en el momento en que llega el evento. Usa la página Webhooks entrantes para conectar Stripe, Calendly o cualquier sistema que pueda enviar JSON.
¿Qué puede ser una conversión?+
Cualquier actividad registrada: un evento webhook (pago. succeed), una captura de correo electrónico de chat, una resolución de ticket, cualquier cosa en el cronómetro de contacto.
Análisis
Tableros personalizados
Los paneles personalizados te permiten crear tu propia vista de las métricas que importan, en lugar de depender solo del resumen estándar. Añade los widgets que quieras, arrastra y cambia su tamaño al diseño que más te guste, guárdalo y compártelo con tu equipo.
Tableros personalizadosCrea tu propio tablero: agrega KPI, gráficos y widgets de lista, arrástralos y cambia su tamaño al diseño que desees, luego compártelo con el equipo.
Construye uno en tres pasos
1
Añadir widgets
Haz clic en Agregar widget y elige la métrica o el gráfico que quieras rastrear, repite este proceso para todo lo demás del tablero.
2
Organizar el diseño
Arrastre widgets para reposicionar y arrastrar sus bordes para redimensionarse. KPIs en la parte superior, gráficos abajo. Lo que lee mejor.
3
Guardar y compartir
Guarda el panel y compártelo con tu equipo para que todos vean los mismos números.
✅
Mantenga tablas separadas para trabajos separados (una tabla de "miración diaria" con cuentas en vivo, y una junta de revisión mensual con gráficos de tendencia) así que cada estancia se centra.
Crecimiento & SEO
Campañas de alcance
Outreach is OpsIQ's1:1Motor de correo electrónico masivo: componga un mensaje personalizado o ejecute una campaña en un segmento CRM, con detección de respuestas, control del tiempo de envío, seguimiento de apertura/clic, píxel de seguimiento y cancelación de suscripción con un solo clic.
AlcanceEl motor de Outreach: enviar1:1o ejecutar campañas para un segmento, realizar el seguimiento de las aperturas y respuestas, y mantenerse en cumplimiento con la detección integrada de cancelación de suscripción y respuesta.
Las cuatro pestañas
Compositor
Escribir un comentario1:1Email con {tokens} Desde el contacto y CRM.
Campañas
Envíe a un segmento de CRM, programado o ahora, con límites y control del tiempo de envío.
Plantillas
Plantillas de mensajes reutilizables para el alcance repetido.
Respuestas
La detección de respuestas registra las respuestas y detiene automáticamente el seguimiento a cualquiera que haya respondido.
Cómo se ejecuta una campaña
1
Elige un público
Elija un segmento de CRM (o cargue una lista). La supresión y el consentimiento se aplican automáticamente.
2
Composición
Escribe el mensaje con tokens de personalización; vista previa contra un contacto real.
3
Programar & enviar
Envía ahora o en el mejor momento: se abre un registro de píxeles de seguimiento; los clics y las respuestas se atribuyen.
✅
La extensión es el consentimiento y la supresión-gated, incluye un solo clic de subscripción en cada envío, y sigue CAN-SPAM / CASL. Respuestas automáticamente paran más seguimientos.
Análisis
visualHtml
Informes programados envía un correo electrónico a los destinatarios seleccionados en un horario (de día, semanal o mensual) como una etiqueta blanca imprimible PDF. Establecerlo una vez y el informe aterriza en las bandejas de entrada automáticamente a través de OpsIQ Cron.
visualHtmlEstablezca un informe una vez (configuración, rango, calendario, destinatarios) y OpsIQ correos electrónicos a una etiqueta blanca PDF automáticamente en tu cadencia.
Configurar un informe
1
Elige qué enviar
Elige el conjunto de métricas (tráfico, SEO, ventas, soporte…) y un intervalo de fechas.
2
Establecer programación y destinatarios
Diariamente, semanalmente o mensualmente, en el momento que usted elija, a uno o más destinatarios de correo electrónico.
3
Guardar
Guardar y activar. El informe genera y envía correos electrónicos a su cuenta en el horario, sin paso manual.
💡
Los informes programados se ejecutan a través del OpsIQ cron, si un informe no llega, confirma que el crón está funcionando (ver Cron y automatización).
Privacidad
Privacidad y cumplimiento
La página de Privacidad & Compliance es el único lugar para mostrar un auditor que maneja los datos personales responsablemente: el libro mayor del consentimiento, el registro de acceso al administrador, su política de residencia y retención de datos, y una lista a imprimir DPA en una vista tabbed. Sólo los administradores completos pueden abrirla.
Privacidad y cumplimientoUna pantalla lista para auditores: un registro de consentimiento con capacidad de búsqueda (otorga/revoca por canal), un registro del acceso a los datos, la configuración de residencia/retención y una DPA imprimible.
Las cuatro pestañas
Libro de consentimientos
Un registro de cada consentimiento conceda y revoca, por contacto, canal (email, push, SMS, in-widget), acción, fuente y fecha. Su prueba de un contacto acordado (o retirado).
Registro de acceso
Quien en su equipo vio, editó, exportó, borró o envió los datos de un contacto con el administrador, contacto, acción, razón declarada y IP Exactamente lo que pide un regulador.
Residencia & retención
Declara dónde se encuentran los datos de este espacio de trabajo, establece cuántos días se conservan las filas de actividad (0 = para siempre) y registra a tu controlador de datos y DPO.
Plantilla de DPA
Un Anexo de Procesamiento de Datos imprimible que rellena su controlador, dirección, DPO, residencia y retención. Imprima o guarde como PDF.
✅
Privacy & Compliance se combina con el estudio de consentimiento de cookies (que recopila el consentimiento) y la página Exportar (que produce la copia de datos para un DSAR). Vea también Cron y automatización para la limpieza nocturna de retención.
Conectores
Conecta tus plataformas
Enlace de conectores OpsIQ a plataformas externas: tiendas de comercio electrónico, sistemas de facturación, procesadores de pago, proveedores de correo electrónico y personal APIs. Una vez conectado, la AI puede buscar pedidos, datos de clientes, suscripciones y más, y tomar acciones con su aprobación.
Cómo funcionaConectores
Barcos conOpsIQ
Estos están presentes en el momento que instala y necesita sólo sus credenciales.
WHMCS
Facturación
Facturación de alojamiento web: clientes, servicios, tickets, facturas, dominios, servidores.
Negocios locales: opiniones, publicaciones, preguntas y respuestas, conocimiento. Utiliza OAuth.
Google Calendar
Productividad
Calendarios y eventos. Usos OAuth.
GmailyIMAP
Correo electrónico
Mailboxes: correo de entrada y salida, sincronía del directorio.
SendGrid
Correo electrónico
Entrega de correo electrónico: enviar emails y administrar plantillas.
Mailgun
Correo electrónico
Entrega de correos electrónicos: envía correos a través de Mailgun.
Slack, Telegram, LINE, X DM
Mensajería
Modición de canales para conversaciones entrantes y salientes.
Meta canales
Mensajería
Facebook Messenger, Instagram DM y WhatsApp.
Site Intelligence (Informe del Sitio)GA4, Consola de Búsqueda)
Análisis
Análisis y datos de búsqueda para elSEOsuite.
Enriquecimiento del sitio web y CRM importación
CRM
Enriquecimiento de la empresa y importación a granel de clientes.
Disponible desde el mercado
Estos son paquetes publicados, no parte de la instalación. Instalar uno de Connectors, Marketplace y se copia en la carpeta de conectores vivos, después de lo cual se comporta exactamente como los anteriores.
La lista de conectores se mueve como los paquetes son publicados. La lista autorizada para SU instalación es la página Connectors: lo que está listado allí es lo que el tiempo de ejecución descubierto, y la pestaña Marketplace muestra lo que puede añadir.
Instalar un conector
1
Ir a Conectores
Navegue a Conectores en la barra lateral de administración.
2
Encuentra el conector
Los conectores se agrupan por categorías y pueden ser de varios tipos.
3
Habilitarlo
Haga clic en el conector y active o desactive Habilitar.
4
Ingrese las credenciales
Rellene los campos requeridos: API clave, URL, tokens, etc. Cada conector tiene requisitos específicos documentados en su panel de configuración.
5
Conexión de prueba
Haga clic en "Probar conexión". Un resultado verde significa que el conector puede llegar a la plataforma externa, mientras que un resultado rojo indica el error.
6
Configurar las funciones
Elija qué funciones habilitar: sincronización de conocimientos, sincrónización de webhook, acciones de IA No todos los conectores admiten todas las funciones.
Qué te dan los conectores
Contexto de IA
La IA puede buscar datos de clientes, pedidos, suscripciones y más a través del conector. Cuando un cliente chatea, la IA tiene datos reales de la plataforma para hacer referencia.
Contexto de IA (autores del conector)
El ContextProvider del conector alimenta a la IA de tickets un resumen de cuenta de solo lectura del propietario del ticket. customer_id cuando se sabe; de lo contrario, en el billete auto-replies, donde la bandera ctx customer_trust_email es verdad, mira la cuenta por customer_email (el remitente del ticket verificado). Las plataformas remotas exponen un /context/customer-by-email Esto es lo que hace que la IA cite un saldo/factura real en lugar de decir “por favor, inicie sesión”. Honre los toggles de clase de datos del operador (customer_sections, customer_allow_credit) y permanecer estrictamente solo lectura, nunca emitir secretos.
Directorio de clientes (autores del conector)
El IdentityProvider del conector alimenta tres búsquedas de tickets universales: lookupCustomerById() (tarjeta de cliente), lookupCustomerServices() (tabla de productos/servicios), y listCustomers($query,$limit): el "Buscar cliente o correo electrónico de tipo" en el formulario nativo Compose-New-Ticket. Regresar filas de {id, external_id, name, email, company, phone, platform, platform_label}. Regla de remoto: si tus clientes viven en otra base de datos o servicio, tráelos sobre la plataforma API dentro de estos métodos, nunca lea las tablas del otro sistema directamente (en el OpsIQ DB son titulares vacíos, por lo que una lectura local devuelve un selector vacío).API URL; mantener a un local leído sólo como una caída del mismo-DB.
Billetes de identificación por correo electrónico, detección " enrutamiento (autores de conexión)
Cuando el correo electrónico entrante se convierte en un ticket nativo, OpsIQ detecta al remitente llamando lookupCustomerById(0, ['email'=>$sender]) El primer partido "posee" al cliente y su platform La babosa está estampada en el ticket.created Evento como _pipe_owner_platform (vacío = invitado). Así que un WHMCS-El correo electrónico del cliente abre un ticket en WHMCS (WHMCS Un remitente desconocido sigue siendo un invitado nativo. Si el conector refleja los tickets nativos en su propia plataforma, tu ticket.created El manipulador debe tener una puerta en esto: if (array_key_exists('_pipe_owner_platform',$payload) && $payload['_pipe_owner_platform'] !== '<your-slug>') return;. La clave está ausente en entradas no recogidas (chat/manual/AI), por lo que el espejo como antes. El control de salida vive bajo los departamentos del equipo → Entradas abiertas vía email (Anyone / Clientes solamente / Off).
Medidas
La AI puede realizar acciones a través del conector: crear entradas, actualizar pedidos, cancelar suscripciones, todo con su aprobación a través de la Capa de Confianza.
Conocimientos
Los conectores aportan artículos de conocimiento específicos de la plataforma a la IA. Shopify El conector agrega solución de problemas de comercio electrónico; WHMCS El conector agrega conocimiento de alojamiento.
Importación de la base de conocimientos (autores del conector)
Si su plataforma aloja una base de conocimientos, declare un kb_capabilities Bloquear en settings.json (tipo kb_source) y el conector aparece en el editor del Centro de ayuda Importar KB → Importar desde una aplicación conectada desplegable siempre que esté habilitado y configurado en el espacio de trabajo. Es declarativo, ningún método para implementar: nombre un in-in adapter (zendesk para el Centro de ayuda exact-tree API, o crawl para cualquier sitio de la KB) y un base_template tales como https://{subdomain}.zendesk.com, que OpsIQ rellena con la configuración almacenada del conector. Las credenciales nunca salen del servidor; el navegador solo envía el slug del conecto Para admitir una nueva plataforma, agregue un opsiq_kb_<platform>_manifest() Refiera el adaptador por su nombre. Referencia completa: connectors/PLATFORM_CONNECTORS.md §5.
Webhooks
Algunos conectores registran webhooks con la plataforma externa para notificaciones de eventos en tiempo real (nuevos pedidos, actualizaciones de tickets, etc.).
Seguimiento de ventas
Los conectores de comercio electrónico alimentan los datos de ingresos en el panel de ventas para la atribución y análisis.
💡
Los conectores tienen un ámbito de espacio de trabajo. Cada espacio puede tener diferentes conecteurs habilitados con distintas credenciales.WHMCS El espacio de trabajo utiliza el.WHMCS Conector; a Shopify El espacio de trabajo utiliza el.Shopify Conector.
¿Puedo usar varios conectores a la vez?+
Sí, puedes tener Shopify para pedidos y Stripe para pagos en el mismo espacio de trabajo. La IA combina los datos de todos los conectores habilitados.
¿Qué pasa si mi plataforma no está en la lista?+
Utilice el generador de conectores para crear un conector personalizado para cualquier plataforma con una interfaz REST. API. O consulte el Marketplace para ver los conectores creados por la comunidad.
¿Los conectores funcionan con OpsIQ autohospedado?+
Sí, los conectores funcionan de manera idéntica tanto en las ediciones en la nube como en las autoalojadas.
Conectores
Contrato de conector de ventas y facturación
Cada conector de comercio utiliza el mismo contrato de evento neutral para plataformas. WHMCS es la implementación de referencia, pero SaaS Bridge, tiendas, proveedores de pago, conectores de mercado y paquetes de Connector Builder deben obedecer las mismas reglas.
Lo que todo conector de comercio debe publicar
Un libro mayor autorizado
Publish realised economic events to opsiq_sales_events through CommerceEventRegistry::normalize(). Do not build a connector-specific Sales table or make core analytics query a remote platform directly.
Identidad de fuente estable
La plataforma es el slug de registro del conector, como. whmcs, shopify o opsiq_saas. traffic_source contiene la atribución de adquisición verificada cuando se proporciona; de lo contrario, usa el mismo slug que el fallback. OpsIQ Resuelve el nombre del conector amigable en la interfaz de usuario.
Idempotencia
Asegúrate de asignar al menos un valor inmutable order_ref, invoice_ref o subscription_ref para que los reintentos y el relleno del webhook actualicen el mismo evento en lugar de crear ventas duplicadas. service_ref identifica la instancia del producto o servicio afectada cuando existe una.
Marca de tiempo de origen
occurred_at es la hora del pago o el evento económico que informa la plataforma de origen. No sustituyas las fechas históricas de pago por la hora de importación.
Dinero y FX
Si la configuración del conector habilita la conversión de divisas OpsIQ, los informes se convierten a la moneda de generación de informes del espacio de trabajo; en caso contrario, los reportes conservan la moneda del almacén o de la plataforma de facturación. El código del conecto no debe codificar una moneda de creación de informe o un tipo de cambio.
Ciclo de vida basado en evidencia
Usa nuevo, renovación, actualización, reembolso, crédito o desconocido. Clasifica por motivo de la factura, suscripción o relación de servicio, tipo de ítem u otro campo de fuente autorizado. Una compra repetida del mismo cliente no es automáticamente una renovación.
Límite de ventas
Solo los recibos de comercio nuevos, renovados, actualizados o desconocidos legítimamente pertenecen a Ventas y conversiones. Los reembolsos se informan mediante el análisis de reembolso e ingresos netos. El crédito en la cuenta, las recargas del monedero, las Recargas de tokens y Agregar fondos siguen siendo eventos del libro mayor de facturación y nunca cuentan como ventas, conversiones, volumen de pedidos ni ingresos por ventas.
El CRM permanece separado
Los negocios de CRM representan la actividad del embudo y los negocios, no son ventas de plataforma comercial a menos que una plataforma de facturación o tienda conectada emita el pedido pagado realizado o la factura a través de este contrato.
Proyecciones derivadas
Las conversiones opsiq_conversions y los resúmenes del panel son proyecciones de compatibilidad reconstruidas a partir del libro mayor. Los conectores no deben tratar una proyección como la fuente financiera de verdad, ya que las revisiones de contrato pueden volver a evaluar filas derivadas sin eliminar el historial de facturación subyacente.
Límite de plataforma remota
Un conector remoto lee su plataforma a través del API autenticado configurado. Nunca debe depender de tablas de base de datos del mismo servidor. La clave exacta site_key de dominio autenticada es proporcionada por ConnectorRegistry y se debe aplicar en cada escritura y relleno de libro mayor.
Cuando Ventas y facturación esté habilitado en Connector Builder, mapee el importe, la moneda, el estado del origen y la fecha de origen, además de al menos una referencia de pedido, factura o suscripción. API El SalesIngest generado pasa cada fila a través del mismo normalizador CommerceEventRegistry utilizado por los conectores integrados y de mercado.
⚠️
Los créditos y los fondos de adición se conservan intencionalmente para el historial de facturación, el contexto del saldo del cliente y el análisis del libro mayor. Excluirlos de Ventas no los elimina; solo evita que inflan el rendimiento comercial.
lifecycle_type decide lo que se convierte en un acuerdo CRM
lifecycle_type no es una etiqueta analítica. OpsIQ lee para decidir si una venta entra en el oleoducto CRM, por lo que cada conector de ventas está tomando una decisión del oleaje si tiene intención o no.
nuevo
Abre un acuerdo cerrado (nuevo negocio).
renovación, actualización
No hay acuerdo de negocio nuevo, las renovaciones se convierten en una curva de probabilidad diferente y mezclarlas corrompen ambas previsiones.
reembolso, crédito
Nunca abre un trato, en cualquier modo. El dinero devuelto a un cliente no es una victoria.
omitida / desconocida
Sólo factura. La venta se registra pero nunca llega al oleoducto.
Una venta, una fila de libro mayor: la identidad es el SALE, no el evento
No coincida con event_id e insértete. event_id is platform:eventName:externalId, que responde “si ya procesamos esta entrega” y no podemos responder “habemos ya grabado esta venta”. Una plataforma que anuncia un pago dos veces – como invoice.paid y de nuevo payment.completed — miente dos ids y aterriza el mismo dinero dos veces, sin nada que collide y nada que advertir.
💡
Encontrado en la instalación de referencia: seis facturas con tres filas del libro mayor cada una, desde tres caminos de código utilizando tres esquemas event_id diferentes.0.00así que ningún total parecía equivocado, y cualquier proceso posterior restaurando cantidades reales habría contado un pago tres veces.
Llamar al escrito compartido en su lugar. Core compute la identidad de negocio de la venta (sale_fingerprint), coincide con una fila existente en ella, preserva el original event_id sobre actualización, y filtros a columnas reales:
La única manera soportada de escribir el libro mayor de ventas
factura. pagado, pago. completado y venta. completa para una factura compartir una huella dactilar y actualizar una fila.
Los reembolsos permanecen separados
El dinero que sale es un hecho diferente del dinero que viene. Un reembolso de una factura mantiene su propia identidad, por lo que nunca puede sobreescribir el pago que revierte.
No hay referencia, no hay huella dactilar
Una fila sin orden, factura, suscripción o referencia de servicio no obtiene ninguna huella dactilar en absoluto, por lo que dos filas no relacionadas nunca chocan sólo porque ambos faltan una id.
Referencia precedencia
bill_ref, then order_reF, then subscription_refi, then service_refe — strongest first, so one sale kept a stable identity.
El libro de contabilidad es sólo anexion: nunca reescribir una venta
Un reembolso, una cancelación o una corrección es un nueva fecha de entrada. Nunca mutar la fila que corrige. Reescribir un pago en un reembolso parece ordenado y rompe tres cosas a la vez:
Destruye los ingresos brutos
Las ventas brutas y la tasa de reembolso se detienen siendo separables, y el tipo de devolución es la métrica que existe para informar.
Libro la inversión en el período equivocado
Un reembolso de marzo de una venta de enero debe reducir Marzo. Reescribir la fila de enero silenciosamente renueva un período cerrado.
Rompe la ruta de auditoría
Una entrada de libro mayor registra lo que sucedió en un momento en el tiempo. Las correcciones son contra-entros, que es cómo la contabilidad de doble ingreso ha funcionado durante cinco siglos.
Así que un conector informa la inversión en lugar de aplicarla: retorno refunded_at y refund_amount junto al propio ciclo de vida de la venta, y dejar que el callador escriba el reembolso como su propia fila fechada cuando el reembolso sucedió. Los dos nunca pueden collide, porque la huella de venta separa un retorno de una venta.
💡
El mismo principio se aplica a las cantidades. No "repair" una cantidad almacenada al valor actual de la plataforma: una factura asentada del crédito de cuenta registrada legítimamente0en el tiempo de pago, y el dinero ya se registró cuando el cliente subió. Restaurar el valor facial lo cuenta dos veces.
El contrato de clasificación
OpsIQ decide el ciclo de vida once, in \OpsIQ\Commerce\SaleLifecycleClassifier. Un conector declara sólo cuál de su propia plataforma palabras significan qué, mediante la implementación \OpsIQ\Connectors\SalesLifecycleConnectorInterface::salesLifecycleVocabulary(), y luego llama al clasificador compartido. No vuelva a aplicar el razonamiento.
Declarar vocabulario, delegar la decisión
public static function salesLifecycleVocabulary(): array
{
return [
'credit' => ['addfunds'], // adds balance, sells nothing
'upgrade' => ['upgrade'], // resizes an existing commitment
'recurring' => ['hosting', 'domainrenew'], // continues something owned
'acquisition' => ['domainregister'], // obtains something new
'recurring_prefixes' => ['domainaddon'], // families that grow over releases
];
}
$lifecycle = \OpsIQ\Commerce\SaleLifecycleClassifier::classify([
'explicit' => $platformSaidSo, // wins outright when present
'line_types' => $types, // your platform's own line/item types
'vocabulary' => self::salesLifecycleVocabulary(),
'is_order' => $cameFromANewOrder,
'is_refunded' => $moneyWentBack,
]);
💡
Precedencia es fija y compartida: explícita, luego reembolsada/cancelada, luego crédito, entonces actualización, luego is_order, luego recurrido, después adquisición, luego desconocido. Actualización se encuentra por encima del cheque de pedido porque las plataformas levantan un orden para actualizaciones también; recurrente se sienta debajo porque la primera factura de una nueva suscripción lleva un tipo de línea recurrente. En una venta ambigua sin ordenación el clasificatorio leans a los ingresos y los productos.
Declarar todo el vocabulario de la plataforma
Este es el fracaso que más cuesta y parece el menos equivocado.WHMCS conector concordado ['hosting','addon','domain'] - una lista que se lee como completa.WHMCS no emite un desnudo Domain tipo para líneas de dominio reales; emite DomainRegister, DomainRenew, DomainTransfer, PromoHosting, PromoDomain, DomainAddon* y Upgrade. Todos ellos pasaron de la lista unknown: 1,288 facturas, tres años, sin errores y sin línea de registro.
Cada nuevo cliente importa su historia a través de un backfill conector, por lo que un error de clasificación no afecta a un espacio de trabajo — afecta cada espacio de trabajos que se haya incorporado a través de ese conector, en el momento en que primero miren su oleoducto. Tome el vocabulario de la documentación de la plataforma o un censo de datos vivos, y coincida con las familias crecientes por prefix Así que un hermano nadie ha visto aún clasificar con sus familiares en lugar de desaparecer.
💡
Un cheque práctico: cuenta cuántos de sus propias filas aterrizan en desconocido. Un conector de ventas saludable clasifica casi todo. Una corriente constante de desconocido es casi nunca datos que no tiene — es un vocabulario que el conector nunca aprendió a leer.
Reparación de la historia importada
Cada conector de ventas OpsIQ implementa esto — WHMCS, Shopify, WooCommerce, osCommerce, SaaS Bridge, Stripe, BigCommerce and Magento 2. Treat it as expected, not optional: a customer imports their old records on day one, so a classification fix that cannot reach that history only helps people who signed up afterwards. Implement \OpsIQ\Connectors\SalesLifecycleRepairInterface::reclassifySale() usando cualquier cosa que el conector haya conseguido por disco ya. tools/crm_backfill_sales_lifecycle.php entonces repara la historia importada de su conector sin código per-connector: seca corre por defecto, se respalda y verifica el conteo de filas antes de escribir, reversible a través de un libro mayor, y nunca escribe una lectura fallida como respuesta.
💡
Si su conector no puede volver a leer los registros pasados —un conector webhook-only no puede— no obsesionar el método. Un problema que regresa desconocido es peor que ninguna implementación: un backfill reescribirá buenas filas como no clasificadas y reporta éxito. Implementar la interfaz de vocabulario solamente.
💡
Las referencias detalladas de los paquetes siguen estando disponibles en connectors/CONNECTOR_EVENTS. md y connectors / PLATFORM_CONNECTORIS. md en las distribuciones de código fuente auto-hospedado.
Conectores
Contrato de evento Journey
Journey Intelligence acepta un sobre de evento neutral para plataformas del widget del navegador, los conectores integrados, el puente SaaS, los paquetes de mercado y la salida de Nombres específicos de plataforma se traducen en el borde; embudo, atribución y código de Site Intelligence consumen solo eventos canónicos.
Aislamiento y límite de confianza
Clave exacta de dominio igual
Cada evento está vinculado a la clave site_key del dominio autenticado. Un conector debe obtener esa clave de ConnectorRegistry o su extremo autenticada, nunca de un cuerpo de solicitud no confiable. Los dominios mantienen registros separados; un grupo de dominio es solo un agregado en tiempo de lectura.
Identidad de impotencia
Los reintentos, los webhooks y los rellenos actualizan un evento en lugar de duplicar una experiencia o venta. Retry, webhook and backfills update one event instead of duplicating a journey or sale.
Nombre nativo más canónico
Conserva el nombre_origen_del_evento para obtener evidencia y solucionar problemas, luego asignólo a El análisis principal nunca debe ramificarse en un slug de conector.
La evidencia del servidor gana
Los eventos de conector autenticados confirman el registro, inicio de sesión, pago, compra, renovación, reembolso y otros resultados del terminal. Un token de correlación vinculado a un sitio válido es la unión más segura; se rechaza un token no válido y sus ID incrustados no son confiables.
Privacidad
Envía solo los identificadores y campos necesarios para el viaje declarado. Respeta la configuración de consentimiento, enmascaramiento y retenciónNunca coloques credenciales, datos de tarjetas, secretos de autenticación ni cuerpos de mensajes privados en las propiedades.
Las familias compatibles incluyen eventos de página de interacción/CTA; registro de cuenta, inicio de sesión, MFA y restablecimiento de contraseña; etapas de leads y formularios; productos, carritos, pagos, pago, compra, suscripción, renovación y reembolso; impresiones y conversiones de promociones; eventos del centro de ayuda, chat y tickets; eventos de seguridad; y eventos personalizados con espacios de nombre. account.signup.succeeded, account.login.succeeded, lead.form.succeeded, commerce.payment.succeeded, commerce.purchase.completed, commerce.subscription.renewed y commerce.refund.completed.
Inferencia, confirmación y abandono del navegador
El widget puede funcionar sin un conector al observar la estructura de página, las acciones del formulario, los resultados del DOM y el registro del recorrido del visitante. Esa evidencia se califica explícitamente como observada o inferida. Un conector agrega confirmación autorizada del servidor y puede correlacionarlo con el mismo intento del navegador.
Atribución e ingresos
La atribución prefiere un token de correlación firmado válido, luego una referencia exacta de trayecto, intento, sesión o comercio, luego el gráfico de identidad consentida y finalmente una coincidencia de comportamiento limitada. Las ventas no combinadas permanecen sin atribuir. Los pesos del libro mayor multitáctil deben totalizar 1. Los ingresos atribuidos de Site Intelligence leen este libro mayor; los créditos, las recargas de monedero, las Recargas con token y Agregar fondos nunca son conversiones de compra.
⚠️
El modelo de atribución, las ventanas retrospectivas, el manejo del tráfico directo, la confianza mínima, el tiempo de espera por abandono y las definiciones de embudo son políticas de IU.
Declare solo las capacidades que el paquete realmente ofrece. Connector Builder valida la asignación y genera el mismo adaptador neutral de plataforma utilizado por los paquetes originales. La ingestión del trayecto acepta un evento o un lote limitado de 100 a través del punto final de integración autenticado generado.
💡
El puente de comercio a viaje publica los resultados confirmados por el servidor y reconcilia la atribución después del upsert del libro mayor idempotente existente, de modo que un pago nunca se convierte en dos ventas.
Conectores
Cómo funcionan las acciones de IA
Cada conector declara un conjunto de acciones: cosas que la IA puede hacer a través de la plataforma externa. Las acciones son el puente entre "la IA dice" y "la AI hace".
Acciones de IAUna solicitud se convierte en una acción declarada (leída tipo/escritura/derecho) que es verificada, confirmada, ejecutada y reportada.
El ciclo de vida de la acción
1
El cliente pide algo
"Cancelar mi suscripción" La IA identifica que esto requiere la acción "cancel_subscription".
2
La IA comprueba los permisos
¿Está permitida esta acción?, ¿está habilitada?,¿el usuario actual tiene el rol correcto?
3
La IA recopila parámetros
La acción necesita un ID de suscripción, que la IA busca en el contexto del cliente o le pregunta al cliente.
4
Confirmación
Para acciones destructivas o de alto impacto, la IA pide confirmación antes de ejecutar.
5
Ejecución
La acción llama a la plataforma externa API.
6
Resultado
La IA informa el resultado al cliente.
Tipos de acción
Acciones de lectura
Busque datos sin cambiar nada. Ejemplos: list_orders, get_customer Seguro, no se necesita confirmación.
Escribir acciones
Crear o modificar datos. Ejemplos: create_ticket, update_order. Puede requerir confirmación.
Eliminar acciones
Eliminar datos. Ejemplos: cancel_subscription. Requerir siempre confirmación.
Acciones de HTTP
Declarado en acciones.json, genérico API llamadas definidas declarativamente.
Etiquetas de capacidad
Campo opcional de "capacidad" por acción en acciones.json, una etiqueta de clase conector-neutral (por ejemplo "tickets" para un ticket read/lookup, "ticket_create" para abrir un billete).OpsIQ cierra toda la clase uniformemente a través de cada conector: las lecturas del ticket abandonan la AI cuando el operador apaga la conciencia de entrada AI, y la creación de boletos está reservada para OpsIQ's propio compositor (así que la herramienta de creación del conector no puede duplicarla). Declararlo y su conector se ajusta.OpsIQ Nunca necesita saber sus nombres de acción. El Constructor de conectores lo expone como una gota de Capability por acción.
Acciones de código
Implementado en PHP en la clase connector. Control total sobre la lógica.
Ejemplo de definición de acción
{
"lookup_order": {
"label": "Look up an order",
"description": "Find an order by ID or email",
"method": "GET",
"endpoint": "/admin/api/2024-01/orders.json",
"params": {
"order_id": { "type": "string", "label": "Order ID" },
"email": { "type": "email", "label": "Customer email" }
}
}
}
Conectores
Construir un conector
El generador de conectores le permite crear un conector completo para cualquier plataforma con una interfaz REST API. No se requiere codificación para los conecteurs básicos.
Construir un conectorApunte el constructor en cualquier REST API. Set auth, base URL y acciones, probarlo y publicar un conector de trabajo. No se necesita ningún código.
Cobertura completa del proveedor API
Cada generado API El conector puede exponer separado Native.API Read and Native API Acciones de escritura. Las acciones seleccionadas siguen siendo las preferidas; las acciones nativas cubren los puntos finales del proveedor agregados posteriormente. JSON, forma, XML, cuerpos en bruto y de varias partes, paginación limitada,API-version encabezados e idempotencia mientras mantiene las credenciales dentro de la configuración del conector de espacio de trabajo.
⚠️
Los paquetes de mercado son fuente de/marketplace_connectorsasí como empaquetado/connectors.Aumentar la versión del paquete, regenerar el contrato y documentación, realizar pruebas de conformidad, luego volver a firmar y publicar la nueva versión Marketplace.
Asistente de Connector Builder
El asistente tiene seis pasos, mostrados como pestañas en la parte superior, entre los que puede saltar libremente y Guardar borrador El botón en el pie de página mantiene su trabajo en cualquier punto.
1
Identidad y perfil
Nombre, slug, descripción e icono, luego elegir un perfil de contrato: Estándar API_, Comercio, Ayudadesk, Mailbox, Inteligencia del Sitio, Puente SaaS, Plataforma PHP Local o Plataforma noAPI cuando la plataforma no sirve nada callable yOpsIQtiene que instalar un puente. El perfil selecciona un punto de partida completo de la capacidad; todavía puede ajustar las capacidades individuales.
2
Autenticación
Elige el patrón de autenticación que utiliza la plataforma y rellena sus campos. Ingresa las credenciales reales de prueba aquí también: se utilizan para la prueba de conexión en el siguiente paso, y no se almacenan después de publicar.
3
Prueba
Entra en el API base URL y un endpoint verificado, luego ejecutar una prueba de conexión en vivo usando las credenciales desde el paso 2. Haga esto antes de definir cualquier acción, si la austeridad o la base URL está mal, cada acción que escriba después fallaría por la misma razón y estarías depurando lo equivocado.
4
Medidas
Defina cada operación: nombre, método HTTP, ruta de acceso al punto final, parámetros, asignación del campo de respuesta y los ajustes de confiabilidad que se describen a continuación. Puede ejecutar cada acción individualmente contra el API en vivo desde este paso.
5
Activadores
Asigna los eventos de webhook que tu plataforma envía a OpsIQ events, para que las cosas que ocurren en tu plataforma puedan empezar a funcionar en _OpsIQ.
6
Revisar, contratar y publicar
Review every action, trigger and capability. Enterprise profiles expose the generated queue, worker, hook, migration, ticket-mirror, attachment and conflict contract before publishing. Publishing writes the package into /connectors/<slug>/.
⚠️
La publicación NO ejecuta la suite de conformance. Publicar sólo valida la forma mago y emite advertencias que no bloquean. La suite completa — manifest, archivos de capacidad, el contrato de identificación-token y el control del puente-snippet— funciona cuando pulsa Dry-run, y otra vez en el tiempo de instalación. Presione Seco-corrido antes de enviar, cada vez.
Lo que la publicación hace que el formulario no le muestre
Cinco comportamientos del generador sorprenden a la gente. Ninguno es un bicho; todos ellos le costarán una tarde si los encuentra por accidente.
Una pregunta decide el paso: ¿la plataforma sirve un API?
Responde en paso1eligiendo el modo de acceso a datos (o la "Platform sinAPI" Perfil".APIModo declara native_api and emits the <slug>_api_call passthrough. Bridge mode declares platform_bridge en lugar de ello y STRIPS native_api incluso si una especie mayor la llevaba, por lo que el manifiesto, la clase generada y los docs de experiencia no pueden discrepar. ai_brain_aware se añade de cualquier manera.
SILENCE MEANS "tiene unAPI"
El Constructor sigue su respuesta; no funciona la verdad por sí mismo, y el predeterminado cuando nada se dice esAPIAsí que un no-APIplataforma debe decirlo de manera ACTIVELY: elegir el "Platform con noAPI" perfil, establecer el acceso a los datos al puente o marcar platform_bridge; any one of the three is enough and they cannot contradict each other. Skip the question on a platform with no API and you are back to the old failure: a dead <slug>_api_call the model keeps reaching for. This used to be stamped unconditionally, so the trap is now escapable rather than gone.
La prueba de conexión predeterminada para GET/ping
Si deja el camino de verificación vacío, escribe el Constructor /ping en el conector generado y en perfil.jsonCasi ninguna plataforma real sirve esa ruta, así que Test Connection falla con HTTP404en cada instalación y lee como un error de configuración del cliente en lugar de un defecto de paquete. Establece una ruta verificada que su plataforma realmente responde. Para un conector puente, apunte a su propio punto final diagnóstico — prueba toda la cadena en una llamada: el puente está desplegado, los partidos clave, y el puente puede llegar a la base de datos.
Reeditar aún sobrescribe tus manos-edits
Las capacidades ahora siguen la respuesta de acceso a datos, por lo que los que ya no se derivan. Todo lo demás generado todavía hace: editar ContextProvider. php o cualquier otro archivo emitido y el próximo publicar lo reemplaza. La única excepción protegida es el archivo puente — el mago sólo sobrescribe un puente con su propio marcador, así que uno manuscrito queda solo.
Republish elimina archivos
Desactivar una capacidad y la próxima publicación elimina su archivo de proveedor. Los datos a mano en cualquier archivo generado — ContextProvider.php sobre todo— se sobrescriben sin previo aviso. Copia las personalizaciones primero, o toma la propiedad del paquete mediante la eliminación .opsiq- Constructor.json(después del cual el mago ya no lo manejará).
release_status siempre es previsual
El mago no tiene control para ello. Un paquete destinado a enviar como producción debe haber lanzado_status cambiado a mano en la configuración.json — y que la edición rompe la firma, así que re-firme después.
La firma demuestra integridad, no origen
Los paquetes de Builder se firman con la propia clave simétrica de esta instalación. Eso detecta manipulación. No prueba quién escribió el paquete, y cualquier instalación que tenga la misma llave puede producir la misma firma. Trate un paquete firmado localmente como auto-firmado.
Las colisiones de la piel solo se revisan en un árbol
Publishing rechaza una mancha que ya existe bajo/connectors/.No mira./marketplace_connectors/,así que un paquete de primera fiesta con la misma mancha, autorizado a mano, puede terminar en sombra.
💡
El asistente no tiene un paso de creación de conocimientos, se genera un archivo de coñecemento que describe su plataforma a partir del nombre, la descripción, el tipo de autenticación y las acciones definidas por usted, y se carga en la IA cuando se habilita el conector.
Definir una acción (paso 4)
Cada acción tiene los siguientes ajustes, solo se requieren los primeros cuatro; el resto controla quién puede ejecutarla y con qué cuidado.
Tecla y etiqueta de acción
La clave es lo que la IA llama; la etiqueta es lo qu un humano lee. Las claves se agrupan automáticamente con el slug del conector, por lo que dos conectores pueden tener una "list_orders" sin chocar.
Método de HTTP
GET, POST, PUT, PATCH o DELETE.
URL ruta
Anexado a la base URL. Uso {name} para marcadores de posición, por ejemplo /opportunities/{id}/stage
Parámetros
Para cada parámetro también se elige a dónde va: cuerpo, path, query o encabezado. Un parámetro de ruta rellena un. {placeholder}; un parámetro de consulta se añade a la URL.
Mapeo de respuesta
Di qué campo en el JSON respuesta significa qué, cuál es el nombre del cliente, que es el correo electrónico, el cual es el total de pedido. Esto es lo que permite a la AI leer los datos de su plataforma en lugar de adivinarlo.
Quién puede usarlo
Tu equipo (administrador de IA), clientes que han iniciado sesión (chat con el cliente), ambos o el asistente de escritura: las acciones del cliente se ejecutan solo para el cliente que ha iniciado la sesión, y los campos de identidad se bloquean automáticamente para que un cliente no pueda preguntar sobre otro.
Requiere confirmación
Un humano debe aprobar antes de que la acción se ejecute.
Destructivo
Marca la acción como borrado o cambio de estado. Se usa para advertir antes de ejecutarla.
Permiso requerido
El administrador debe tener este permiso para que la AI ejecute la acción en su nombre; los administradores completos siempre pasan. Elige entre manage_integrations, manage_general, manage _billing, manage@sales_bridge, manage, manage-knowledge, manage/appearance, manage*behavior, manage[permissions, manage]d_dangerzone, reply_to_chats, escalate_to _to_ticket, send_agent
Descripción / AI hint
Opcional, pero vale la pena escribirlo. Le dice a la IA cuándo realizar esta acción, por ejemplo "Usa esto cuando el administrador pida cambiar una etapa de trato". Una buena pista es la diferencia entre una acción que la IA usa correctamente y otra que ignora.
Capacidad
Etiquetas de clase opcional, ya sea entradas (leer o buscar) o ticket_crear (opens un boleto). Tagging permite OpsIQ _Puerta toda la clase a la vez, por ejemplo, el boleto escondido lee cuando un operador hace que se desconozcan los tickets de AI.
Ruta de la lista
Para los extremos que devuelven una lista, la ruta de acceso con puntos al array, por ejemplo data o data. items
Ruta de error
Opcional. Un campo corporal cuya presencia significa que la llamada falló, por ejemplo error.message, útil para APIs que devuelve HTTP 200 al fracaso.
Ejecútalo
Cada acción puede ejecutarse contra el API en vivo desde este paso, por lo que puede corregir una ruta o nombre de campo incorrecto antes de que alguien más lo use.
⚠️
Cualquier acción que use POST, PUT, PATCH o DELETE requiere el permiso manage_integrations para iniciar y se puede ejecutar en cualquier momento. y Una nueva acción de escritura falla en lugar de dejar que la AI cambie sus datos sin supervisión. Puedes cambiar ambos en la acción, pero cambiarlos a sabiendas.
💡
Para que se pueda llamar desde el chat del cliente, una acción debe ser de solo lectura: deje desmarcadas las opciones Requiere confirmación y Destructivo. Una acción que un cliente puede activar que también cambia de estado no es algo que el asistente le permitirá enviar por accidente.
Recibir webhooks (paso 5)
El paso Triggers te da un webhook URL para registrarte en tu plataforma, y verifica cada solicitud que llega a ella.
Encabezado de firma
El encabezado con el que su plataforma firma, por ejemplo X-Hub-Signature-256.
Algoritmo de firma
HMAC-SHA1, HMA C-SHA256 o HMA-SHA512.
Esquema de firma
Simple, un hex simple o base64 digerir. O estilo Stripe, el t=...,v1=... formato utilizado por Stripe y varias plataformas que lo copiaron.
Prefijo de firma
Opcional. Algunas plataformas prefijan el resumen, por ejemplo sha256=. Déjalo en blanco si la tuya no lo hace.
Mapeos de eventos
Asigna cada evento que tu plataforma envía al evento OpsIQ que debería generar.
Registro automático del webhook
Si tu plataforma tiene unaAPIpara gestionar sus propios webhooks, usted no tiene que registrar elURLa mano. Registrar automáticamente este webhook al habilitarlo y apunte a dos de las acciones que definió en el paso 4:
Acción de Create-webhook
Se llama cuando un administrador habilita el conector. Das el nombre del parámetro que lleva el URL, opcionalmente el que lleva la lista de eventos y la ruta en la respuesta que contiene el nuevo id del webhook.
Acción de Delete-webhook
Se llama cuando el conector está deshabilitado, usando la identificación capturada anteriormente, por lo que desactivar el conecto también detiene su plataforma enviando a un punto final muerto.
Capacidades que puedes activar
Los perfiles y capacidades se definen por el contrato de conector 2.2. Las capacidades generadas y declarativas se emiten directamente; las capacidades empresariales generan un EnterpriseExtension.php Andamio con cableado de ciclo de vida en tiempo real.
Medidas
Operaciones que la IA puede ejecutar en su plataforma: lista de pedidos, encontrar un cliente, emitir un reembolso.
Activadores
Recibe webhooks desde tu plataforma y conviértelos en eventos OpsIQ.
Entradas de AI
Triage de IA y Copiloto de respuestas en los tickets que permanecen en tu plataforma. Selecciona el punto final que devuelve un ticket con sus respuestas y asigna los campos; OpsIQ lee el hilo a través de él.
Buzón y contactos
Muestre el correo de un cliente en su línea de tiempo, envíelo desde una oferta y sincronice su libreta de direcciones con la. OpsIQ CRM.
Importación de clientes
Recorre tu lista de clientes e importa cada uno como un contacto OpsIQ, esto es lo que hace el botón Importar.
Contexto
Inserte datos en tiempo real de su plataforma en cada conversación de IA.
Identidad
Descubre cuál de tus clientes es un visitante y muestra su perfil y compras en un ticket.
Ventas y facturación
Introduzca los eventos de ingresos y las cifras MRR en los paneles OpsIQ.
Billetes de entrada
Convierta los tickets y correos electrónicos que su plataforma entrega por webhook en hilos de soporte OpsIQ.
Respuestas salientes
Publicar OpsIQ personal responde de vuelta a la plataforma en la que se originó el hilo.
Sincronizar usuarios
Importe las cuentas de su personal en los usuarios OpsIQ admin.
Sincronizar los departamentos
Importe sus departamentos de soporte en OpsIQ.
Segmentación de promociones y feed de productos
Deja que Promotion Studio se enfoque en los hechos que sabes sobre una persona y muestre tus productos reales dentro de una promoción.
Proveedor de Survey Studio
Exponga los datos de la encuesta verificados por el servidor, las variables escapadas y las páginas de destinatarios de CRM Outreach con límites a través de un archivo SurveyProvider. php dedicado.
Bloqueo nativo de IP
Cuando OpsIQ bloques an IP, llama al bloque propio de tu plataforma API Así que el bloqueo se aplica allí también.
Eventos de seguridad
Recibir bloqueado-IP Señales de amenaza desde. OpsIQ.
Conocimiento de la plataforma para la IA
Cada conector que construyes incluye una breve referencia que describe qué es tu plataforma y qué hacen sus acciones. La IA de administración de OpsIQ la lee cada vez que se habilita el conector, por lo que entiende tu plataforma en lugar de solo ver una lista de nombres de acción.
API paso a través
El conector siempre recibe una llamada de propósito general para que la IA pueda llegar a un punto final para el cual no se ha definido una acción tipo. Utilice acciones tipo donde sea posible; esta es la escotilla de escape.
site_intelligence · Site Intelligence data provider
SEO, analytics, search-console, local-search or monitoring provider with scheduled sync. Capabilities: actions, triggers, site_intelligence, seo, scheduled_workers, durable_queue.
no_api_bridge · Platform with no API (OpsIQ installs a bridge)
For a self-hosted PHP application that serves no callable API. The wizard generates a signed bridge file the operator drops into their own site, plus the typed actions that read and write through it. Capabilities: actions, platform_bridge, ai_brain_aware.
Las especificaciones del Builder siguen siendo la fuente autorizada. Ponga reglas de negocio específicas para plataforma en los puntos de extensión generados; el ciclo de vida del paquete, las colas, los trabajadores, las migraciones y las pruebas de conformidad siguen gestionados por Builder.
Ajustes de fiabilidad en cada acción
Reintentos
Cuántas veces se reintenta una llamada fallida, con un backoff que duplica cada intento. Solo los tiempos de espera, 429s y errores 5xx son reintentados; un 4xx es culpa de su solicitud y repetirlo solo quemaría su límite de velocidad.
Límite de tasa
Un límite por minuto para esta acción, de modo que un disparador ocupado no pueda afectar a su plataforma. Déjelo en 0 para ningún límite.
Tiempo de espera
Cuánto tiempo esperar por su plataforma antes de rendirse.
Confirmación
Requiere que un humano apruebe antes de ejecutar la acción. Úselo para cualquier cosa destructiva.
Tipos de autenticación
Paso 2 ofrece siete patrones. Elige el que coincida con la plataforma API documentación, el generador emite el cliente HTTP adecuado para él.
API clave en el encabezado
Una clave estática enviada como un encabezado fijo, por ejemplo X-API-Key. Usted da el nombre del encabezado y la etiqueta que el formulario de administración debe mostrar. Esto envía la clave como un encabezada solamente; si su API Si espera que la clave sea un parámetro de consulta, utilice encabezados personalizados o un conector de código completo.
Ficha al portador
Token sent as Authorization: Bearer <token>. Common for modern APIs.
Auth básico
Nombre de usuario y contraseña, codificados en base64 en el encabezado Autorización. Usted elige las etiquetas que ambos campos muestran en el formulario de administración.
Firmado por HMAC
Una clave pública más un secreto, con el cuerpo de la solicitud firmado. Das el encabezado de firma, el encapuchamiento de la llave y el encadenamientos del timestamp que tu plataforma espera.
OAuth 2.0 (credenciales del cliente)
De servidor a servidor, sin interacción del usuario ni redirección. Usted proporciona el token URL y un ámbito opcional; el administrador proporciona un ID de cliente y secreto. Use esto cuando su plataforma emite credenciales a una aplicación en lugar de a una persona.
OAuth 2.0 (Botón de conexión)
El flujo de código de autorización con PKCE, para Stripe, Shopify, Slack y aplicaciones al estilo de QuickBooks. Usted da la autorización URL, el símbolo URL Después de la publicación, el administrador hace clic en Conectar en el conector, autoriza en su plataforma y OpsIQ Almacena el token de actualización y mints los tokens de acceso bajo demanda. La redirección URI Para registrarse en su. OAuth La aplicación se muestra en la página de configuración del conector.
Encabezados personalizados
Una forma libre JSON Use el mapa de encabezado para cualquier cosa que los patrones anteriores no cubran, por ejemplo {"X-API-Key":"{api_key}","X-Tenant":"{tenant_id} Cada marcador de posición se convierte en un campo del formulario de administración.
💡
El flujo de credenciales del cliente no tiene redirección ni paso de usuario, por lo que PKCE no se aplica a él. The client-credentials flow does not have any redirection and user step, so PKCE does not apply to it.
Estilos de paginación
Compensación
Utiliza los parámetros offset y limit. Ejemplo:?offset=100&limit=50.
Página
Utiliza el número de página. Ejemplo:? page=3&per_page=_50.
Cursor
Usa un token de cursor de la respuesta anterior.
Encabezado de enlace
Utiliza el encabezado de respuesta Link con rel="next".
Avanzado: código PHP personalizado
connector.php RETURNS an instance. It does not declare a named class that OpsIQ hunts for. The method names below are the ones ConnectorInterface requires; getting one wrong is a fatal at load, not a warning.
connector. php — el contrato real, mínimo y ejecutable
<?php
/* connectors/myplatform/connector.php */
declare(strict_types=1);
use OpsIQ\Connectors\AbstractConnector;
require_once __DIR__ . '/Client.php';
return new class extends AbstractConnector {
/* ── the three identity methods. NOT identifier()/label(). ── */
public function slug(): string { return 'myplatform'; }
public function name(): string { return 'My Platform'; }
public function description(): string { return 'Orders and customers from My Platform.'; }
public function capabilities(): array { return ['actions', 'context']; }
public function settingsSchema(): array
{
$f = __DIR__ . '/settings.json';
if (!is_file($f)) return [];
$j = json_decode((string)file_get_contents($f), true);
return is_array($j['settings'] ?? null) ? $j['settings'] : [];
}
/* ── NOTE THE ARGUMENT. testConnection() with no parameter is a fatal. ── */
public function testConnection(array $settings): array
{
try {
$resp = \OpsIQ\Connectors\MyPlatform\Client::callWithSettings($settings, 'GET', '/me', [], []);
$code = (int)($resp['http_code'] ?? 0);
return ($code >= 200 && $code < 300)
? ['success' => true, 'info' => ['message' => 'Connection OK', 'http_code' => $code]]
: ['success' => false, 'error' => "Verify endpoint returned HTTP $code"];
} catch (\Throwable $e) {
return ['success' => false, 'error' => 'Test failed: ' . $e->getMessage()];
}
}
public function onEnable(array $settings): array { return ['success' => true]; }
public function onDisable(array $settings): array { return ['success' => true]; }
public function handleWebhook(array $payload, array $headers, array $settings): array
{
return ['success' => true, 'note' => 'No triggers declared.'];
}
/* Inherited from AbstractConnector: reads actions.json for you.
* Override only to ADD actions the manifest cannot express. */
public function registerActions(array $settings): array
{
return parent::registerActions($settings);
}
};
⚠️
Three things that fatal at class load rather than failing gracefully. The identity methods are slug(), name() and description() — not identifier() and label(). testConnection() TAKES an array of settings; a no-argument version is an incompatible signature. And there is no $this->http() or runAction() on AbstractConnector — HTTP goes through your own Client.php or through an action declared in actions.json.
Copia de tickets en el sistema nativo
Cuando tu plataforma sea propietaria de un ticket, haz que se refleje en OpsIQ desde el conector mediante el asistente de ingesta de tickets que hereda el conecto (crear para un nuevo ticket, añadir respuestas para los seguimientos). subscribers() método, ticket.created, ticket.replied, ticket.updated, ticket.deletedLa respuesta automática, la escalación, el SLA y CSAT se conectan a los mismos eventos, por lo que los hereda sin código adicional.
Diga quién escribió el mensaje de apertura
Un ticket es siempre para El cliente, pero el mensaje de apertura puede ser escrito por staff: un agente que abre una entrada en nombre del cliente, o que se extiende proactivamente. Cada ayudante lo apoya, por lo que es parte de la universalidad ticket.created Es más bien un contrato que algo que cada conector resuelve de forma privada.
author_type
Si se omite, el cliente es asumido.
author_id
El id del personal cuando author_type=admin. Nunca el id del cliente.
author_name
Nombre de agente o departamento. Vuelve a "Personal".
author_email
La dirección de agente. NUNCA el cliente. Un mensaje del personal bajo el correo electrónico del cliente es un error de presentación y auditoría.
Esto no es cosmético. Los consumidores leen author_type Una apertura escrita por el personal se reporta como un "Abierto". client deja auto-reply elegible para responder un mensaje que escribió su propio agente, y hace que el eco de su plataforma de esa apertura parezca un nuevo mensaje del cliente, que luego aterriza como duplicado y voltea el ticket a answered. Asignación de la señal de su plataforma en él en el conector Normalizador de eventos, nunca en los consumidores.
Bloqueo centralizado
Cuando un agente bloquea a un remitente, esto se aplica en todos los every canal inmediatamente (e-mail, chat, portal, widget y cada gemelo conector) porque el bloque se aplica centralmente, antes de que cualquier conector vea el mensaje. Su conector lo hereda haciendo nada. No hay trabajo en la entrada para implementar y no hay manera de conseguirlo mal.
La mitad opcional es outbound: indicar a tu plataforma que un cliente fue bloqueado aquí, implementa esto solo si tu plataforma puede expresar algo equivalente.
Capacidade de carga()
Debe incluir block_registry Y la clase debe implementar BlockRegistryInterface. La bandera es una reclamación; la interfaz es la garantía. El registro requiere ambos.
blockSender($b)
Recibe t ip o (correo electrónico|dominio|ip), valor, razón, admin_id, expires_at, site_key. Devuelve [resultado, detalle?, referencia_remota?].
unblockSender($b)
La misma carga de pago, reversa. Debe ser idempotente. Desbloquear algo nunca bloqueado es noop, no un error.
isSenderBlocked($b)
Para la conciliación, por lo que se informa de la deriva en lugar de ser descubierto por un cliente.
Valores de resultado
aceptable
Aplicado en su plataforma. Incluya remote_ref cuando tenga un id que valga la pena registrar.
noop
Ya en el estado solicitado.
unsupported
Su plataforma no tiene un concepto equivalente. NO es un error.
fallido
Podrías haberlo hecho y no haber salido bien, pero incluye detalles; eso se incluirá en el rastro de auditoría.
Declinar es la respuesta correcta. Muchas plataformas no tienen el concepto de "bloquear este remitente" y solo ofrecen la suspensión de CUENTA, que detiene la facturación, los inicios de sesión y los servicios en lugar de solo correo de soporte. Mapeando "un agente bloqueó una dirección de spam" a "cerrar la cuenta de este cliente" permitiría que un bloqueo mal hecho terminara con los servicios de un cliente pagante. unsupported Y dejarlo en paz.
La negativa también cubre el caso en que la plataforma can No lo hará, pero no te dejará hacerlo. API, no una característica: una palanca que solo existe en la interfaz de usuario de administración de la plataforma es una palanka que su conector no tiene.
Ejemplo de trabajo · Zendesk (la implementación de referencia)
Leer connectors/zendesk/connector.php alongside this. It is short, and every branch below is a decision you will face too.
Correo electrónico → ok
PUT /api/v2/users/{id} con suspensión=true. Las nuevas solicitudes del usuario final suspendido se desvían a las entradas suspendidas en lugar de abrir una, realmente la misma idea que bloquear un remitente, y no para facturación porque los usuarios finales de Zendesk no tienen ninguna. Devuelve el id del usuario como remote_ref.
dominio → no soportado
Zendesk PUEDE suspender un dominio completo, pero solo a través de la palabra clave suspend: en el área de texto de la lista de bloqueo del Centro de administración y sin que API escriba ese campo.
ip → no soportado
No existe ningún bloque IP a nivel de ticket.
Dirección desconocida → noop
Zendesk no puede pre-suspender una dirección que nunca ha visto, por lo que el bloqueo local detiene el ticket.
Agente o administrador → no soportado
REFUSED. El personal pendiente de un colega podría bloquear a un compañero fuera del ayudante. Una dirección del personal que llega a una lista bloqueada es mucho más probable que sea un error que una instrucción, comprobar el papel antes de actuar en él.
Esa última fila es la que vale la pena copiar. El contrato no puede evitar que mapees un bloque a algo destructivo, por lo que cada conector tiene que decidir por sí mismo qué rechazará. detail Un operador puede leer, bate obedecer.
Informe con honestidad. Observe cuán pocas de esas filas son ok. Ese es el resultado correcto, no una brecha: un bloque de dominio todavía funciona (se aplica en el núcleo del momento que está escrito); simplemente no puede ser reflejado hacia fuera. ok Si no lo hiciera, le diría a un operador que el bloque llegó a su plataforma cuando nunca salió de OpsIQ.
Reglas
El bloque local siempre gana
Se escribe ANTES de que se le llame y es válido lo que usted responda, no puede evitar que un operador bloquee a alguien.
Nunca lo lances
Un lanzamiento es tratado como no soportado y registrado, el retorno falla con un detalle en su lugar para que la razón sobreviva.
Ser idempotente
El mismo bloque puede ser anunciado más de una vez.
Regresa rápidamente
El trabajo lento de la cola se realiza en lugar de mantener abierta la solicitud.
No vuelva a llamar
Nunca vuelva a bloquear en OpsIQ desde su controlador. El registro salta el conector de origen, pero un segundo salto sería bucle.
Cada anuncio está escrito para opsiq_block_registry_log (operación, tipo, valor, razón, administración, origen, conexión de la nube, resultado, detalle y timetamp) para que un operador pueda ver una cuadra llega desde su plataforma en lugar de un agente, y lo que cada conector hizo al respecto.
Empuje los archivos adjuntos correctamente
Mano una attachments array to create()/addReply(). Cada elemento lleva el archivo en una de tres formas:
content_b64
Base64 of the RAW file bytes, use for files behind auth (most inbound cases). OpsIQ decodes it and re-hosts the file for you. The most portable shape.
url_ / source_url
Un https público URL (por ejemplo, una content_url de Zendesk). Debe ser https; pasa una comprobación de SSRF / allowlist antes de almacenarse.
stored_path
Una referencia de archivo almacenada que ya escribió (lo que produce el cargador del compositor nativo).
Items also accept filename, mime_type and size_bytes. Caps: 12 MB/file, ~24 MB total, 10 files per call. Most platform read APIs return attachment Solo nombres de archivos (no bytes), por lo que el patrón de entrada confiable es: leer los bytes donde su código ya funciona (en la plataforma, o desde la carga útil webhook), base64 ellos, y enviarlos como content_b64 Sobre el evento.
Saliente (OpsIQ → tu plataforma). Cuando un agente adjunta un archivo, el ticket.replied La carga útil le da los archivos de la respuesta como stored_path ítems relacionados con OpsIQ file store. Léalos y empuje en el propio formato de su plataforma, y compruebe los docs de la plataforma, el codificación importa: WHMCS quiere base64_encode(json_encode([[name,data]])) (JSON, no serializar); Zendesk carga bytes sin procesar a /uploads.json Para un token, luego establece comment.uploads; Gmail envía un mensaje RFC-822 de varias partes/mixto codificado con base64url raw; Amazon SES inbound attachments need the S3 receive action (the SNS path caps at 150 KB).
Plataformas remotas: API + webhook, nunca tablas de otra aplicación
Si su plataforma es una Aplicación o base de datos independiente (un SaaS alojado, un WHMCS remoto, una base de datos diferente en el mismo servidor), Nunca escriba sus tablas directamente: una base cruzada escribe tierras en cualquier conexión es activa y silenciosamente extraña las filas reales. Siempre: outbound = llamar al REST firmado de la plataforma API (respuestas, estado, departamento, eliminaciones); inbound = la plataforma publica un webhook firmado, tu handleWebhook() Lo verifica y dispara la coincidencia ticket.* Para detener un bucle de espejo, marque lo que empuja con un marcador de origen (por ejemplo, "reverse_buckle"). mirror_origin:'opsiq'); la plataforma se hace eco de él en el webhook y tu controlador entrante salta sus propios ecos. OpsIQEvents::isMirroredEvent() En la parte superior de cada manipulador.
Estado, prioridad y departamento de espejo
Una respuesta mueve el estado automáticamente, una agent Responder a esta respuesta → answered, a cliente Responder a esta respuesta → customer_replyPara cambios explícitos, suscríbase a la lista de correo. ticket.updated y leer payload['changes'] (e. g. {status:'closed'}).
Estado: El conjunto canónico de OpsIQ es open, customer_reply, answered, in_progress, pending, closedMantenga un pequeño mapa de dos vías para el vocabulario de su plataforma, y asegúrese de que su columna realmente acepta los valores que escribe (un ENUM Si falta un valor, algunas bases de datos lo vacían silenciosamente). Departamento: el departamento de OpsIQ es sin sentido a su lado, Nunca lo envíe. Enviar el descriptor (name, email y slug) y resolverlo contra sus propios departamentos por correo electrónico → nombre → slug, así que “Departamento de facturación” aterriza en tu Departamento de facturación en lugar de General. Disparar en ambos ticket.escalated y a department_id Cambio en ticket.updated.
💡
La duplicación de estado/prioridad/tema/departamento/eliminación está controlada por los conmutadores por conector (mirror_status_changes, mirror_priority_changes, Mirror_subject_change, Mirror Department Changes, Mirror Deletes) leídos a través del. OpsIQ\Connectors\MirrorOptions helper. Incruste ese bloque en su configuración.json y cada conector ticket-mirror lee los toggles idénticamente.
Vincule un ticket a un producto / servicio
Si el cliente eligió un producto específico al abrir el ticket, marque una pista para que el agente vea una tarjeta de servicio enfocada (con un modal "ver otros productos" con un solo clic para el resto). Pasa cualquiera de estos a create():
related_service_id
Preferred: the service id exactly as it appears in your IdentityProvider::lookupCustomerServices() list (each service's id). Unambiguous match.
related_service_label
Un código de servicio de plataforma, p. ej. WHMCS S396 (servicio396) / D11 (dominio11). OpsIQ Descompone el tipo-letra + id opcional y hace coincidir su lista de servicios, con un protector de tipos para que un código de dominio nunca coincida con un producto del mismo id. Exponga una referencia coincidente en cada servicio para obtener una coincidencia exacta.
related_domain
Un nombre de dominio; coincide como una subcadena con el detalle / dominio de cada servicio.
💡
Construya la lista de archivos adjuntos una vez, en la forma anterior, y OpsIQ Se encarga del resto: hosted URLs El contenido base64 es almacenado y re-hospedado para usted, nunca necesita escribir el manejo de archivos por plataforma.
⚠️
Las teclas de acción son letras minúsculas, dígitos y subrayados.3a80caracteres y también permite puntos; la tienda de acción acepta2a100caracteres sin puntos, así que manténgase con letras, dígitos y subrayados y satisfaga ambos. Agregar una acción no crea ninguna ruta AJAX, por lo que no hay nada para regenerar — re-salvar el conector y se sincroniza.
Conectores
Vender a través de chat: el mapa del papel comercial
A connector that can sell — a store platform, a booking system, a payment gateway — declares which of its OWN operations answer OpsIQ's canonical commerce roles. Declare it and the connector appears under Settings → Client Chat → Selling through chat automatically; stop declaring and it disappears. There is no list to register on.
El archivo: commerce_roles.json
La declaración vive en su propio archivo en la raíz del paquete — la presencia del archivo es la reclamaciónNo puede vivir connector_contract.json: ese archivo es regenerado por las herramientas de embalaje y su esquema rechaza claves desconocidas, así que un bloque a mano fallaría la validación y luego sería sobrescrito.
OpsIQ nunca infiere un papel del nombre de una acción. Un rol que no se declara no existe — declarando es todo el contrato.
La operación debe ser una de sus acciones
Cada operación mapeada debe existir en su actions.json. Un tirapo declara una capacidad que no puede funcionar, y se extiende a un cliente como "Puedo comprobar eso por usted" seguido de nada.
Un papel de lectura nunca apunta a una operación destructiva
Leer roles (catalog, disponibilidad, cotización, búsqueda de pedidos) debe mapear a operaciones que no cambian nada en su plataforma.
Un papel de escritura nunca mapas a una operación registro genérico
Mapping order_create a una tabla prima inserta record.create, db.insert, recordCreate, cualquier ortografía, cualquier separador — es rechazado estructuralmente. Una fila escrita directamente elude los precios de su plataforma, bloqueo de stock y correo de confirmación, produciendo un pedido en que su propio sistema no cree completamente.
Un papel escrito declara una operación de recuperación
Una búsqueda idempotente que responde "¿de mi tierra de escritura?". El tiempo más peligroso es el que después de su plataforma ya puede haber creado el orden; sin una búsqueda de recuperación las únicas opciones son para retiro ciego o perderlo.
Las funciones de pago conllevan tres obligaciones adicionales
Un paquete que declare cualquier papel de pago también debe declarar payment_profile (monedas, países, métodos y environment — un entorno sin estado es cómo una integración de prueba toma un pago en vivo), webhook_verify (El esquema de firma real de su proveedor; se rechaza un compás secreto genérico) y event_map (sus eventos en canónicas).
✅
En el Constructor de conectores, haga clic en commerce la capacidad y el mapa de los roles en el mago - valida todo lo anterior como escribes y escribe commerce_roles.json desentrañar la capacidad y el archivo se eliminan en repetible. Verifique cualquier paquete a mano con php tools/verify_commerce_contracts.php.
💡
El transporte es http para un control remotoAPIo bridge para una operación llamada en un puente desplegado (ver el NO-APIpatrón abajo). Las funciones son de transporte-agnóstico; el tiempo de ejecución sólo necesita el transporte declarado para que pueda ver versión-pair un puente.
Conectores
Conecta una plataforma que tiene NO API (el patrón de puente)
Muchas plataformas reales no envían RESTAPIUn hotel CMS, un antiguo sistema de facturación, una herramienta interna a medida. Todavía puede escribir un completoOpsIQconector para uno: el conector envía un único archivo PHP que el operador cae en su propia webroot pública, y ese archivo ES elAPI. Esta página es todo el patrón, con las reglas que lo hacen seguro para correr y la razón detrás de cada regla.
La forma de ella
Un conector normal llama a alguien másAPI. Un conector de puente trae su propio. Nada más cambia: las mismas acciones, los mismos proveedores de contexto, el mismo contrato de identidad, la misma distribución del paquete.
1
Escribe un archivo PHP
It lives in your package at bridge/opsiq-<platform>-bridge.php. It talks to the platform's database directly, or boots the platform's framework, or both. It answers JSON.
2
El operador lo copia en su webroot
Junto a la plataforma index. php. No se modifica ningún código de plataforma, no se instala ningún plugin, nada para mantener en las actualizaciones de la plataforma.
3
El panel de conexión les da el archivo
Tus ajustes.jsondeclara webhook_help.snippet_template. La página del conector lo hace como un archivo copiable con su configuración en vivo ya substituida, por lo que no hay nada a mano-edit.
4
OpsIQ lo llama servidor a servidor
Su cliente.php envía las solicitudes de GET con la clave compartida en un X-Opsiq- El cabecero de Black-Key.URLconfiguración es la raíz del sitio de la plataforma.
✅
El Constructor de conectores puede generar esto para usted ahora. Escoge el "Platform con noAPI" perfil (o establece acceso a los datos al puente) y emite el archivo del puente, el panel de emparejamiento y las acciones tipodas que leen y escriben a través de él - para una aplicación Laravel leyendo su .env, paraWordPressleer wp-config.php, o con credenciales que se pegan para cualquier otra cosa. Autor de mano sólo cuando su plataforma no es ninguna de esas, o cuando usted necesita comportamiento el puente generado no cubre. Un puente escrito a mano está seguro del mago: solo sobrescribe un archivo de puente que lleva su propio marcador.
💡
Everything on this page is shown in PHP against MySQL, because that is the reference implementation and the only combination the packaging pipeline fully supports. The pattern itself is language-agnostic and engine-agnostic: see "The bridge in other languages and other databases" for the gate in Node, Python, Go, Ruby, .NET and Java, the introspection query for PostgreSQL, SQL Server, SQLite and Oracle, and the MongoDB equivalent — along with the packaging constraint that decides how a non-PHP bridge reaches the operator.
El modelo de seguridad, y por qué cada regla está allí
Este archivo se encuentra en una webroot pública detrás de una clave compartida. Ese solo hecho conduce cada regla abajo. No relaje ninguno de ellos para hacer su puente más simple.
El que llama nunca suministraSQL
No es una cláusula WHERE, no un fragmento ORDER BY, no el parámetro de consulta cruda "just this once". El callador denomina una tabla, una columna y un valor; su archivo construye la declaración.SQLtexto, una clave compartida se convierte en la ejecución arbitraria de bases de datos.
Los nombres de las tablas y columnas se validan contra information_schema
Los identificadores no pueden estar vinculados como parámetros, por lo que tienen que ser comprobados en su lugar. Lea la lista real de tabla y columna para ESTA base de datos y rechazar cualquier cosa no en ella. Un identificador que no es un objeto real de este esquema entonces no puede llegar a una consulta en absoluto — eso hace que sea seguro exponer cada tabla.
Cada valor es un parámetro delimitado
Sin excepción, incluyendo valores dentro de una búsqueda. identificadores validados más valores consolidados es el par que hace la superficie total y el nil de superficie de inyección.
Las lecturas son universales, las escrituras se listan
Mira la siguiente cuadra, esta es la regla que más quieren saltar.
Las columnas secretas se redactan en la lectura y se niegan por escrito
Coincide en la columna Nombre: contraseña, remember_token, secret, api_key, private_key , sala , token. Reemplazar el valor con un marcador de posición al salir. Rechazar el texto completamente en el camino – escribir una contraseña cruda hash no es una operación , es una pistola de pie . Enviar el operador al propio flujo de contraseña de la plataforma .
Las eliminaciones son de una sola hoja, por clave principal
Nunca un borrador de vracs, nunca un borrado por filtro. Una eliminación a granel es cómo muere una base de datos. Si alguien realmente necesita uno, pueden hacerlo en la plataforma.
Las lecturas están cubiertas de fila
Abra el parámetro límite con un techo duro. Una consulta desviada no debe ser capaz de dejar la base de datos a través de un mensaje de chat.
Cierre el velo hasta que se establezca la llave
An unconfigured bridge answers 403 to everything. A bridge that is helpful before it is configured is a bridge that was helpful to a stranger.
Comparación de teclas en tiempo constante, clave en un encabezado
hash_equals, nunca ==. La clave va en X-Opsiq-Bridge-Key, no la cadena de consulta, por lo que se mantiene fuera de los registros de acceso, troncos proxy y encabezados Refererer.
Sólo
Un método, una forma, nada para contrabandear en un cuerpo. Todo lo que hace el puente es expresible como un GET con parámetros validados, y OpsIQ es el único callador.
Lee universal, escribe lista de permisos - y por qué
Esta es la regla con la que se argumenta, así que aquí está el razonamiento completo. El asistente debe ser capaz de VER toda la plataforma: eso es lo que hace útil, y una lectura no puede destruir nada. Los escritos son diferentes. Este archivo se encuentra en una web pública detrás de UNA clave compartida. Si esa fuga clave, una superficie de escritura sin restricciones hace que la filtración sea equivalente al control total de bases de datos — un nuevo usuario administrador, una tabla de reservas vacía nunca permite.
⚠️
ElOpsIQLa tarjeta de aprobación cierra la IA, no la clave. El administrador haciendo clic Permitir una acción destructiva es un control sobre el asistente. No es un mando sobre quien tiene la llave del puente. Esas son dos amenazas diferentes, y la lista de permisos es la respuesta a la segunda.
El botón de cara al operador, desde el puente Botble
/* ── WRITE ALLOW-LIST — which tables the assistant may CHANGE here.
*
* READS are unrestricted: the assistant can see every table in the platform.
* WRITES are limited to this list, because this file sits in a PUBLIC webroot
* behind ONE shared key — an allow-list means that even a leaked key cannot
* reach a table you never enabled (no new admin users, no emptied bookings).
*
* Comma-separated table names. Add tables as you need them — e.g. append
* ',pages,posts' to let the assistant edit site content. Set it to '*' to
* allow every table, deliberately. Empty falls back to the hotel defaults. ── */
const OPSIQ_WRITE_TABLES = 'ht_bookings,ht_booking_rooms,ht_booking_addresses,ht_rooms,ht_room_types,ht_customers,customers';
Dos detalles en el cheque de abajo son fáciles de equivocarse. El nombre de la tabla ya llega RESOLVED, llevando el prefijo de mesa del instalador, mientras que un operador escribe la lista de permisos sin prefijos porque eso es lo que naturalmente escribirían. Compare ambos modos o una instalación prefijada silenciosamente permite nada y cada pausa de escritura. Y la negativa debe explicarse a sí mismo, porque la persona que lee es un administrador en una ventana de chat no se desarrolla trazadora.
El cheque de la lista de permisos, verbatim desde marketplace_connectors/botble/bridge/opsiq- puente de abajo.php
/** Tables a WRITE may touch. Empty = the built-in defaults. */
$writeAllowed = static function (string $table) use ($prefix): bool {
$raw = trim((string)(defined('OPSIQ_WRITE_TABLES') ? OPSIQ_WRITE_TABLES : ''));
if ($raw === '') $raw = 'ht_bookings,ht_booking_rooms,ht_rooms,ht_customers,customers';
if (trim($raw) === '*') return true; // explicit opt-in to everything
$bare = ($prefix !== '' && stripos($table, $prefix) === 0) ? substr($table, strlen($prefix)) : $table;
foreach (explode(',', $raw) as $t) {
$t = trim($t);
if ($t === '') continue;
if (strcasecmp($t, $table) === 0) return true;
if (strcasecmp($t, $bare) === 0) return true;
if ($prefix !== '' && strcasecmp($prefix . $t, $table) === 0) return true;
}
return false;
};
/** One refusal, one explanation — used by every write op. */
$requireWritable = static function (string $table) use ($writeAllowed): void {
if ($writeAllowed($table)) return;
opsiq_bridge_out(['success' => false, 'error' =>
'write_not_allowed: "' . $table . '" is not in this bridge\'s write allow-list. '
. 'Reads are unrestricted. To permit writes here, add the table to OPSIQ_WRITE_TABLES '
. 'in opsiq-botble-bridge.php (or set it to "*" to allow every table).'], 403);
};
La puerta, en su totalidad
Cuatro cheques, en este orden, antes de que cualquier cosa toque los datos. Copiar el pedido así como los cheques.
Las cuatro puertas, en orden
<?php
declare(strict_types=1);
/* ── EDIT THIS: a long random secret (40+ chars). Empty = bridge OFF. ── */
const OPSIQ_BRIDGE_KEY = '';
header('Content-Type: application/json; charset=utf-8');
header('Cache-Control: no-store');
function opsiq_bridge_out(array $payload, int $code = 200): void
{
http_response_code($code);
echo json_encode($payload, JSON_UNESCAPED_SLASHES);
exit;
}
/* 1. Fail closed. An unconfigured bridge answers nothing to anyone. */
if (OPSIQ_BRIDGE_KEY === '' || strlen(OPSIQ_BRIDGE_KEY) < 24) {
opsiq_bridge_out(['success' => false, 'error' => 'bridge_not_configured'], 403);
}
/* 2. One method. */
if (strtoupper((string)($_SERVER['REQUEST_METHOD'] ?? '')) !== 'GET') {
opsiq_bridge_out(['success' => false, 'error' => 'method_not_allowed'], 405);
}
/* 3. Constant-time key comparison, key from a header (never the query string). */
$given = (string)($_SERVER['HTTP_X_OPSIQ_BRIDGE_KEY'] ?? '');
if ($given === '' || !hash_equals(OPSIQ_BRIDGE_KEY, $given)) {
opsiq_bridge_out(['success' => false, 'error' => 'forbidden'], 403);
}
/* 4. Only now read credentials and connect. */
Validación de identificadores contra information_schema
Esta es la pieza que convierte "el asistente puede llegar a cualquier mesa" de imprudente en seguro. Resolver el nombre de la tabla del llamante contra el esquema real, tolerar un prefijo perdido o extra de la mesa, y volver nulo para cualquier otra cosa. Todo abajo entonces trabaja con un nombre que probablemente existe.
Validación y reordenación identificativa, verbatim del puente Botble
/** Real tables in THIS database — the allow-list, straight from the DB. */
$allTables = static function () use ($pdo, $db): array {
static $cache = null;
if ($cache !== null) return $cache;
$st = $pdo->prepare('SELECT TABLE_NAME FROM information_schema.TABLES WHERE TABLE_SCHEMA = ? ORDER BY TABLE_NAME');
$st->execute([$db]);
return $cache = array_map('strval', $st->fetchAll(PDO::FETCH_COLUMN));
};
/** Resolve a caller-supplied table name to a REAL one, or null. */
$resolveTable = static function (string $name) use ($allTables, $prefix): ?string {
$name = trim($name);
if ($name === '' || !preg_match('/^[A-Za-z0-9_]+$/', $name)) return null;
$tables = $allTables();
foreach ($tables as $t) if (strcasecmp($t, $name) === 0) return $t;
/* Tolerate a missing or extra table prefix. */
foreach ($tables as $t) {
if (strcasecmp($t, $prefix . $name) === 0) return $t;
if ($prefix !== '' && strcasecmp($prefix . $t, $name) === 0) return $t;
}
return null;
};
/** Column introspection: table => [column => true]. Cached per request. */
function opsiq_bridge_columns(PDO $pdo, string $db, string $table): array
{
static $cache = [];
if (isset($cache[$table])) return $cache[$table];
$stmt = $pdo->prepare('SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ?');
$stmt->execute([$db, $table]);
$cols = [];
foreach ($stmt->fetchAll(PDO::FETCH_COLUMN) as $c) $cols[strtolower((string)$c)] = true;
return $cache[$table] = $cols;
}
/** Columns whose VALUES must never leave the platform. */
$secretCol = static function (string $c): bool {
return (bool)preg_match('/(^|_)(password|remember_token|secret|api_key|private_key|salt|token)($|_)/i', $c);
};
/** Columns a write may never touch — auth material. */
$writeBanned = static function (string $c): bool {
return (bool)preg_match('/(^|_)(password|remember_token)($|_)/i', $c);
};
/** Strip secret values from a row before it leaves the server. */
$redact = static function (array $row) use ($secretCol): array {
foreach ($row as $k => $v) if ($secretCol((string)$k)) $row[$k] = '[redacted]';
return $row;
};
Una operación de lectura y una operación de escritura, completa
Observe lo que está atado y lo que se valida. La columna filtrante se comprueba contra la lista de columnas reales y luego interpolada como identificador; su valor está atada. El límite es acoplado. Las filas son redactadas en el camino hacia fuera. La actualización rechaza la clave principal y cualquier columna de austeridad, y sellos actualizados_at cuando la tabla tiene uno.
Lea cualquier tabla — identificadores validados, valores encuadernados, filas capped
case 'query': {
$t = $resolveTable((string)($_GET['table'] ?? ''));
if ($t === null) opsiq_bridge_out(['success' => false, 'error' => 'unknown_table'], 404);
$cols = opsiq_bridge_columns($pdo, $db, $t);
if (!$cols) opsiq_bridge_out(['success' => false, 'error' => 'unknown_table'], 404);
$sql = "SELECT * FROM `$t` WHERE 1=1";
$args = [];
/* Equality filter: column must be REAL, value is bound. */
$wc = strtolower(trim((string)($_GET['where_column'] ?? '')));
if ($wc !== '') {
if (!isset($cols[$wc])) opsiq_bridge_out(['success' => false, 'error' => 'unknown_column: ' . $wc], 400);
$sql .= " AND `$wc` = ?";
$args[] = (string)($_GET['where_value'] ?? '');
}
/* Ordering: column validated, direction from a fixed pair. */
$ob = strtolower(trim((string)($_GET['order_by'] ?? '')));
if ($ob !== '' && isset($cols[$ob])) {
$dir = strtoupper(trim((string)($_GET['order'] ?? 'DESC'))) === 'ASC' ? 'ASC' : 'DESC';
$sql .= " ORDER BY `$ob` $dir";
} elseif (isset($cols['id'])) {
$sql .= " ORDER BY `id` DESC";
}
/* Hard row cap. */
$lim = (int)($_GET['limit'] ?? 25);
if ($lim < 1) $lim = 25;
if ($lim > 200) $lim = 200;
$off = max(0, (int)($_GET['offset'] ?? 0));
$sql .= " LIMIT $lim OFFSET $off";
$st = $pdo->prepare($sql);
$st->execute($args);
$rows = array_map($redact, $st->fetchAll());
opsiq_bridge_out(['success' => true, 'data' => [
'table' => $t, 'returned' => count($rows), 'rows' => $rows,
]]);
}
Escribe una fila — tabla lista, columnas de auth rechazadas, fila única por clave principal
case 'record.update': {
$t = $resolveTable((string)($_GET['table'] ?? ''));
if ($t === null) opsiq_bridge_out(['success' => false, 'error' => 'unknown_table'], 404);
$requireWritable($t); // the allow-list, before anything else
$cols = opsiq_bridge_columns($pdo, $db, $t);
$pk = $primaryKey($t);
$id = (string)($_GET['id'] ?? '');
if ($id === '') opsiq_bridge_out(['success' => false, 'error' => 'id_required'], 400);
$set = json_decode((string)($_GET['set'] ?? ''), true);
if (!is_array($set) || !$set) opsiq_bridge_out(['success' => false, 'error' => 'set_json_required'], 400);
$frag = []; $args = [];
foreach ($set as $col => $val) {
$col = strtolower(trim((string)$col));
if (!isset($cols[$col])) opsiq_bridge_out(['success' => false, 'error' => 'unknown_column: ' . $col], 400);
if ($writeBanned($col)) opsiq_bridge_out(['success' => false, 'error' => 'refused: "' . $col . '" is auth material - change it through the platform own password flow, never by direct write.'], 400);
if ($col === $pk) opsiq_bridge_out(['success' => false, 'error' => 'refused: the primary key cannot be rewritten.'], 400);
if (is_array($val) || is_object($val)) $val = json_encode($val, JSON_UNESCAPED_SLASHES);
$frag[] = "`$col` = ?";
$args[] = ($val === null) ? null : (string)$val;
}
if (isset($cols['updated_at']) && !isset($set['updated_at'])) $frag[] = '`updated_at` = NOW()';
$before = $pdo->prepare("SELECT * FROM `$t` WHERE `$pk` = ? LIMIT 1");
$before->execute([$id]);
$prev = $before->fetch();
if (!$prev) opsiq_bridge_out(['success' => false, 'error' => 'not_found'], 404);
$args[] = $id;
$up = $pdo->prepare("UPDATE `$t` SET " . implode(', ', $frag) . " WHERE `$pk` = ? LIMIT 1");
$up->execute($args);
opsiq_bridge_out(['success' => true, 'data' => [
'table' => $t, 'id' => $id, 'changed' => $up->rowCount(),
'before' => $redact(array_intersect_key($prev, $set)),
]]);
}
Supervivencia de las diferencias del esquema
Las versiones de la plataforma difieren. Las columnas se mueven, se renombran o están ausentes. Un puente que asume un esquema funciona en una instalación. Introspección y adaptación en su lugar: seleccione sólo las columnas que existen aquí, tolerar el prefijo de la tabla, y probar los ortografías plausibles de una referencia.
Tolerancia del esquema, desde el puente Botble
/* Only ever select columns that exist on THIS install. */
$pick = static function (array $cols, array $wanted, string $alias = 'b'): string {
$out = [];
foreach ($wanted as $c) if (isset($cols[$c])) $out[] = "`$alias`.`$c`";
return $out ? implode(', ', $out) : "`$alias`.*";
};
/* References vary: stored with or without a leading "#", with or without an
* operator-configured alpha prefix, or only as a numeric id. Try every
* plausible form — the PROOF match is what actually gates disclosure, so
* tolerant matching here is safe. */
$refCandidates = [$ref, '#' . $ref];
$digitsOnly = preg_replace('/\D+/', '', $ref);
if ($digitsOnly !== '' && $digitsOnly !== $ref) {
$refCandidates[] = $digitsOnly;
$refCandidates[] = '#' . $digitsOnly;
}
$refCandidates = array_values(array_unique($refCandidates));
💡
Dar a su puente un op=diag que reporta STRUCTURE solamente — qué tablas resolvieron, qué columnas la mesa principal tiene, y el SHAPE de la referencia más reciente con cada dígito enmascarado. Es clave-gated como todo lo demás, y se convierte "el lookup no encuentra nada" desde un ticket de soporte en una respuesta de diez segundos. Nunca dejes que vuelva registros reales.
Errores uniformes y trampa de enumeración
Una forma para todo
Success is {"success":true,"data":{...}}. Failure is {"success":false,"error":"snake_case_reason"}. Your Client.php and every action then have exactly one response shape to handle.
No se encuentra ni tiene que ser idéntico
En una superficie de búsqueda, una referencia que no existe y una referencia cuya prueba no coincida debe producir la respuesta SAME. Diferentes respuestas convierten su puente en un oráculo que confirma las referencias reales, lo cual es una exportación gratuita para cualquier paciente.
Nunca se filtre la razón a un visitante
El puente puede ser preciso conOpsIQ. Lo que llega a un visitante es decidido porOpsIQ, en un rechazo fijo.
El archivo copiable en el panel de conectores
El operador nunca abre su repositorio. Abren el panel del conector enOpsIQy presione Copia. Esa copia viene de la configuración.json, y debe ser el mismo programa que puente/*.php.
settings.json — la entrada del panel para un conector de puente
{
"settings": [
{ "key": "base_url", "label": "API base URL", "type": "text", "required": true },
{ "key": "api_key", "label": "Bridge key", "type": "password", "required": true,
"autogenerate": true,
"help": "Auto-generated the moment you enable the connector. It must match OPSIQ_BRIDGE_KEY inside the bridge file; the copyable file below already carries this value once saved." }
],
"webhook_help": {
"title": "One file, three surfaces",
"body": "This platform has no public REST API, so this ONE file IS the API. Copy it into the site PUBLIC webroot, keeping the filename.",
"snippet_filename": "opsiq-yourplatform-bridge.php (drop next to the site index.php)",
"snippet_template": "<?php\n/* ... the whole bridge file ... */\nconst OPSIQ_BRIDGE_KEY = \u0027{{setting:api_key}}\u0027;\n..."
}
}
{{setting:key}} carries live values
The connector panel substitutes {{setting:<key>}} in the snippet with that connector's saved value, so the copied file already contains the operator's generated bridge key and needs no hand-edit. An empty or unsaved setting leaves the token visible, so the operator can see exactly what is still missing.
Otros propietarios de lugares son sustitutivos lado del servidor
Independientemente de eso,{webhook_url}, {webhook_path}, {webhook_secret}, {site_key}, {base_url}y{slug}se llenan antes de que el panel vea alguna vez el snippet.
webhook_help puede ser un objeto o una lista
Una lista le da varios fragmentos en un panel, por ejemplo un archivo de puente y un gancho separado.
🚫
No mantener el snippet a mano. El archivo puente y la copia del panel son dos copias de un programa, y se arrastrarán WILL — se ha actualizado un puente y su copia del tablero no fue así que cualquiera que reinstaló y copió desde el panel instaló el viejo puente y perdió silenciosamente cada nueva capacidad. Nada lo detectó: conformidad pasada, firmas pasadas, pruebas pasadas.
Mantenga las dos copias idénticas
# Regenerate every package's panel snippet from its bridge file
php tools/sync_connector_bridge_snippets.php --apply
# Show what would change, without writing
php tools/sync_connector_bridge_snippets.php
Drift is now a failing conformance check, not a support ticket: the verifier compares the two line by line (ignoring the {{setting:...}} placeholders, which are supposed to differ) and names the first line that differs. Run the sync tool as the last step before every release, right before signing.
Lo que el puente debe exponer
Operaciones de forma y una superficie universal de datos, juntos. Las formas devuelven respuestas ordenadas y diseñadas para las preguntas que la gente realmente hace; los universales cubren todo lo demás así el asistente nunca está atrapado.
Leídos de forma
Estadísticas, la lista principal de objetos con filtros, un objeto con sus filas relacionadas, el catálogo de lo que se vende, búsqueda de clientes con historia. Estos dan a la AI una buena respuesta en una sola llamada en lugar de cinco.
Escribidos de forma
Los dos o tres cambios estatales que importan — establecer el estado, cancelar. Mantener los valores aceptados permitidos-listed.
descubrimiento universal
tablas (con recuentos de fila) y describir (columnas, tipos, clave primaria, más banderas legibles y writables por columna). Así es como el asistente aprende una plataforma que no anticipaste.
Leído y escrito universal
query, record. get, record, record
Identidad, antes de la puerta clave
Las sondas de identidad son llamadas por el BROWSER del ADMIN, mismo origen, por lo que no pueden enviar un encabezado personalizado. Su autenticación es la sesión de plataforma en sí. Ponlas delante de la puerta clave, manténgalos alejados de todos los datos de registro, y nunca dejes que vuelvan a ser secretos.
Diagnósticos
op=diag, structure only, masked.
💡
Un conector solo lectura no necesita ninguna lista de permisos. Si su plataforma sólo responde alguna vez preguntas, envíe un puente sin operaciones de escritura y toda la clase de riesgo de escribir desaparece. Añadir escribe cuando alguien les pide.
Lista de verificación antes de enviar un puente
El puente lo rechaza todo sin un juego de llaves
Pruébalo. Renombra la constante para vaciar y confirmar cada respuesta de op 403_.
Una clave equivocada se rechaza en tiempo constante
hash_equals, y la llave leída desde el encabezado solamente.
Se rechaza un nombre de mesa de maquillaje
Y un verdadero nombre de mesa con un prefijo equivocado todavía resuelve.
Una columna de contraseña nunca aparece en una lectura
Y una escritura que nombre uno se niega con una explicación.
Se rechaza un escrito a una tabla fuera de la lista de permisos
Con el mensaje que le dice al operador cómo ampliarlo.
El panel snippet coincide con el archivo puente
php tools/sync_connector_bridge_snippets. php lo reporta en el paso.
Reinstalar el conector no es suficiente
Si su paquete envía un archivo de puente, un operador que actualiza el conector debe redespliegar ese archivo en su webroot. Dilo así en el cuerpo del panel y en su CHANGELOG, cada lanzamiento.
Conectores
El puente en otros idiomas y otras bases de datos
El patrón de puente no es un patrón PHP.OpsIQllamadas es un punto final HTTP, por lo que el archivo puede ser Nodo, Python, Go, Ruby, .NET o Java, y la tienda detrás de él puede ser cualquierSQLmotor oMongoDB. Lo que ES en forma de PHP es el oleoducto de embalaje, y esa limitación decide cómo su puente llega al operador. Lea la sección de entrega primero: es la parte que sorprende a las personas.
Lo que el conector realmente requiere
Este es el contrato completo, nada en él nombra un lenguaje.
Transportar
HTTPS. Una solicitud de GET por llamada, sin cuerpo ni otro método.
Autenticación
Un secreto compartido en el X-Opsiq-Bridge-Key solicitar encabezado, comparado en tiempo constante. No un parámetro de consulta, no una cookie, no Básico auth.
Parámetros
Una cuerda de consulta. op nombre la superficie, do nombra la operación, el resto son los argumentos de esa operación.
Respuesta
JSON. {"success":true,"data":{...}} o {"success":false,"error":"snake_case_reason"}. Aplicación de tipo de contenido/json, y sin cacheo.
Códigos de estado
200sobre el éxito.403llave inconfigurada o incorrecta,404no encontrado,405método equivocado,400mala discusión,501sin apoyo en este esquema.
Eso es todo
No framework, no runtime, no OpsIQ library on your side. If it can serve that, it can be a bridge.
Entrega: lo que puede vivir en puente/, y lo que no debe
El paquete firmado cubre una lista fija de extensiones de archivo, y un archivo fuera de esa lista se deja fuera del ZIP. Un puente en un idioma que la lista no cubre por lo tanto no puede enviar dentro del paquete — pero ya no puede desaparecer sobre usted tampoco.26Agosto2026un archivo en bridge/ que el empaquetador caería es un fallo de conformancia dura, por lo que el paquete se niega a pasar en lugar de instalar sin puente en él.
Cómo se trata un puente/carpeta en tiempo de construcción
bridge/bridge.php -> SHIPPED, and drift-checked against the panel snippet
bridge/server.js -> SHIPPED, and drift-checked against the panel snippet
bridge/bridge.py -> REFUSED at conformance: "Bridge files are packaged" FAILS
bridge/bridge.rb -> REFUSED at conformance
bridge/main.go -> REFUSED at conformance
bridge/Bridge.cs -> REFUSED at conformance
bridge/Bridge.java -> REFUSED at conformance
PHP yJavaScript- Totalmente apoyado
El archivo se envía en el ZIP firmado, y el verificador de snippet mantiene su copia de panel byte-identical a él, cualquiera de los dos que es. La comprobación de la deriva lee cada archivo en puente /, no sólo los PHP, por lo que un puente actualizado con una copia del panel de establos falla la construcción en cualquier idioma.
Todo lo demás — entregar a través del panel solamente
El panel snippet es texto plano sin idea de qué idioma tiene, por lo que funciona para cualquier pila. Ponga todo el programa en webhook_help. snippe_template, nombre el archivo en snifpet_filename, y NO deje una copia en puente/ — la conformidad rechazará el paquete en lugar de enviarlo hueco. Diga claramente en webhech_helpad. body que el operador copia este paquete en vez.
Si realmente necesitas otro idioma en el paquete
Widen PackageSigner::EXTENSIONS deliberately, then re-sign and re-seed. That is a decision about what executable code Nabtech distributes, so make it on purpose — do not discover it from a missing file.
💡
Nombre del archivo en webhook_help.snippet_filename cuando su paquete navegue más de un puente. Así es como el verificador sabe a qué puente pertenece una copia del panel; sin ella, se reporta un emparejamiento ambiguo como advertencia de conformidad y que snippet queda sin control.
⚠️
El punto de la comprobación de deriva es que un archivo puente y su copia del panel son dos copias de un programa y se divergen. Regenerar en lugar de editarlo a mano: php tools/sync_connector_bridge_snippets.php --apply, luego re-firme el paquete.
La puerta, en seis idiomas
Los mismos cuatro cheques en el mismo orden por todas partes: no cerrar con llave, un método, comparación de teclas constante-tiempo del encabezado, luego conectar. La única trampa real es la comparación, y es una trampa diferente en cada idioma.
⚠️
Compare el SHA-256digests of the two keys rather than the keys themselves. Es correcto en todos los idiomas, y se aparta el hecho de que varios comparadores constantes a la vez arrojan o filtran sobre un desajuste longitudinal — Node's timingSafeEqual eleva una RangeError cuando los búferes difieren en longitud, lo cual convierte una clave equivocada en una500en lugar de un403.
# Python — Flask
import hashlib, hmac, os
from flask import Flask, request, jsonify
app = Flask(__name__)
BRIDGE_KEY = os.environ.get("OPSIQ_BRIDGE_KEY", "") # empty = bridge OFF
def same_key(a: str, b: str) -> bool:
return hmac.compare_digest(
hashlib.sha256(a.encode()).digest(),
hashlib.sha256(b.encode()).digest(),
)
def out(payload, code=200):
resp = jsonify(payload)
resp.status_code = code
resp.headers["Cache-Control"] = "no-store"
return resp
@app.before_request
def gate():
if len(BRIDGE_KEY) < 24:
return out({"success": False, "error": "bridge_not_configured"}, 403)
if request.method != "GET":
return out({"success": False, "error": "method_not_allowed"}, 405)
given = request.headers.get("X-Opsiq-Bridge-Key", "")
if not given or not same_key(BRIDGE_KEY, given):
return out({"success": False, "error": "forbidden"}, 403)
Go, Ruby, . NET y Java - la misma comparación
// Go
func sameKey(a, b string) bool {
ha := sha256.Sum256([]byte(a))
hb := sha256.Sum256([]byte(b))
return subtle.ConstantTimeCompare(ha[:], hb[:]) == 1
}
func gate(next http.HandlerFunc) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
w.Header().Set("Content-Type", "application/json; charset=utf-8")
w.Header().Set("Cache-Control", "no-store")
key := os.Getenv("OPSIQ_BRIDGE_KEY")
if len(key) < 24 { out(w, 403, "bridge_not_configured"); return }
if r.Method != http.MethodGet { out(w, 405, "method_not_allowed"); return }
given := r.Header.Get("X-Opsiq-Bridge-Key")
if given == "" || !sameKey(key, given) { out(w, 403, "forbidden"); return }
next(w, r)
}
}
// Ruby
def same_key?(a, b)
OpenSSL.secure_compare(Digest::SHA256.digest(a.to_s), Digest::SHA256.digest(b.to_s))
end
// C# / .NET
static bool SameKey(string a, string b) =>
CryptographicOperations.FixedTimeEquals(
SHA256.HashData(Encoding.UTF8.GetBytes(a)),
SHA256.HashData(Encoding.UTF8.GetBytes(b)));
// Java
static boolean sameKey(String a, String b) throws Exception {
MessageDigest d = MessageDigest.getInstance("SHA-256");
return MessageDigest.isEqual(d.digest(a.getBytes(UTF_8)), d.digest(b.getBytes(UTF_8)));
}
Validación de identificadores en cada motor de base
La propiedad de seguridad no cambia: una tabla o nombre de columna que el callador suministrado debe ser revisado contra el esquema real antes de interpolar, y cada valor debe ser un parámetro atado. Sólo la consulta de introspección, el carácter de cita y la cláusula de paging difieren.
MySQLyMariaDB
Cuadros: SELECT TABLE_NAME FROM information_schema.TABLES WHERE TABLE_SCHEMA = ?. Columnas: lo mismo contra information_schema.COLUMNS con AND TABLE_NAME = ?. Cotización con backticks, duplicando cualquier retroceso dentro. LIMIT n OFFSET m.
PostgreSQL
Mismo información_schema vistas, nombres de casos inferiores, WHERE table_schema = $1 (normalmente) public). Citas con citas dobles, duplicando cualquier cita doble dentro. LIMIT n OFFSET m. Ver la regla plegable: un identificador no citado se dobla a caso inferior, así que compare caso-insensiblemente cuando resuelve un nombre.
SQL Servidor
Mismo INFORMATION_SCHEMA views. Cotización con soportes cuadrados, duplicando cualquier soporte de cierre dentro. Paging necesita un ORDER BY: ORDER BY [id] DESC OFFSET @o ROWS FETCH NEXT @n ROWS ONLY.
SQLite
Cuadros: SELECT name FROM sqlite_master WHERE type = 'table' AND name NOT LIKE 'sqlite_%'Columnas: SELECT name FROM pragma_table_info(?) — utilizar esa forma de tabla valorada, porque la desnuda PRAGMA table_info(x) declaración no puede tomar un parámetro atado e invitar la interpolación de cuerdas hay exactamente el agujero que está tratando de cerrar. Cita con citas dobles. LIMIT n OFFSET m.
Oracle
Cuadros: SELECT TABLE_NAME FROM ALL_TABLES WHERE OWNER = :owner; columnas de ALL_TAB_COLUMNS. Cotización con citas dobles, y recuerde un identificador no citado se dobla al caso UPPER, lo opuesto a PostgreSQL. Página con OFFSET :o ROWS FETCH NEXT :n ROWS ONLY el 12c y más tarde.
MongoDB
No SQL, por lo que no interpolación de identificadores y ningún parámetro encuadernado — una disciplina diferente para el mismo objetivo.
La consulta de introspección por motor
-- MySQL / MariaDB
SELECT TABLE_NAME FROM information_schema.TABLES WHERE TABLE_SCHEMA = ?;
SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ?;
-- PostgreSQL
SELECT table_name FROM information_schema.tables WHERE table_schema = $1;
SELECT column_name FROM information_schema.columns WHERE table_schema = $1 AND table_name = $2;
-- SQL Server
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = @schema;
SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = @schema AND TABLE_NAME = @table;
-- SQLite
SELECT name FROM sqlite_master WHERE type = 'table' AND name NOT LIKE 'sqlite_%';
SELECT name FROM pragma_table_info(?);
-- Oracle
SELECT TABLE_NAME FROM ALL_TABLES WHERE OWNER = :owner;
SELECT COLUMN_NAME FROM ALL_TAB_COLUMNS WHERE OWNER = :owner AND TABLE_NAME = :tbl;
💡
Resolver, luego utilizar el nombre RESOLVED. Nunca pasar la ortografía del callador a través de la consulta incluso después de comprobarlo — mire el nombre real en la lista que lee desde el esquema e interpola eso. No cuesta nada y cierra la brecha entre "este nombre coincide con algo" y "este es el nombre que estoy a punto de ejecutar".
MongoDB: las mismas reglas, sinSQL
No hay una cadena de consulta para inyectarse, por lo que la gente asume que no hay nada que guardar. Hay: el documento del filtro.JSONrecto find() deja que un callador envíe {"$ne": null} o {"$gt": ""} donde esperabas un valor, y seleccionas silenciosamente cada documento. Construye el filtro tú mismo.
MongoDB — colección de filtros, proyección como redaccionamiento
// Node + the official driver
const names = (await db.listCollections({}, { nameOnly: true }).toArray()).map(c => c.name);
function resolveCollection(given) {
if (!/^[A-Za-z0-9_.-]+$/.test(given || "")) return null;
return names.find(n => n.toLowerCase() === String(given).toLowerCase()) || null;
}
const coll = resolveCollection(q.collection);
if (!coll) return out(res, { success: false, error: "unknown_collection" }, 404);
// Build the filter from a validated field and a SCALAR value. Never spread
// caller JSON into it: {"$ne":null} would match every document.
const filter = {};
if (q.where_field) {
if (!/^[A-Za-z0-9_.]+$/.test(q.where_field))
return out(res, { success: false, error: "unknown_field: " + q.where_field }, 400);
filter[q.where_field] = String(q.where_value ?? ""); // String() is the guard
}
// Projection is the redaction allow-list: drop secrets, never return them.
const projection = { password: 0, remember_token: 0, api_key: 0, secret: 0, token: 0 };
const limit = Math.min(Math.max(parseInt(q.limit ?? "25", 10) || 25, 1), 200);
const rows = await db.collection(coll)
.find(filter, { projection })
.limit(limit)
.skip(Math.max(0, parseInt(q.offset ?? "0", 10) || 0))
.toArray();
Nombres de la colección vienen de listaColección
Esa es tu información_schema. Resolver la ortografía del callador en su contra y utilizar el nombre resuelto.
Forzar cada valor de filtro a un escalar
A String() o a Number() alrededor de ella es toda la defensa contra inyección del operador. Un documento donde usted esperaba un valor es el equivalente NoSQL de una cita perdida.
La proyección es la regla de la reacción
Excluir campos en forma de secreto en la proyección para que nunca abandonen el servidor, en lugar de eliminarlos del resultado después.
Eliminaciones permanecer un solo documento por _id
EliminarUno con un _id resuelto. Nunca eliminar aMany, y nunca un filtro que el llamante influyó.
Los escritos se mantienen alistados
El mismo razonamiento que SQL: nombrar las colecciones que escriba puede tocar, y rechazar el resto con una explicación.
El punto final de identidad en otros idiomas
La sonda de identidad es la otra mitad del puente, y también es HTTP. El bloque de firmas es idéntico en cada idioma: base64url la carga útil, HMAC_-SHA256 esa cuerda, unirse a un punto.
✅
No escriba esto a mano desde cero. Configuración, Portal de soporte ya lleva un catálogo de snippet listo para PHP, Laravel,WordPress, WHMCS, Nodo con y sin dependencias, Flask y FastAPI, Django, .NET, Ruby on Rails, Java Spring Boot and Go. Tome el signer del sabor que coincide con su pila.
Qué cambiar cuando lo reutiliza
Esos snippets mintan un token de entrega PORTAL, que es deliberadamente más estricto: lleva jti y single_use:true y vive sobre120segundos porque viaja en unURL. Un token de identidad puente o widget no lleva ninguno de ellos y utiliza una exp más larga, minutos a horas.
Lo que queda igual
site_key, iat, exp y un nivel superior autenticado:true, más un administrador o cliente sujeto con una id y un nombre de usuario o correo electrónico. Mismos reclamos, misma firma, mismo secreto.
Ambas formas de token verifican
Un JWT de tres partes firmó HS256 funciona, y también lo hace la carga útil base64url de dos partes más hex HMAC que la referencia PHP emite. Use cualquiera que las bibliotecas de su idioma hacen natural — una biblioteca JWP es generalmente el camino más corto fuera de PHP.
Nunca lo mentiste en el navegador
Es cierto en cada idioma. Firmar el lado del cliente significa enviar el sitio secreto a cada visitante.
Elegir, honestamente
La plataforma es PHP
Escribe el puente en PHP. Nave en el paquete, se controla la deriva y puede arrancar el marco propio de la plataforma para leer una sesión en vivo para la sonda de identidad. Nada más te da los tres.
La plataforma es Node
Un . js puente barcos, signos y se controla la deriva exactamente como un PHP. Nada es dado hacia arriba.
La plataforma es Python, Ruby, Go, . NET o Java
Entregar a través del panel de la cinta y decirlo en el cuerpo del panel; no dejar el archivo en puente /, donde la conformidad rechazará el paquete. El conector es completamente normal: acciones, proveedores de contexto, identidad y búsquedas de invitados todo trabajo igual, porque ninguno de ellos se preocupa qué respuestas la llamada HTTP.
No puedes ejecutar un proceso en el host de plataformas
Entonces el patrón de puente no es la herramienta correcta. Existe un puente para llegar a una plataforma desde su propio host. Si sólo se puede alcanzar desde fuera, usted está escribiendo un conector normal API contra cualquier superficie que expone.
⚠️
Una limitación más que vale la pena planear alrededor: una sonda de identidad tiene que leer la sesión de inicio de la plataforma, lo cual generalmente significa correr dentro del propio proceso de la Plataforma o al menos en su anfitrión con acceso a su tienda de sesiones. Un puente escrito en un idioma diferente de la base puede servir los datos cómodamente y puede seguir luchando para responder op=admin_identity. Si es así, envíe el puente de datos en su idioma y la sonda.
Conectores
Dar al asistente ambas mitades: acciones Y contexto
Esta es la cosa más común que falta de un conector que "trabaja pero es inútil". Las acciones permiten que las cosas AI DO. Secciones contextuales lo permitan CONOCER cosas. Un conector necesita ambos, y la mayoría de preguntas que un administrador hace son respondidas por contexto, nunca por una acción. Un conexión con acciones perfectas y ningún proveedor de contexto informará sinceramente que no puede ver nada.
Los dos mitades
Acciones — cómo hace la AI las cosas
Declarado en acciones.jsono devuelto por registerActions(). El modelo elige uno, llena sus parámetros yOpsIQLas acciones son para verbos: cancelar esta reserva, abrir ese ticket, cambiar este estado.
Secciones de contexto — cómo la AI sabe cosas
Assembled by a ContextProvider before the model runs. "Cuantas órdenes este mes", "quiénes son mis clientes más recientes", "qué vendemos" todo resuelven a través de una búsqueda contextual, y nunca toquen una acción en absoluto.
⚠️
Síntoma de un proveedor desaparecido: el asistente responde "No hay conector habilitado suministrado esta sección contextual" mientras que el conector está instalado, habilitado y pasando su prueba de conexión. Nada se ha registrado, nada errores. Ese mensaje significa que ningún proveedor reclama la sección.
El vocabulario de la sección universal
OpsIQ pide secciones por nombre genérico. Su trabajo es decidir qué significa cada uno en su plataforma y responder a ella. Una reserva de hotel ES orden del hotel; una habitación IS lo que el hotel vende. Mapa, no inventar.
órdenes / pending_orders
Cualquiera que sea una transacción en su plataforma: pedidos, reservas, reservas y trabajos, envíos. pending_orders es la misma lista filtrada a los inacabados.
clientes
La lista de clientes.
products
Lo que la plataforma vende: productos, habitaciones, planes, servicios.
facturación
Totales de ingresos y dinero en forma, además cuenta por estado.
Use estos cuando su plataforma realmente los tiene. No forzar un mapeo — una sección sin respuesta es mejor que uno equivocado.
Cualquier otra cosa que tu plataforma tenga
Declara tu propio. Un proveedor que declara secciones(): ['licenses','shipments'] tiene los fusionados en la lista de permisos del Lookup universal, así que las búsquedas específicas de plataforma se ponen a disposición sin cambios centrales.
El error que cuesta un día
Un proveedor de contexto DEBE implementar la interfaz. El registro lo controla, por lo que una clase que simplemente LOOKS derecha es saltada — sin error, en cualquier lugar.
ContextProvider. php — el contrato, del paquete de referencia Botble
use OpsIQ\Platform\ContextProviderInterface;
/* MUST implement ContextProviderInterface: ContextRegistry::collectAll()
* type-checks it, so a provider that merely LOOKS right is skipped and every
* section answers "No enabled connector supplied this context section" — the
* exact symptom, with no error anywhere. */
final class ContextProvider implements ContextProviderInterface
{
public function slug(): string { return 'yourplatform_context'; }
public function label(): string { return 'Your Platform (orders, customers, products)'; }
public function priority(): int { return 30; } // lower renders earlier
/** ADMIN only. The guest surface has its own provider and its own rules. */
public function surfaces(): array { return ['admin']; }
/** The universal section names this connector can answer. */
public function sections(): array
{
return ['orders', 'pending_orders', 'clients', 'products', 'billing'];
}
public function isAvailable(): bool
{
try {
$s = \OpsIQ\Connectors\ConnectorRegistry::getSettings('yourplatform') ?: [];
return trim((string)($s['base_url'] ?? '')) !== '' && trim((string)($s['api_key'] ?? '')) !== '';
} catch (\Throwable $e) {
return false;
}
}
public function build(array $ctx): string
{
$section = strtolower(trim((string)($ctx['section'] ?? '')));
$limit = max(3, min(50, (int)($ctx['limit'] ?? 20)));
$query = trim((string)($ctx['query'] ?? ''));
try {
switch ($section) {
case 'orders':
case 'pending_orders': return $this->orders($limit, $query, $section === 'pending_orders');
case 'clients': return $this->customers($limit, $query);
case 'products': return $this->products($limit);
case 'billing': return $this->billing();
}
} catch (\Throwable $e) {
return ''; // a provider must NEVER break prompt assembly
}
return '';
}
}
Registrelo desde el conector
Implementar ContextConnectorInterface y devolver a sus proveedores de contextProviders(). La clase conector también puede implementar ContextProviderInterface directamente y ser registrado como mismo.
Regresar texto plano, noJSON
build() devuelve un bloque de texto que se concaten en el prompt. Escríbelo para un lector: una partida, luego una línea por fila.
Regresa ' en lugar de tirar
Busca tus propias excepciones. Un proveedor que lanza se ha registrado y saltado, pero devolver '' es el contrato.
El constructor no puede escribir secciones() para usted
Las secciones generadas de ContextProvider. php barcos(): array { return []; } y el mago no tiene campo para él. Llene a mano - y recuerde que republicándose del asistente OVERWRITES el archivo. Copia sus ediciones primero.
⚠️
Establece el verdadero TOTAL, no el número de filas que envió. Una página no es un total. Un proveedor que lista veinte hileras sin decir así consigue al asistente con confianza contestando "tienes20reservas" cuando la plataforma sostiene669. Un COUNT barato y una línea explícita - "TOTAL en el archivo:669(esta lista muestra lo más nuevo20solamente)" — es todo el arreglo, y un conteo confiadomente equivocado es peor que ningún recuento.
Un bloque de sección que no puede ser mal contado
$lines = ['YOUR PLATFORM — ORDERS (live, newest first)'];
$lines[] = 'TOTAL orders on file: ' . (int)$total
. ' (this list shows the newest ' . count($rows) . ' only — never count these rows to answer "how many")'
. ' | by status: ' . $byStatus;
foreach ($rows as $r) {
$lines[] = '#' . (int)$r['id'] . ' ' . $r['reference'] . ' | ' . $r['status']
. ' | amount ' . $r['amount'] . ' | ' . substr((string)$r['created_at'], 0, 16);
}
$lines[] = 'Use yourplatform_get_order (order_id) for the full record.';
return implode("\n", $lines);
Nombra tus acciones para que OpsIQ pueda decir lecturas de escritos
OpsIQ clasifica una acción de los WORDS en su action_id, y es deliberadamente conservador: todo lo que no puede reconocer se trata como un escrito y exige una tarjeta de aprobación. Obtener el verbo derecho y una lectura justa corre.
1
is_destructive or requires_confirmation wins
Si se establece, la acción siempre necesita aprobación. Declararlas honestamente — esto es lo que sale de la tarjeta de aprobación del administrador.
2
Una palabra de escritura en cualquier lugar del id hace que sea un escrito
No reconocido significa aprobación necesaria. Ese defecto es intencional.
⚠️
Las palabras escritas se revisan ANTES leer las palabras, por lo que un nombre mixto como get_and_sync_orders es clasificado como WRITE. Escoge un verbo, ponlo primero y manténgalo limpio: list_ordens, get_customer, search_bookings, cancel_bookting, set_ord_status.
Sólo declarar nativo_api si la plataforma realmente tiene uno
The native_api capability registers a generic <slug>_api_call passthrough so the model can reach endpoints your typed actions do not cover. On a platform with no API it is worse than useless: the model keeps reaching for a tool that cannot succeed, instead of using the tools that can.
El Constructor lo decide desde la respuesta de acceso a datos
Say the platform has an API and it declares native_api and emits the passthrough. Say it has none (bridge mode, or the "Platform with no API" profile) and it declares platform_bridge instead and strips native_api, so the two can never both be true. You no longer hand-edit this.
Los paquetes autorizados por las manos deben tener la razón
Si usted está escribiendo el manifiesto, declarar exactamente uno de nativo_api o plataforma_bridge. Conformance trata la plataforma_puente como el escape que captura un conector puente se espera tener, y el Builder rechaza una especie que reclama plataforma_bar en un conector API _.
Mantenga ai_api_reference. md honesto de cualquier manera
On a connector that declares native_api the admin brain heads that file with a line naming <slug>_api_call. Without native_api it is headed neutrally instead, so a bridge connector no longer advertises a tool it does not have. Describe your real surface — for a bridge, that is your op and do vocabulary, not a REST endpoint table.
Enséñale al cerebro del administrador sobre tu plataforma
Declare ai_brain_aware and ship two Markdown files. They are read from the INSTALLED package directory (opsiq/connectors/<slug>/) for ENABLED connectors only, and injected into the admin agent's system prompt.
ai_expertise_admin. md
Lo que esta plataforma ES, cómo se moldean sus datos, cuáles son sus objetos y los quirks que de otra manera harían adivinar al asistente. Escríbelo para un colega competente que nunca ha visto la plataforma.
ai_api_reference. md
Para un conector de puente, esta es su opcion y hacer vocabulario con sus parámetros, no una tabla de puntas REST.
Presupuesto
Roughly6,000caracteres mantenidos por conector, y sobre24,000caracteres para todo el bloque a través de cada conector habilitado. Sobre la tapa per-connector su archivo está truncado; ser conciso antes que el truncador es.
Pagos por decisión
Estos archivos son la diferencia entre el asistente que utiliza sus herramientas de mesa universal y contestando desde la sección equivocada porque nada le dijo que esas herramientas existían.
💡
Ambos archivos deben estar en el paquete INSTALLED, no sólo su árbol fuente. Son archivos de paquetes ordinarios, por lo que están cubiertos por la firma y enviados en el ZIP —lo cual también significa editar uno después de firmar rompe el sello. Re-sign.
Conectores
Identidad a través de un conector: admin, cliente, portal
Un contrato de firma sirve tres superficies. El trabajo del conector es convertir "quien está conectado en la plataforma" en un token firmadoOpsIQpuede verificar, y luego presentar el sujeto verificado enOpsIQ's forma. El conector nunca autentifica a nadie — la plataforma lo hace, y la firma lleva esa afirmación.
Las tres superficies, un letrero
Admin — su personal, dentro de su backend
El widget se carga dentro del panel de administración de la plataforma y cada miembro del personal es igual a su propioOpsIQAgente. Avanzado completo en la página del widget de administración.
Cliente — un cliente firmado, en chat de clientes
Un sujeto de cliente. Esto es lo que permite a un cliente conectado obtener su cuenta TODO en lugar de una búsqueda anónima: cada pedido, detalle completo y cualquier acción de autoservicio que usted permita.
Portal: un profundo vínculo en el portal de soporte
Las mismas afirmaciones más jti y single_use, con un120- segunda vida, porque el token viaja en unaURLy debe ser gastado una vez. No se lance a mano: Configuración, Portal de soporte lleva un snippet listo por idioma, y la plataforma lo miente para usted cuando el área de cuenta se ejecuta en este servidor.
El contrato de carga útil
Estas son las reclamaciones que verifican los verificadores. Nada aquí es opcional, sea cual sea un ejemplo parcial en otro lugar podría sugerir.
site_key
Nivel superior. Debe igualar la clave del sitio de la solicitud, o se rechaza el token.
iat y exp
Nivel superior, unix segundos. exp debe estar en el futuro y después de la inactividad. Se rechaza una señal más de un minuto en el porvenir. Mantenga la vida corta — minutos a horas.
autenticado: verdadero
Nivel superior, junto a la exp. La afirmación de su plataforma que un humano real está conectado.
plataforma
Nivel superior. Un corto bazo que nombra el origen. Recomendado, y permite al proveedor de identidad del conector decir sus propios tokens de otra plataforma.
admin o cliente
Un objeto que nombra al sujeto. Debe llevar un id no vacío, y un nombre de usuario o un correo electrónico: la puerta de acceso per-admin coincide con ellos. Incluya ambos cuando usted tiene ambos.
OpsIQtiene dos verificadores de token, y no eran idénticos. Saber esto te salva una tarde, porque el síntoma no se parece a la causa.
El widget de administración tiene su propio verificador
opsiq/embed/admin_ajax. php lleva un verificador local que acepta la bandera autenticada en cualquier posición. Lista de conversación, historia y sin leer todo pasan por ella, así que autentifican bien.
El verificador compartido es más estricto
opsiq/includes/customer_identity_token_verify.php se encuentra detrás del stream de chat y el núcleo AJAXAPI. Históricamente requería la bandera en el nivel TOP.
El síntoma
Historia y conversaciones funcionan. Cada chat da la respuesta "Se requiere acceso a los clientes". Lee exactamente como un fallo de sesión y no es: el token está perdiendo la bandera de primer nivel.
Qué núcleo actual hace
Ahora acepta la bandera en el nivel superior O dentro del sujeto, por lo que el contrato es uniforme. Los núcleos más antiguos leen sólo el nivel de arriba. Emitir la forma canónica y su paquete funciona en cada liberación.
✅
Esto es comprobado a máquina ahora. Cualquier archivo en su paquete que mints fichas de identidad se escanea estadísticamente contra el contrato, y una carga útil la plataforma rechazaría fallas conformidad con el archivo exacto y línea. Ejecutarlo: php tools/verify_identity_contracts. php.
Clientes registrados en chat cliente
Dos cosas tienen que ser ciertas. Core debe sellar al cliente verificado, y su conector debe presentarlo.
1
Tu puente o punto final miente un cliente token
El mismo firmante que el administrador, con un sujeto de cliente. Lea al cliente desde la propia sesión de la plataforma. Si su plataforma muestra a los clientes en una guardia diferente de los administradores, lea el guardián que desea y nunca se cae sobre temas — así es como un cliente sería entregado un token de administración.
2
Core lo verifica y sella
En un token válido, el tema verificado se bloquea en la sesión. Su proveedor lee una identidad probada; nunca autentica.
3
Su IdentidadProvider lo presenta
detectCustomer() devuelve elOpsIQdebe implementarOpsIQ\Platform\IdentityProviderInterface, o el registro silenciosamente lo salta — la misma trampa que el proveedor de contexto.
4
Sus acciones con el sistema de cliente aceptan un cliente_id
Y OpsIQ lo bloquea a la identidad verificada antes de ejecutarlo. El modelo no puede suministrarla.
IdentidadProvider.php — leer la identidad probada, presentarla enOpsIQ's shape
use OpsIQ\Platform\IdentityProviderInterface;
final class IdentityProvider implements IdentityProviderInterface
{
public function slug(): string { return 'yourplatform_identity'; }
public function label(): string { return 'Your Platform identity (bridge-signed identity_token)'; }
public function priority(): int { return 25; } // ahead of the generic session provider
public function isAvailable(): bool
{
try {
$s = \OpsIQ\Connectors\ConnectorRegistry::getSettings('yourplatform') ?: [];
return trim((string)($s['base_url'] ?? '')) !== '';
} catch (\Throwable $e) { return false; }
}
public function detectAdmin(): ?array
{
$row = $this->sessionRowFor('_opsiq_admin_identity');
if (!$row || !$this->isOurs($row)) return null;
return [
'id' => (int)($row['id'] ?? 0),
'name' => $this->displayName($row, 'Admin'),
'email' => (string)($row['email'] ?? ''),
'username' => (string)($row['username'] ?? ''),
'role' => (string)($row['role'] ?? ''),
'platform' => 'yourplatform',
'source' => 'yourplatform_identity_token',
];
}
public function detectCustomer(): ?array
{
$row = $this->sessionRowFor('_opsiq_customer_identity');
if (!$row || !$this->isOurs($row)) return null;
return [
'id' => (int)($row['id'] ?? 0),
'name' => $this->displayName($row, 'Customer'),
'email' => (string)($row['email'] ?? ''),
'phone' => (string)($row['phone'] ?? ''),
'platform' => 'yourplatform',
'source' => 'yourplatform_identity_token',
];
}
/* A session identity stamped by ANOTHER platform's token must not be
* claimed here. An empty platform is accepted because older bridges did
* not stamp one, and the site key already scoped the token. */
private function isOurs(array $row): bool
{
$p = strtolower(trim((string)($row['platform'] ?? '')));
return $p === '' || $p === 'yourplatform' || $p === 'remote';
}
private function sessionRowFor(string $key): ?array
{
if (session_status() !== PHP_SESSION_ACTIVE) return null;
$row = $_SESSION[$key] ?? null;
return (is_array($row) && (int)($row['id'] ?? 0) > 0) ? $row : null;
}
}
Acciones con el cliente: dos cerraduras, ambas necesarias
El modelo nunca debe elegir los datos que lee.OpsIQHace cumplir eso a su lado, y su plataforma debe ejecutarlo en el otro lado también. Una cerradura es un error lejos de una fuga; dos bloqueos son un contrato.
Cerradura1 — OpsIQsobreescribir los parámetros de identidad
Antes de que se ejecute una acción cliente-chat,OpsIQreemplaza cada parámetro en forma de identidad con la identidad del visitante VERIFIED: client_id, clientid, user_id , user _id, account_id to the verified numeric id; client_identifier, customer_dentifier, account/identifier take it as a string; email, cliente_email, customer _email y user_e mail take the verified email.What the model proposed is discarded.
Cerradura2— su plataforma re-scopios cada consulta
Tome el id que le dieron y agreguelo a la cláusula WHERE de cada lectura y cada escritura en esa superficie. Nunca confíe en la referencia en su propia solicitud. Un cliente firmado preguntando por el orden de alguien más debe volver vacío, no prohibido.
Name your parameters so lock 1 can find them
Llámalo cliente_id, no cust o ref. Un parámetroOpsIQno reconoce es un parámetro que no puede bloquear.
⚠️
Give the signed-in customer surface its OWN operations, separate from the admin ones, even when the SQL looks similar. Two surfaces with different rules stay honest; one surface with a flag becomes a leak the day someone edits the wrong branch.
Cierre de página cero: la sonda declarada por conector
You can spare the operator all page wiring. Add an admin_identity_probe_url setting (https only) pointing at your identity endpoint. The plain admin-widget loader from Remote Sites, Codes then works with no page attributes at all: the widget discovers the endpoint through the connector, calls it with the site key and widget token, and authenticates each admin individually. A page can still override with a data-identity-endpoint attribute or window.OpsIQAdminIdentityEndpoint.
settings.json — el ajuste de la sonda
{
"key": "admin_identity_probe_url",
"label": "Admin identity probe URL",
"type": "text",
"placeholder": "https://your-site.com/opsiq-yourplatform-bridge.php?op=admin_identity",
"help": "Set this to your bridge admin_identity endpoint and the plain admin-widget loader works with NO page wiring: the widget probes this URL by itself, the bridge answers with the signed identity of the CURRENTLY logged-in admin, and every admin is matched to their own OpsIQ agent. Leave empty to keep the admin embed off."
}
La sonda es llamada por el navegador
El mismo origen, por lo que no puede llevar un encabezado personalizado. Su autenticación es la sesión de plataforma. Ponlo AHEAD de su puerta de puente-key, manténgalo alejado de los datos del registro, y no devuelve nada para un visitante registrado.
Responde a una forma fija
{"success":true,"authenticated":true,"admin":{...},"identity_token":"..."} — and {"success":false,"authenticated":false,"error":"..."} when nobody is signed in.
No hay secretos de larga vida en la fuente de página
Sólo el token firmado y expiatorio.
Las implementaciones completas para Laravel,WordPress, WHMCS, Symfony y PHP liso, además de los detalles de la Laravel duro y el orden de solución de problemas, están en la página widget admin. Son el mismo código para un sujeto cliente: cambiar la guardia que lee y la clave del tema que firma.
Conectores
Publicación: edición de la carpeta no está publicando
La forma más común de perder una tarde es editar un conector bajo marketplace_connectors/, reinstalarlo y no encontrar nada cambiado. Los instaladores no leen esa carpeta. Ellos sacan un ZIP firmado del catálogo de mercado. Publicar es la secuencia que pone sus cambios en ese ZIP.
¿Por qué la edición no hizo nada
marketplace_connectors/<slug>/ is the SOURCE
Es donde trabajas, nada se instala de ella.
El catálogo tiene un ZIP firmado
Una descarga de instalación que ZIP, verifica la firma y lo desempaqueta. Hasta que reconstruya el ZIP cada instalación sigue recibiendo el paquete antiguo.
El Constructor de Conector publica en otro lugar
It writes into /connectors/<slug>/ on this install. That is a local connector, not a marketplace release. The two paths do not overlap.
La secuencia de liberación
1
Bump la versión en archivos TWO
Ajustes.jsony connector_contract.json. Conformance los compara y falla si el fragmento, la versión o la capacidad se ponen en desacuerdo. Agregue una entrada CHANGELOG.md mientras usted está allí — es un archivo requerido.
2
Re-sincronizar el puente de la snippet
php tools/sync_connector_bridge_snippets.php --apply — only relevant if your package ships bridge/*.php, and mandatory if it does. Skipping it means the panel hands operators the previous bridge.
3
Re-signar cada paquete
php tools/resign_all_connectors. php — la firma cubre los hashes de archivos, por lo que CUALQUIER editar invalida. Firme último, después de que cada archivo sea final.
4
Exportar la clave de firma, luego semilla
El visor muestra cada paquete a medida que construye el ZIP, y se ejecuta en un contexto donde la clave no puede ser leída desde los ajustes — por lo que debe venir del medio ambiente.
5
Redistribuir el archivo del puente, si usted envía uno
Reinstalar el conector actualiza el paquete. NO toca la copia sentada en la webroot del operador. Dígales, en el panel y en el changelog.
Toda la liberación, en orden
# 2 — hold the panel copy identical to the shipped bridge
php tools/sync_connector_bridge_snippets.php --apply
# 3 — re-sign (do this last, after every file is final)
php tools/resign_all_connectors.php
# 4 — the seeder reads the signing key from the ENVIRONMENT only
export OPSIQ_CONNECTOR_SIGNING_KEY="$(php -r 'require "bootstrap/init.php"; echo opsiq_setting("connector_signing_key","");')"
php saas/scripts/maint/seed_marketplace_free.php --apply --only=<slug>
# verify before and after
php tools/verify_identity_contracts.php
php vendor/bin/phpunit tests/phpunit/Unit/Connectors
⚠️
Por qué la exportación no es opcional: el signer busca la clave en OPSIQ_CONNECTOR_SIGNING_KEY primero y el conector_signing_key setting segundo. El visor se ejecuta en el bootstrap de SaaS y las herramientas/sign_connector.php botas nada en absoluto, así que tanto en el lector de ajustes no existe — sin variable ambiente no hay ninguna clave, y usted consigue "No hay herramientas de firma del paquete disponible"OpsIQy puede encontrar la llave por su cuenta.
¿Qué naves de verdad?
Sólo ficheros la firma cubre
El ZIP está construido desde la lista de archivos del propio firmante, por lo que un archivo callejero sentado en su carpeta de paquete no se envía. Eso es deliberado: un archivo sin firmar utilizado para viajar a los clientes.
Extensiones cubiertas
Php,json, js ,css, md, txt,html, sh, svg, png, jpg, jpeg, gif, webp, ico, yml, yaml — recursivamente, incluyendo puente/ y pruebas /. firma.jsonpor sí mismo está excluido de los hashes y luego se añade al ZIP para que las instalaciones puedan verificar.
Cualquier otra cosa se reporta como no_paqueted
El verdugo nombra cada archivo que dejó atrás. Lea esa lista. Un archivo que esperaba enviar aparece allí significa una extensión incorrecta o un lugar incorrecto — no un éxito silencioso.
Edición de cualquier archivo cubierto rompe el sello
Incluyendo un archivo de Markdown. Re-signar ese paquete.
Archivos obligatorios en un paquete distributable
connector.php
Debe devolver una instancia de ConnectorInterface.
Contrato legible por máquina. Su conjunto de la función, versión y capacidad debe ser idéntico a los ajustes.json.
README. md, DEVELOPER. mD, CHANGELOG. m
Los tres son revisados para la existencia Y tamaño mínimo. DEVELOPER. md necesita contenido real, no un problema.
Un archivo por capacidad declarada
Cada capacidad denomina el archivo que espera — ContextProvider. php para contexto, IdentityProviders. phpa para identidad, GuestLookupProvidr. phP para guest_lookup y así sucesivamente— a menos que el conector implemente la capacidad en línea.
Nada que parezca una credencial
Conformance escanea los tres archivos Markdown para valores en forma secreta y claves privadas, y falla en un éxito.
Compruébalo antes de enviarlo.
La suite de conformación completa es la misma que se ejecuta una instalación. Chequea el manifiesto contra el contrato canónico, que las capacidades de ejecución y manifestación coinciden, que cada capacidad declarada tiene su archivo y sus métodos, el contrato de identificación en cada archivo de mención, el partido puente-snippet, la higiene del cliente-lookup permitido, la unidad de acción y seguridad de confirmación, y la firma del paquete.
Corre los cuatro antes de cada lanzamiento
# conformance for every marketplace package
php tools/test_marketplace_connector_conformance.php
# the identity-token contract, statically, with file:line on failure
php tools/verify_identity_contracts.php
# the connector unit suite
php vendor/bin/phpunit tests/phpunit/Unit/Connectors
# the release gate
php tools/release_gate_connectors.php
💡
Se espera un fallo y no es un problema: el cheque de firma del paquete reporta una advertencia mientras todavía está editando. Limpia el momento en que vuelve a firmar. Cada otro fracaso es real.
Conectores
Paquete de conectores y referencia del ciclo de vida
Este es el contrato a nivel de código fuente para crear un conector que OpsIQ puede descubrir, configurar, validar, habilitar, ejecutar, probar, firmar y distribuir.
Referencia para desarrolladoresUn paquete de conector tiene una implementación y un manifiesto del conector requeridos, con acciones opcionales, recetas, conocimientos, recursos y metadatos de firma.
settings.json Utiliza la versión de manifiesto 1. El validador espera un slug, nombre, versión, manifest_version, compatibilidad, descripción y capacidades. opsiq_min y opsiq_maxEl estado de liberación es uno de los production, beta, vista previa o templateLos paquetes antiguos pueden normalizarse con advertencias, pero un nuevo paquete debería pasar sin advertencia alguna.
Interfaz del conector de la base
Identidad y configuración: slug(), name(), description(), capabilities(), settingsSchema(), testConnection().
Ciclo de vida: onEnable() y onDisable()La desactivación debe ser no destructiva; la purga de datos es una operación deliberada separada.
Entrada / sincronización: handleWebhook(), poll(), backfill()Poll maneja el trabajo incremental; backfill importa la historia y debe ser seguro para repetir.
Soporte: pushReply() donde la plataforma acepta respuestas.
Medidas: registerActions() Suministra contratos de acción ejecutable.
La base abstracta también ofrece relleno opcional en trozos, listado de clientes, descubrimiento/creación de cuentas de correo electrónico, suscriptores, detección de administrador/cliente, proveedores de facturación/contexto/identidad, extracción de respuestas, reintento de llamadas HTTP, acceso a ruta JSON, clasificación difusa y ayudantes de paginación.
Capacidades y autenticación
Los nombres de las capacidades admitidas incluyen acciones, desencadenadores, contexto, identidad, ventas, facturación, inbound_ticket, outbound_reply, sincronización_usuarios, sync_departments, eventos_de_seguridad, customer_import, bloque_nativo_de-seguridade, promo_audience, feed_promocional, correo_electrónico, native_api, ai_brain_aware y ai_tickets. API clave, portador, básico, HMAC,OAuth 2credenciales del cliente,OAuth 2Código de autorización y plantillas de autenticación personalizadas.
Ciclo de vida del registro
Discovery carga el paquete y valida su manifiesto.
La configuración se almacena por espacio de trabajo; los secretos están cifrados.
La prueba de conexión comprueba las credenciales sin habilitar el conector.
Habilitar las llamadas onEnable(), sincroniza las definiciones de acción y puede iniciar el relleno inicial.
La ejecución de sondeo/webhook/suscriptor siempre lleva el contexto del espacio de trabajo.
Desactivar las llamadas onDisable() y detiene la actividad sin eliminar los datos importados.
Purgar es una operación explícita separada.
Reglas de corrección
Usa la clave de espacio de trabajo/sitio en cada lectura, escritura, clave de caché, claves de deduplicación y búsqueda de webhook.
Registre un ID externo/ID de evento siempre que la plataforma lo proporcione, y luego utilice el mismo para cada una de las acciones.
Para sistemas remotos, utilice suAPI; nunca asuma sus tablas de bases de datos existen enOpsIQconexión.
Nunca exponga secretos, rastros de proveedores sin procesar ni la existencia de otro espacio de trabajo.
Declara solo las capacidades que el paquete realmente implementa. actions.json El catálogo no hace una acción utilizable hasta que el conector está instalado, habilitado, configurado y su conexión es válida.
Pruebas y lanzamiento
Ejecuta PHP lint, validación de manifiesto, pruebas de conexión, prueba de esquema de acción, prueba para firmar/reproducir webhook, prueba del aislamiento del espacio de trabajo, prueba backfill-repeat, prueba disabled-connector y prueba error/reintentar. Un paquete de marketplace debe estar firmado y verificado, incluir la documentación de configuración/permisos/webhook e indicar su verdadero estado de publicación.
Conectores
Recetas de conector
Recetas paso a paso para configuraciones de conectores comunes.
RecetasCada receta es una lista de verificación que sigues arriba a abajo, aquí, Shopify con los juegos web en tiempo real verificados por un pedido de prueba.
Receta: Shopify con webhooks en tiempo real
Escenario:
Goal: Connect Shopify with automatic order sync and GDPR compliance.
Qué hacer:
1. Create a custom app in Shopify admin (Settings > Apps > Develop apps).
2. Grant scopes: read_orders, read_customers, read_products, write_customers.
3. Copy the Admin API access token.
4. In OpsIQ Connectors > Shopify, enter store domain and token.
5. Click Test Connection.
6. Enable Webhook sync, OpsIQ registers order/customer webhooks automatically.
7. GDPR webhooks register automatically (data_request, customers/redact, shop/redact).
8. Verify: place a test order, check it appears in OpsIQ Sales within 30 seconds.
Receta: WHMCS integración
Escenario:
Goal: Connect WHMCS so AI can look up clients, services, tickets, and invoices.
Qué hacer:
1. In WHMCS admin, Setup > Staff Management > Manage API Credentials. Create a key.
2. In OpsIQ Connectors > WHMCS, enter URL, API identifier, and secret.
3. Click Test Connection.
4. Install the WHMCS module addon for ticket relay.
5. Verify: ask the admin AI "Find client [email protected]". WHMCS data should appear.
Receta: Pagos de Stripe
Escenario:
Goal: Track Stripe payments and let AI look up transactions.
Qué hacer:
1. In Stripe Dashboard > Developers > API keys, create a restricted key (read: Customers, Charges, Invoices, Subscriptions).
2. In OpsIQ Connectors > Stripe, enter the restricted key.
3. Test Connection.
4. Add webhook endpoint in Stripe: copy the webhook URL shown on the connector's
own settings page. It carries a per-connector token and looks like
https://your-domain.com/api/connectors.php?slug=stripe&token=THE_TOKEN
A URL without the token is rejected with "Missing slug or token".
5. Select events: charge.succeeded, invoice.paid, customer.subscription.updated.
6. Copy the webhook signing secret to OpsIQ.
7. Verify: make a test payment, check it in OpsIQ Sales.
Receta: Perfil de Negocio en Google
Escenario:
Goal: Connect GBP for review management, posts, and insights.
Qué hacer:
1. Create a Google Cloud project, enable Business Profile API.
2. Create OAuth 2.0 credentials (Web application).
3. Set redirect URI: copy it from the connector's own settings page. Google and
Microsoft connectors share one slug-less callback:
https://your-domain.com/connectors.php?oauth=callback
Everything else uses https://your-domain.com/connectors.php?slug=<slug>&oauth=callback
OAuth redirect URIs must match EXACTLY, and a URI missing oauth=callback is read
as a webhook and answered with "Missing slug or token".
4. In OpsIQ, enter Client ID and Client Secret.
5. Click Authorize, sign in, grant access.
6. Select your business location.
7. Verify: reviews, posts, and insights should appear.
Conectores
Extienda el CRM y la inteligencia del sitio
OpsIQ subsistemas están abiertos para la extensión. Un conector puede conectar una nueva capacidad en el CRM o Site Intelligence sin cambios a OpsIQ núcleo, a través del registro de la capacidad de plataforma (\OpsIQ\Platform\CapabilityRegistry). Declarar la capacidad, implementar su pequeño conjunto de métodos, enviar el conector,OpsIQ lo descubre y lo conecta a la interfaz de usuario, el cliente 360 timeline y los avisos de instalación.
Extender CRM y SIUn conector declara capacidades (calendario, enriquecimiento, datos de rango, análisis...) y OpsIQ auto-los lleva a CRM y Site Intelligence, sin cambios de núcleo.
Declarar capacidades
Declarativo (configuración.json)
Añadir un comentario <domain>_capabilities array, mejor para conectores sin código/mercado. crm, site_intelligence.
En código (connector. php)
Aplicación crmCapabilities() / siCapabilities() Devolver los mismos descriptores.
Declarar un proveedor de calendario CRM (settings.json)
Escenario:
Goal: make a calendar connector appear in the CRM Schedule-meeting panel.
createEvent($settings,$params) → {success,id_evento,enlace_html,enllaz_de_reunión}; listEvents; freeBusy. Impulsado por \OpsIQ\CRM\CalendarBridge.
CRM / enriquecimiento
enrich($settings,$params) → {success,traits}. Impulsado por \OpsIQ\CRM\EnrichmentBridge (también se ejecuta automáticamente en la creación de compañía cuando un proveedor está conectado).
CRM / Gestión de la calidad
sendForSignature($settings,$params) → {success,envelope_id,sign_url}. Desarrollado por \OpsIQ\CRM\EsignBridge.
Sitio de inteligencia / local_listing
listLocations, listReviews, getInsights. Se envía a través del conector de Google Business Profile.
Sitio de inteligencia / Rank_Data
keywordRanks($settings,$params) → {success,ranks}. Impulsado por \OpsIQ\SiteIntelligence\RankDataBridge. Enviados: conector SerpApi.
Analítica web / analítica_web
report($settings,$params) (sincronización / exportación) + ingest($settings,$events) (importación). Conducido por \OpsIQ\Analytics\WebAnalíticaBridge. Naves: Google Analytics (GA4) conector. Datos API para informes, Protocolo de Medición para importación. Análisis está abierto para conectores como CRM + Inteligencia del Sitio (dominio analytics / analytics_capabilities).
Pagos / Proveedor de pago
listPayments, customerPayments, createPaymentLink. Conducido por \OpsIQ\Pagos\PaymentsBridge. Mostrar los pagos de un cliente en elCRMtimeline + enviar un enlace de pago en un acuerdo.StripeConector de pagos. payments / payments_capabilities.
Buzón de correo / email_sync
listMessages + sendMessage. Conducido por \OpsIQ\Mailbox\Mail boxBridge. Los correos electrónicos del cliente en el Cliente 360 timeline + enviar correo electrónico de un acuerdo. Se envía: Gmail + Outlook/Microsoft 365 conectores. mailbox / mailbox_capabilities.
Aplicación compartida OAuth + UNA redirección
Todos los conectores de Google comparten ONE app via \OpsIQ\OAuth\SharedGoogleApp. Set google_oauth_client_id/_secret una vez y Calendario, Análisis, Perfil de Negocios + Gmail todos los campos de trabajo (los campos "(opcional)" son anulaciones). También comparten ONE redirección URI, <site>/connectors.php?oauth=callback (no per-connector slug), porque Google expone no API a) Añadiendo redirección de URIs a una aplicación; OpsIQ recupera el conector de la firma OAuth state Registra ese único URI una vez y cada conector de Google (presente + futuro) autoriza sin más configuración en la consola. Return SharedGoogleApp::resolve(...)’s redirect_uri Desde tu casa oauthParams()Los conectores de Microsoft hacen lo mismo a través de \, pero no se puede hacer esto en el código.OpsIQ\OAuth\SharedMicrosoftApp (Aplicación compartida de Microsoft)microsoft_oauth_*).
Los botones de importación están limitados por capacidades
El Importación (relleno histórico) y Clientes de importación Los botones muestran SOLO para conectores que realmente los implementan, detectados por reflexión, así que no hay bandera que declarar. backfill() o backfillChunk() Para ganar el botón Importar; sobrescribir listCustomers() (volver {email, first_name, …} páginas) para ganar clientes de importación. Heredar el AbstractConnector no-op y el botón permanece oculto, por lo que la IU nunca ofrece una importación que un conector no puede realizar.
IA en todos los autobuses
El agente de CRM propone y publica reuniones fuera de las señales del acuerdo (\OpsIQ\CRM\MeetingProposer → CalendarBridge), y auto-enriquece nuevas cuentas, la "AI opera el bucle CRM", ejecutado en autobuses conectores.
Búsqueda de tickets en el chat del cliente (fetchTicket())
Dos niveles, sin cambios básicos
Cuando un visitante hace referencia a un número de ticket en el chat del cliente ("¿cuál es el estado de T-000123?"), OpsIQ Lo resuelve en dos niveles. Nivel 1 lee la tienda compartida OpsIQ _, cada conector con inbound_ticket El cliente refleja sus tickets allí, por lo que los tickets sincronizados solo funcionan para TODOS los conectores con cero código por conector. Nivel 2 Este es un fallback en vivo para tickets VIEJOS que nunca fueron reflejados: llamadas de núcleo OPCIONAL fetchTicket() En cada conector habilitado que lo implementa. Es duck-typed (descubierto por method_exists(), como contextProviders()/audienceCatalog()), por lo que el firmado ConnectorInterface El conector no está tocado y los conectores que no lo necesitan (fuentes de correo electrónico/chat que crean tickets nativamente) simplemente lo omiten.
⚠️
La propiedad es obligatoria y usted debe hacerla cumplir. fetchTicket() Recibe la identidad VERIFICACIÓN del visitante en $ctx (client_id + client_email, la misma identidad verificada que utiliza el chat cliente AI). Resuelva al cliente de la plataforma de esa identidad y consulta SOLAMENTE que los boletos del cliente, luego vuelva a comprobar la propiedad en el registro de detalles. null en cualquier falta, desajuste o error, nunca los datos de otro cliente. null se degrada con gracia a "no pude encontrar ese boleto".
connector.php, el contrato fetchTicket() (referencia: conectores/whmcs y conectores/zendesk)
<?php
// connector.php — OPTIONAL universal client-chat ticket resolver (Tier 2).
// Only add it if your platform keeps its OWN ticket store that may hold tickets
// not yet mirrored into OpsIQ. Return the normalised array below, or null.
//
// $ref = ['mode' => 'id'|'tid', 'value' => string] (from extract_ticket_ref)
// $ctx = ['client_id' => int, 'client_email' => string] (VERIFIED visitor)
// $settings = your connector settings
public function fetchTicket(array $ref, array $ctx, array $settings): ?array
{
try {
$email = trim((string)($ctx['client_email'] ?? ''));
$cid = (int)($ctx['client_id'] ?? 0);
if ($cid <= 0 && $email === '') return null; // no verified identity → refuse
// 1) Resolve THIS visitor on your platform (by verified email/id).
// 2) List ONLY their tickets and match $ref against the ticket number/id.
// 3) Re-confirm ownership on the detail record before returning.
// On any miss/mismatch/error → return null (never leak).
return [
'tid' => 'T-000123', // the customer-facing reference
'id' => 123, // your internal id
'status' => 'open',
'subject' => '…',
'department' => 'Billing', // '' if your platform has none
'priority' => 'high',
'opened_at' => '2026-06-29 10:00:00',
'last_reply' => '2026-06-29 12:00:00',
'message' => 'opening message text',
'replies' => [ // oldest → newest; opening message may be first
['who' => 'You', 'date' => '…', 'message' => '…'],
['who' => 'Staff', 'date' => '…', 'message' => '…'],
],
];
} catch (\Throwable $e) {
error_log('[yourslug][fetchTicket] ' . $e->getMessage());
return null; // graceful degrade
}
}
Cómo la utiliza la plataforma
Descubrimiento
CapabilityRegistry::providers($domain,$type) muestra los proveedores con el estado instalado/habilitado/listo (basado en sistemas de archivos; DB solo para la bandera habilitada).
Selección
CapabilityRegistry::active($domain,$type) devuelve al primer proveedor listo con su conector cargado y configuración. Los puentes llaman a esto en lugar de los fragmentos de codificación dura.
Notificar para instalar
Cuando una característica necesita una capacidad que no está conectada todavía, la interfaz de usuario muestra un solo clic Connect/Install prompt, nunca un control muerto.
Guía completa
Ver connectors/PLATFORM_CONNECTORS.md (CRM + Inteligencia del Sitio) y connectors/CRM_CONNECTORS.md En el paquete.
Conectores
Búsquedas y reembolsos de autoservicio del cliente (crea tu conector para el chat del cliente)
Signed-in customers can ask the customer chat AI about their OWN account ("my balance", "my orders", "did support answer my ticket") and, if the business enables it, request refunds. All of it is powered by YOUR connector's declarations: no OpsIQ core changes, no platform hardcoding. The AI calls your lookups as native tools (it cannot invent one), identity is locked server-side to the verified customer, and results are automatically trimmed for the AI.
Declarar una búsqueda de cliente
En tu casa actions.json, una acción de solo lectura se convierte en llamada por el cliente con TODOS LOS TRES: "scope":"client", "requires_confirmation":false, "is_destructive":false. Uso "scope":"both" cuando la misma búsqueda también debe ser llamada por su equipo en el Admin AI. El vocabulario completo es admin, client, both y system (system no llega a ninguna inteligencia artificialAPIcualquier otra cosa es rechazada directamente: la validación del paquete falla y la acción no se instala. No hay ningún writing alcance - el asistente de escritura se sirve admin conjunto de acción.
La regla de identidad (obligatorio)
Nombre el parámetro de identidad del conjunto estándar. Encerrado a la id numérica verificada: client_id, clientid, customer_id, user_id, userid, account_idEncerrado a ese id como una cuerda: client_identifier, customer_identifier, account_identifier. Encerrado al correo electrónico verificado: email, client_email, customer_email, user_emailOpsIQ bloquea y rellena automáticamente el nombre del cliente que ha iniciado sesión en la plataforma; la IA nunca ve ni elige la identidad. Un nombre no estándar falla al cerrarse (se deniega, nunca se filtra).
Lo que debe permanecer solo para administradores
Cualquier cosa que no esté dentro del ámbito de esa identidad: fetch-by-bare-id (order_id/ticket_id solos), listas de tiendas, búsquedas de texto libre. Esas son filtraciones de carga cruzada en cualquier plataforma. "scope":"admin".
Efecto de la formación (claves de alcantarillado)
Los resultados de la búsqueda son estructuralmente recortados antes de llegar a la IA: se eliminan las teclas en forma secreta, se caen largas cadenas y listas, los campos en blanco se podan, y un mapa plano más ancho que el gorro clave mantiene su las teclas de respuesta primero, dinero (credit, balance, amount, total, due, paid), identidad (email, *name, phone, company), estado (status, active, expir*, renew*), fechas, campos de plan/producto/dominio/servicio/suscripción/orden/invocación/tiborto, moneda, conteos y stats/summary/totals, antes de que cualquier asiento restante vaya a otras teclas más pequeñas-valor-primero. Orientación práctica: nombre sus campos con ese vocabulario estándar y devolver los campos que responden a la pregunta del cliente en lugar de un vertedero de plataforma 100_-key crudo; un campo llamado fuera del vocabulario compite para los asientos sobrantes y puede ser recortado desde cargas muy amplias.
Reembolsos · lo que su conector proporciona
Dos operaciones sin procesar, libres de políticas: (1) una lectura de verificación de pago filtrable por identidad Y una referencia de transacción (su API Debe Y los filtros), p. ej. whmcs_get_transactions; (2) una acción de ejecución de reembolso (scope:"admin", requires_confirmation:true, is_destructive:true, nunca expuesto al cliente), por ejemplo. whmcs_refund_orderLa empresa elige ambas claves en Configuración → Chat del cliente; OpsIQ vuelve a verificar el lado del servidor de pago, aplica la casilla de política de la empresa (tope de cantidad, ventana de edad, límite mensual), problemas dentro de la caja y archiva un ticket de revisión para todo lo demás.
Enrutamiento por Departamento según el Destinatario
El editor de acciones del generador de conectores tiene los mismos controles: establece "Quién puede usarlo" en Clientes que han iniciado sesión, deja desactivadas ambas casillas de verificación de escritura y usa un nombre de parámetro de identidad estándar.
Implementaciones de referencia
Las entradas de "Autoservicio del cliente" en connectors/whmcs/actions.json, woocommerce/actions.json, oscommerce/actions.json; contrato completo en connectors/README.md §8.1–8.2 y ConnectorInterface::registerActions().
Conectores
Buscador de invitados — permite que los visitantes rastreen una reserva, envío o pedido SIN firmar en (guest_lookup)
Hoteles, correos y muchas plataformas comerciales sirven a clientes que tienen una referencia pero no se accede: un huésped con confirmación de reserva, un destinatario con un número de seguimiento. guest_lookup la capacidad (Contrato Connector, modo: generado) permite que SU conector sirva a los visitantes en el chat cliente AI — noOpsIQcambios de núcleo, sin codificación de plataformas. Su conector declara QUÉ prueba el derecho y los campos WHICH son visibles;OpsIQimpone los interruptores, el acelerador y la negación uniforme.
El modelo de confianza
Referencia + prueba, nunca identidad
El visitante suministra la referencia record (acoplada por el regex que declara) más la prueba que eliges, normalmente el correo electrónico en el registro. Su acción de captura recupera el registro SERVER-SIDE por referencia; OpsIQ_ el proveedor generado compara la prueba con el registro FETCHED. La entrada del visitante nunca se confía y no se crea ninguna identidad verificada: el partido da derecho al visitante a ese campo único, nada permitido.
Niegue uniforme (sin oráculo de enumeración)
La IA está explícitamente instruida para confirmar si existe una referencia y nunca inventar detalles de registro. Los intentos están limitados por tasa por conversación + IP por núcleo antes de que se consulte a su conector.
Doble opción, ambos por defecto OFF
Nada sirve a los huéspedes hasta que el negocio permite conmutadores BOTH: el control de espacio-tarea en Ajustes→Seguridad→"Buscar registros de clientes en chat cliente" (permiso y siempre confirmado por contraseña, incluso cuando se ha apagado el paso opcional), y su propio conector guest_lookup_enabled configuración de la red. Instalar o habilitar un conector solo nunca abre la superficie del huésped.
La superficie de invitados dedicada
El proveedor generado registra en los guest de la superficie del contexto, estructuralmente separada admin y customer. Los proveedores de contexto existentes nunca son consultados para visitantes anónimos, y el proveedor invitado nunca es consultado por los firmados en uno. El ctx que recibe lleva el mensaje de chat, el hilo id y el correo electrónico pre-chat del visitante afirmado (sinverificado) como candidato a prueba — no campos de identidad.
Declarándolo en el Constructor
1
Definir la acción de la hembra
En el paso Acciones, agregue una acción sólo de lectura que devuelve UN registro por su referencia (por ejemplo. GET /bookings/{booking_number}) y mapea sus campos de respuesta con alias: estado, llegada, salida, room_type, customer_email...
2
Tick "Guest lookups"
En el paso de la capacidad, guest_lookup. Aparece un panel dedicado: elegir la acción de embrague, nombrar el parámetro referencia, dar el patrón de referencia (un cuerpo regex como \bBK-[0-9]{4,10}\b), nombre el registro ("reserva") y seleccione la prueba — correo electrónico en el registro (recomendado) o ninguno (referencia sola, para seguimiento de mensajería únicamente).
3
Permitir los campos visibles
Todo lo demás es DROPPED — nunca redactó. El Builder rechaza los campos en forma de PII (email, teléfono, dirección, pago...) en el persista y la suite de conformidad de puerta de lanzamiento re-checks la misma regla antes de publicar, por lo que una espectaculo hecha a mano no puede colarse uno en. Tenga en cuenta que la validación de tiempo de instalación cubre el manifiesto y la firma sólo se muestra, así que ejecutar la propiamente.
4
Publish and enable
El Constructor emite GuestLookupProvider.php — la aplicación canónica endurecida, idéntica para cada paquete generado— y añade el guest_lookup_enabled el negocio arma los dos interruptores y la chat AI comienza a ofrecer la apariencia cuando un visitante pregunta sobre su tipo de registro.
Reglas de contrato
Campos en forma de estado únicamente
Piense "qué sería una impresión de mensajería en la página de seguimiento público": estado, fechas, categoría de habitación o servicio, cuenta. Nombres, datos de contacto, direcciones callejeras, información de pago y notas de texto libre no tienen lugar en un chat anónimo — el Constructor y la conformidad ambos los rechazan.
La AI responde SOLAMENTE desde el bloque
El proveedor generado termina su salida con una instrucción para responder sólo de los campos enumerados y ofrecer un ticket para cualquier otra cosa. Detalle no en el permitido es "no disponible en chat" — por diseño.
Los seguimientos siguen funcionando
El proveedor re-derives la referencia de los mensajes recientes del visitante en la misma conversación, así que "y cuándo es el check-out?" funciona sin volver a escribir la referencia. La referencia y el correo electrónico de prueba coinciden se recuerdan en el hilo de chat como CANDIDATES, por lo que las medidas de seguimiento no vuelven a montarse. Son sólo candidatos: cada vuelta todavía vuelve a crear el lado del servidor registrado y vuelve a completar un campo único antes de liberación.
Paquetes autorizados a mano
Un paquete de mercado puede enviar su propio GuestLookupProvider.php implementing ContextProviderInterface con surfaces(): ['guest']. Seguir el contrato de la plantilla generada exactamente — buscar por referencia, lado del servidor de prueba-match, negar uniforme, salida sólo para listas de permisos— y declarar guest_lookup in capabilities. Conformance verifica la superficie de invitados y escanea el perímetro para PII.
💡
Los buscadores de invitados son contextos sólo leídos para el chat AI. Nunca ejecutan acciones, nunca crean identidades y nunca desbloquean la ruta de acción del cliente autoservicio arriba — ese camino todavía requiere un cliente firmado-en-en plataforma.
Conectores
Segmentación de audiencia de promoción (promo_audience)
Let the Promotion Studio target campaigns by LIVE client and billing state from YOUR platform: "has an unpaid invoice", "order pending", "subscription cancelled". Any connector (pre-installed, marketplace, or one you build yourself) joins by implementing two small methods. No OpsIQ core changes, no platform hardcoding: your connector appears as a platform in the studio Targeting tab with its own dropdown of facts, and several connectors can be enabled side by side.
Audiencia de promociónSu conector responde a los hechos de facturación en vivo para el visitante conectado; el estudio se dirige hacia ellos, y falla cerrado por lo que una oferta de facturas nunca llega a la persona equivocada.
Cómo funciona
1
Declare sus hechos
Implementa audienceCatalog() en tu clase de conector. Devuelve una etiqueta y la lista de claves que puede responder tu plataforma, cada una de las cuales aparece en el menú desplegable del estudio debajo del nombre de tu plataforma.
2
Respuesta para un cliente
Implement audienceFlags(array $identity). OpsIQ calls it at delivery time with the VERIFIED logged-in visitor identity (from the widget identity token, the same identity the client chat AI uses). Return a flat key => value map.
3
Hecho
En la pestaña Targeting de Promotion Studio se crea una sección "Cliente y facturación" en la que aparece tu plataforma; los administradores pueden crear reglas como "facturas_no_pagadas >= 1"; cada hecho también se convierte en una variable de personalización como {unpaid_invoices}.
conector. php, el contrato promo_audience completo
Añadir 'promo_audience' A tu conector capabilities() La matriz preinstalada para que la plataforma y el mercado lo listan como capaz de audiencia (el descubrimiento también funciona desde la presencia del método, pero declararlo es la señal limpia). connectors/whmcs El conector es la implementación de referencia completa.
Nombramiento de claves
Minúsculas snake_case, 2-60 Las claves no declaradas devueltas por audienceFlags() todavía se pueden utilizar en las reglas, pero debes declarar todo lo que admites para que los administradores puedan verlo.
La identidad se verifica
The $identity array comes from the signed widget identity token issued by the customer site at login, never from client-supplied fields. If your platform cannot resolve the identity, return an empty array.
Cerrado en el velo · siempre
En cualquier error (API down, client not found, timeout) devuelve []. Una regla cuyo hecho falte hace que la campaña NO se muestre. Un popup dirigido a facturación nunca debe llegar a la persona equivocada; OpsIQ Esto también se aplica en el emparejador de reglas.
Rendimiento
La función audienceFlags() se llama como máximo una vez por conector y vista de página, y SOLO cuando una campaña publicada utiliza realmente las reglas de tu plataforma. Los visitantes anónimos no te cuestan nada en llamadas. 1-2 API llamadas; OpsIQ Memoizes dentro de la solicitud.
Operadores proporcionados de forma gratuita
Los administradores combinan tus teclas con =, !=, √≥, нелит=, se establece, está vacío, sólo proporciona valores.
Tokens de personalización
Cada hecho se duplica como una variable en el texto de la campaña: {unpaid_invoices}, {client_status}, además de los componentes incorporados. {first_name} and {client_email}. Los valores se desinfectan antes del procesamiento.
Conectores de mercado sin código
Hechos automáticos
Declarative (JSON Los conectores de marketplace obtienen promo_audience GRATIS: si su conector declara recursos de clientes/usuarios, facturas, pedidos o suscripciones, OpsIQ Deriva customer_status, unpaid_invoices, amount_due, pending_orders, active_subscriptions y subscription_status de tus acciones de búsqueda existentes.
Catálogo personalizado (settings.json)
Añadir un objeto de audiencia_capacidades · {"bel": "Mi Plataforma", "keys": [{"key": 'open_carts', "label" : "libros abiertos", "tipo":"numerario"}]}, para controlar exactamente qué hechos (y etiquetas) aparecen en el estudio desplegable.
Prueba de tu proveedor
1
Habilitar el conector
Conector √≥ tu conector нели Enable. A continuación, abre la pestaña de destino de cualquier campaña. Su plataforma debe aparecer bajo "Client & billing (connectors)".
2
Crear una regla
Añade: Tu plataforma · una clave · >= · 1 y establece "Solo clientes conectados". Guarda y publica.
3
Verificar ambas direcciones
Inicie sesión en su plataforma como cliente que coincide con la regla (el pop-up debe mostrarse) y como uno que no lo hace (el popup debe permanecer oculto).
Desencadenamiento de una campaña desde su propio código (desencadenador personalizado)
¿Por qué?
Más allá de los desencadenantes incorporados (desviar, desplazamiento, salida-intent, ocioso, clic, páginas vistas, chat / actividad de ticket), puede disparar una campaña desde cualquier lugar en su sitio o conexión frontal, después de un paso exitoso de checkout, cuando se abandona un carrito, cuando su SPA cambia la ruta, etc.
¿Cómo?
Establecer el desencadenador de la campaña en Personalizado con un nombre de evento (p. ej. checkout_failed), luego llama al gancho global desde tu página:
Crear un sitio web / conector front-end JS
// Any campaign whose Custom trigger event matches will be evaluated
// (it still respects targeting, frequency caps and audience rules).
window.OpsIQPromo && window.OpsIQPromo.fire('checkout_failed');
💡
Firing an event never bypasses targeting or frequency. It only releases the “when”. La campaña todavía tiene que pasar cada regla (geo, audiencia, consentimiento, caps) antes de que se muestre.
✅
La guía completa de cómo usar (diseño, bloques, análisis, A/B, publicación) está en el Centro de ayuda dentro de la aplicación bajo Engage → Promoción Estudio. La capacidad aquí se descubre automáticamente desde cualquier conector ENABLED en conectores/ o marketplace_connectors/. No hay nada que registrarse. Envíe los dos métodos y el estudio hace el resto.
Conectores
Capacidad de conector de encuesta (Contrato 2.2)
El survey Esta capacidad permite a cualquier plataforma suministrar adaptadores de identidad del cliente verificados, datos sobre la audiencia, variables seguras y candidatos de destinatarios a Survey Studio. promo_audience y no otorga a un conector la propiedad de las encuestas, respuestas, análisis o entrega de correo electrónico.
💡
La creación está completa y utilizable hoy: Contrato de conector 2.2, SurveyConnectorInterface, el panel de Constructor dedicado, generado SurveyProvider.php, los metadatos del paquete y el aislamiento de conformidad de todo el buque. SurveyConnectorRegistry Se implementa y se prueba, pero ningún tiempo de ejecución de Survey lo llama todavía, por lo que el estado del proveedor no aparece en la interfaz de usuario de administración y ningún paquete de conector publicado declara la capacidad. La emisión de tokens firmados de Gateway de identidad de Survey, la orientación y la integración variable, la materialización de CRM Outreach y las primeras asignaciones de proveedores enviadas siguen siendo fases separadas. Compile ahora este contrato; espere que el tiempo de ejecutar comience a consumirlo en una versión posterior.
Responsabilidades del proveedor
Catálogo de audiencia y datos
Los hechos típicos incluyen order_count, last_order_status, canceled_order _count, customer_created_at, active_subscription_count y open_ticket_count. Los datos canónicos son los que se utilizan para determinar si un cliente ha recibido una factura o no.
Catálogo de variables y valores
Declare variables de cliente, cuenta, pedido, suscripción y soporte con el tipo, la sensibilidad y el contexto permitido. La copia de encuesta requiere fallbacks y escapes de contexto de salida.
Paginación de destinatarios
Opcionalmente, enumera candidatos para el alcance de CRM con ID externos estables, páginas limitadas, cursores deterministas y metadatos relacionados con el consentimiento.
Identidad
Solo acepta identidades de Survey Identity Gateway después de la firma del token, el vencimiento, el propósito, el conector y la verificación del espacio de trabajo. El correo electrónico, ID, etiquetas o datos de facturación proporcionados por el navegador nunca son autorizados.
Salud en tiempo de ejecución
SurveyConnectorRegistry está diseñado para informar de proveedores compatibles, bloqueados y no disponibles sin exponer configuraciones, rutas, identidades en bruto o mensajes de excepción. Un proveedor bloqueado nunca se puede invocar. La superficie de informes aún no está expuesta en la interfaz de usuario de administración: hoy un proveedor bloqueada es simplemente inerte.
Reglas de cierre por fallo
Se rechazan las claves no declaradas, los tipos incorrectos, los valores de gran tamaño, las incompatibilidades entre temas, los tiempos de espera del conector y las identidades desconocidas. Una regla de orientación que necesite un hecho no disponible no coincide. Las páginas destinatarias se limitan y auditan.
Puerta de liberación del constructor
Contrato 2.2 envía la entrada de registro de capacidad, interfaz, panel de mapeo de encuestas, generado SurveyProvider.php, versión de la función, README/referencia del desarrollador y accesorios de conformidad. Los perfiles PHP locales, el puente SaaS, los perfiles de comercio y helpdesk lo incluyen; los conectores estándar API optan por participar.
💡
La copia de la promoción es solo para importación: el creador puede traducir las asignaciones compatibles de la Promoción una vez, guardar una copia completa que sea propiedad del cuestionario y registrar la procedencia.
Conectores
Capacidad de respuesta (Contracto 2.2)
El reply_feedback La capacidad refleja las propias calificaciones por respuesta de una plataforma en OpsIQ. Una estrella un cliente da una respuesta del personal dentro WHMCS El área del cliente de's aterriza en la MISMA respuesta en el.OpsIQ Hilo de administración, con el mismo chip, crédito del agente, entrada en la página de comentarios y cálculo de equipo y rendimiento como una calificación dada en un.OpsIQ Un almacenamiento, un chip y una canalización; el conector solo traduce.
La ruta de escritura única
Hay exactamente dos rutas de entrada y una verdad. OpsIQ Los tickets del portal escriben nativamente, los tickets de la plataforma fluyen a través del conector y el núcleo aterrizará cada evento vía ReplyFeedback::recordMirrored(): las mismas columnas, regla de sólo personal, semántica de un solo golpe por último, sello del espacio de trabajo y Voz del cliente indexando el portal escribe usos. Un conector nunca escribe filas de retroalimentación en sí mismo.
Conformidad (cuatro archivos, luego volver a firmar)
1
connector_contract.json
Añade la entrada capabilities. reply_feedback: versión 1.0, el ReplyFeedbackConnectorInterface, los métodos replyFeed backCatalog y pullReplyFeedBack, implica inbound_ticket.
2
settings.json
Añadir reply_feedback a la lista de capacidades. Esto es lo que el descubrimiento del conector lee.
3
spec.json
Declare reply_feedback. modes (poll and/or webhook) y la escala de calificación de la plataforma. Esto es lo que lee la puerta de conformación.
4
Clase de tiempo de ejecución
Implemente la interfaz, liste reply_feedback en capabilities(), y luego vuelva a firmar el paquete.
Responsabilidades del proveedor
Catálogo
Declarar modos, la propia escala de calificación de la plataforma (el núcleo se normaliza al 1-5), y cualquier token de reacción. El catálogo debe estar de acuerdo con las especificaciones.json.
Traducción de Pull
pullReplyFeedback devuelve eventos canónicos: ticket de plataforma id, respuesta de la plataforma ide, calificación, reacción opcional / compromiso, tiempo presentado y un event_id estable. Lee y traduce. Nunca escribe.
Idempotencia
event_id es estable por feedback STATE, así que un evento repetido no se puede ejecutar y una calificación cambiada sobrescribe (las últimas victorias, como el portal).
Disciplina del cursor
Las páginas están delimitadas y son deterministas; un cursor que no avanza termina la ejecución, el relleno histórico se drena como una ventana rodante, nunca en un tirón gigante.
Seguridad de la sonda
Sin configuración, devuelve una página completa vacía en lugar de lanzar. Las sondas de corredor conformaciones con argumentos vacíos.
Resolución de cierre por fallo
El núcleo resuelve cada evento a una respuesta local por el marcador de réplica que la réplica del ticket ya estampa (<slug>:<ticket>:reply:<reply>). Un evento que no puede resolverse se retira, nunca se adivina; la retroalimentación sólo se adjunta a las respuestas del personal; y el crédito de agente siempre viene del autor existente de la respuesta. inbound_ticket o ticket_mirror.
Ejemplo de trabajo: WHMCS
WHMCS almacena las calificaciones de estrellas por respuesta en el área del cliente tblticketreplies.rating. The WHMCS El conector declara el modo de sondeo con un. 1-5 Escala, barcos a ticket_reply_ratings El comando relay en su archivo de puente, y traduce cada fila a un evento cuyos ids coinciden con los whmcs:<ticket>:reply:<reply> Después de actualizar el conector, vuelva a copiar el archivo del puente al servidor WHMCS para que el nuevo comando exista allí.
💡
Contrato completo de desarrollador con la interfaz, formas de eventos, reglas de normalización y lista de verificación de conformidad: doc/contracts/TICKET_REPLY_FEEDBACK_CAPABILITY.md en el OpsIQ Aceptación: calificar una respuesta dentro de la plataforma, esperar a la encuesta horaria y la misma respuesta en.OpsIQ La pantalla muestra el chip, la página de comentarios lo enumera y un evento repetido no cambia nada.
Conectores
Mercado de conectores
El Marketplace le permite descubrir, instalar y publicar conectores creados por la comunidad.
MercadoBusque conectores comunitarios, instale en un clic o firme y publique sus propios tiers preinstalados y de mercado tanto disponibles.
Buscar e instalar conectores
1
Navegar
Vaya a Conectores > Marketplace. Busque por nombre, categoría o plataforma.
2
Examen
Compruebe la descripción, las acciones admitidas y las calificaciones.
3
Instalar
El paquete del conector se descarga e instala en el directorio marketplace_connectors/.
4
Configurar
Habilite en Conectores, ingrese las credenciales API y pruebe.
Publicar un conector
1
Construir y probar
Utilice el generador de conectores. Verifique que todas las acciones funcionan.
2
Paquete
Generar el perfil.json, acciones.json, knowledge.json, y archivos PHP.
3
Firmar
Run php tools/sign_connector.php <slug> to sign ONE package (it also accepts a path). It does not boot OpsIQ, so give it the key: either --key=<secret> or the OPSIQ_CONNECTOR_SIGNING_KEY environment variable, otherwise it stops with "No signing key available". tools/resign_all_connectors.php re-signs EVERY package on the install and reads the key from settings by itself, but it can also mint a NEW install-wide signing key, so reach for it only when that is what you want.
4
Enviar
Sube a través del flujo de envío del mercado para su revisión.
Dos niveles de conector
conectores/ — lo que realmente funciona
La raíz de descubrimiento en tiempo de ejecución. Todo aquí es en directo: los conectores que envían con OpsIQ, cualquier cosa instalada desde el mercado, y todo lo que el Constructor de conexión publica en esta instalación.
marketplace_connectors/ — donde se autorizan los paquetes
La publicación SOURCE para paquetes de primer mercado. No es una raíz de descubrimiento: nada aquí está vivo hasta que se empaqueta, firma, sembra en el catálogo e instalado, en cuyo punto una copia aterriza en los conectores/.
💡
Mira en ambos lugares. Un paquete que autorizó bajo marketplace_connectors/ no es la copia que funciona — instalando copias en conectores /, y sólo esa copia se descubre a tiempo de ejecución.Stripe, BigCommerce, Magento2, PrestaShop, OpenCart, Amazon SES, Postmark y Resend son todos los paquetes de mercado: instalar uno antes de esperar encontrarlo en Connectors.
Desarrollador
API y el constructor de webhook
El API y Webhook Builder le permite crear personalizado API endpoints y escuchas webhook dentro OpsIQ sin escribir PHP.
API constructorConstruir puntos finales sin PHP crudo: elegir un disparador (enlace web, horario, evento o manual), luego mapear campos a una acción.
Activadores
Evento
Correr cuando algo pasa en. OpsIQ, o cuando un sistema externo publica un evento coincidente en su webhook. URL. Escriba el nombre del evento, por ejemplo ticket.created.
Calendario
Utilice uno de los eventos de intervalo incorporados como nombre del evento: cron. minutely, cron. hourly o cron. daily La pantalla Acciones y desencadenadores tiene botones para estos, por lo que no tiene que recordarlos.
Frase
Ejecutar cuando un administrador lo pide a la IA en lenguaje sencillo Añadir la frase que debe coincidir, por ejemplo encontrar cliente.
Webhook de entrada
Un sistema externo envía un HTTP POST a su. OpsIQ webhook URL Cualquier desencadenador que esté escuchando ese evento se activará.
Solo ejecútelo a veces: condiciones
Un desencadenador de evento puede contener condiciones, por lo que solo se ejecuta cuando los datos entrantes coinciden; sin condiciones, se ejecute cada vez que se dispara el evento.
Campo
Una ruta de acceso a los datos del evento. Utilice un punto para valores anidados, por ejemplo customer. email.
Coincidir todo o cualquiera
Elija si todas las reglas deben coincidir o solo una de ellas.
Pruebas de texto
Igual, no es igual, contiene, no contiene, comienza con, es uno de, no está entre los siguientes:
Pruebas de números
Los números escritos como texto se comparan correctamente, pero no se pueden modificar.
Pruebas de presencia
Está presente, está ausente, está vacío, no está blanco.
Solo haga una página al ingeniero de guardia para tickets urgentes
Escenario:
Event ticket.created, with one rule: priority equals urgent.
Qué hacer:
La acción se ejecuta para los tickets urgentes y se omite para todo lo demás, sin necesidad de filtrar.
💡
Si deja las reglas en blanco, el disparador se ejecutará en cada evento coincidente, que es el mismo comportamiento que antes de que existieran condiciones.
Medidas
Enviar webhook
Envía HTTP POST a un URL externo con una carga personalizada.
Crear ticket
Crear un ticket de soporte con el departamento especificado, asunto y mensaje.
Enviar correo electrónico
Envía un correo electrónico con una plantilla personalizada.
Actualizar el registro
Actualice un registro de cliente, ticket o CRM.
Ejecutar acción de conector
Ejecute una acción registrada desde un conector habilitado con sus reglas de permiso y confirmación del conector.
Run OpsIQ Generales de la Segunda Guerra Mundial API Acción
Buscar el nombre completo General API Los campos, ámbitos, permisos, confirmación, idempotencia y compatibilidad con pruebas provienen del contrato de acción en vivo; el flujo de trabajo se ejecuta dentro de su espacio de trabajo guardado y contexto de administrador.
Enviar solicitud provider-native API
Use un conector Native API Read o confirmed Native _API Write action cuando el endpoint del proveedor no tiene ninguna acción curada. Las credenciales permanecen dentro del conector y solo se aceptan las rutas de acceso relativas al proveedor.
✅
El constructor de acciones y desencadenadores, /api/v1.php, OpenAPI y Postman usan el mismo ActionContractRegistry, por lo que una acción seleccionable no puede derivar de la documentación en tiempo de ejecución.
Desarrollador
Libro de cocina Triggers
Recetas de acciones activadoras listas para usar para automatizaciones comunes.
Cómo funcionaLibro de cocina Triggers
Creación automática de tickets desde la monitorización
Escenario:
Monitoring system sends POST when server goes down.
Slack message every time a customer places an order over $100.
Qué hacer:
Trigger: Event (order.completed)
Condition: order.amount > 100
Action: Send webhook to Slack incoming webhook URL with order details
Correo electrónico de resumen semanal
Escenario:
Summary email to management every Monday at 9am.
Qué hacer:
Trigger: Schedule (Monday 09:00)
Action: Send email with last week's stats pulled from the REST API
Escalar tickets obsoletos
Escenario:
If a ticket has no reply for 24 hours, assign to team lead.
Qué hacer:
Trigger: Schedule (every hour)
Condition: ticket.status = "Open" AND ticket.last_reply_age > 86400
Action: Assign to team-lead, add internal note
Desarrollador
Creando tu primera acción
Este tutorial crea una acción de conector simple desde cero.
Acciones de construcciónConstruir una acción desde cero. Nombrarlo, establecer el método y punto de finalización, declarar los params escritos, y probarlo a un vivo 200_.
Dos tipos de acción
Antes de empezar, decida cuál necesita, ya que ambos se configuran en la misma pantalla.
Llame a un API externo
La acción envía una solicitud HTTP a tu plataforma. Elige esta opción cuando OpsIQ necesite hacer algo por ti.
Ejecutar una acción de conector
La acción ejecuta algo que ya proporciona un conector instalado. Elige esto cuando el trabajo ya está disponible y solo quieres activarlo. Elige la acción del conector de una lista, por lo que no hay nada que conectar.
✅
La segunda opción es cómo reutilizar todo lo que ya pueden hacer los conectores sin tener que crear nada de nuevo: leer un hilo de ticket, buscar a un cliente, importar contactos, etc. Seleccione la acción del conector en el menú desplegable y listo.
1
Planea la acción
Ejemplo: "lookup_product". Buscar un producto por nombre, precio de retorno, stock y descripción.
Tres cosas que hacen una acción no se registran en absoluto. action_id es REQUIRED y debe ser2a100caracteres de letras minúsculas, dígitos y subrayados – una entrada sin uno es rechazada por completo. El manifiesto es un objeto con un LIST "acciones", no un mapa clavedo por el nombre de la acción. Y la asignación de respuestas es "retornos" con caminos DOTTED (data.id), no JSONPath ($.dat.id) — no hay "response_mapping", "metodo", "parar" en ningún sitio web
3
Prueba con prueba en seco
En el paso de revisión del Constructor Conectador, presione Correr seco. Funciona la lista de verificación completa de conformidad contra su paquete y, cuando usted ha suministrado credenciales, hace una prueba real de conexión. No utiliza datos de muestra.
4
Verificar el uso de IA
Pregunta a la IA del administrador: "Buscar producto Widget Pro" La IA debe encontrar y ejecutar la acción.
⚠️
Agregar una acción a las acciones.jsonNO crea una ruta AJAX, por lo que no hay nada para regenerar. Acciones de conexión se sincronizan enOpsIQcuando el conector está habilitado o se guardan sus ajustes: volver a guardar el conector y aparece la nueva acción. tools/gen_route_registry.php cubre el envío de administrador AJAX y no tiene ningún efecto en las acciones del conector.
Desarrollador
Endpoints de eventos entrantes
Los endpoints de entrada aceptan JSON firmado desde otro sistema y lo convierten en actividad de contacto desduplicada que puede alimentar líneas de tiempo, puntuación y flujos de trabajo.
Pantalla de productoCada fuente entrante tiene su propio URL, secreto, mapeado y resultado de actividad reciente.
Cree una fuente por sistema de envío. OpsIQ genera un URL/token y secreto. Enviar JSON con Content-Type: application/json y firmar el cuerpo bruto exacto usando HMAC-SHA256:
X-OpsIQ-Inbound-Signature: sha256=<hex hmac>
Asignación de rutas JSON para el correo electrónico del contacto, nombre del evento y ID de evento opcional. El ID de eventos es la clave de deduplicación preferida. La actividad aceptada entra en la línea de tiempo del contacto y puede afectar a la puntuación de clientes potenciales, segmentos, reglas del ciclo de vida y flujos de trabajo.
Rotar un secreto actualizando ambos lados dentro de una ventana controlada; no registrar el secreto, ya que se puede rotar en cualquier momento.
Desarrollador
Operaciones de webhook salientes
La administración de webhook saliente crea suscripciones firmadas, prueba los puntos finales y supervisa la entrega asíncrona y el estado del reintento.
Pantalla de productoLa página de webhook saliente muestra los puntos finales HTTPS, las suscripciones a eventos, el estado de entrega y una prueba firmada con un solo clic.
Los administradores completos crean un punto final HTTPS, eligen eventos específicos o el comodín, almacenan el secreto de forma segura y envían una prueba. OpsIQ firma la carga útil sin procesar con HMAC-SHA256:
X-OpsIQ-Signature: sha256=<hex hmac>
La entrega es asíncrona y se reintenta automáticamente después de aproximadamente 10 minutos. 1minuto, 5 minutos, 30 minutos,2horas y 12 HorasUtilice el riel de entrega reciente para inspeccionar el estado, código de respuesta y recuento de intentos.
El receptor debe ser idempotente porque cualquier sistema asíncrono puede volver a enviar y devolver una respuesta 2xx solo después de la aceptación duradera.
Desarrollador
Webhooks
Los webhooks permiten que los sistemas externos notifiquen OpsIQ Cuando algo sucede (entrada), y deje que OpsIQ Notificar a los sistemas externos cuando algo sucede internamente (salida).
WebhooksLa pantalla real outbound-webhooks: cada punto final con sus eventos, salud de entrega reciente y un clic Enviar prueba, firmado y retrigado.
Webhooks de salida
Suscripción
Vaya a Configuración > Webhooks. Agregue un punto final URL y seleccione los eventos que desea recibir.
Las entregas fallidas se reintentan con retroceso exponencial. Después de 15 Si se producen fallas consecutivas, el endpoint se deshabilita automáticamente.
Firma
Cada solicitud incluye una firma HMAC en X-OpsIQ-Signature. Siempre verifique.
Protección de SSRF
OpsIQ No se enviará a privado/interno IPs (127.x, 10.x, 172.16.x, 192.168.x, 169.254.169.254).
Entrega asincrónica
Los webhooks se entregan a través de la cola de trabajos, sin bloquear las operaciones OpsIQ.
ID de evento estable
Cada evento tiene un event_id único que permanece igual en los intentos de deduplicación.
Usa ngrok para exponer tu servidor local. Establece el punto final del webhook en tu ngrok URL.
¿Qué ocurre si mi endpoint está temporalmente inactivo?+
OpsIQ reintentos con retroceso exponencial: si el endpoint se recupera dentro de la ventana de reintento, no se pierden eventos.
Desarrollador
Claves de API
API Las claves autentican las solicitudes al. OpsIQ REST API. Cada clave tiene permisos de ámbito.
Claves de APILa pantalla de claves API real: emite una llave amplia, sólo lectura o restringida al escoger los alcances exactos y revocar cualquier tecla en cualquier momento.
Creación de una clave API
1
Ve a Configuración > API Teclas
Navegue a la administración de claves API.
2
Haga clic en Crear clave
Dale un nombre descriptivo.
3
Seleccionar ámbitos
Los ámbitos vienen en pares de lectura y escritura por área, así que una integración de informes puede concederse solo para leer y nada más.
Ámbitos disponibles
Elige el conjunto más estrecho que haga el trabajo. admin El dominio satisface todos los ámbitos a continuación, así que úselo solo cuando realmente necesite un acceso amplio.
crm. read / crm
Contactos, empresas, ofertas, actividades, segmentos, alcance, conversiones, ciclo de vida y webhooks CRM.
tickets. read / tickets. write
Enumerar y leer tickets y sus mensajes; responder, actualizar, abrir y ejecutar operaciones de cola masivas.
Conversaciones. leer / conversaciones. escribir
Lea conversaciones de chat en vivo y el historial de mensajes; enviar mensajes, asignar y cambiar estado.
kb. read / kb. write
Entradas de la base de conocimientos.
Chat. read / chat. write
Plantillas de respuesta guardadas.
connectors.read
Vea qué conectores están instalados, lo que pueden hacer y pruebe sus credenciales.
automations.read
Vea sus acciones, desencadenadores y su historial de ejecución.
departments.read
Departamentos disponibles para enrutamiento.
notifications.read
Notificaciones para un operador con nombre.
analytics.read
Secciones de informes, exportaciones CSV y definiciones de informe programadas.
Sitio de inteligencia.
Sitios monitorizados y sus informes SEO.
files.read
Enlaces de descarga firmados para los archivos adjuntos.
status.write
Componentes e incidentes de la página de estado.
writing
Ayudantes de escritura con IA: redactar, resumir, traducir, reescribir, componer, analizar.
administrador
Todo, incluyendo un pequeño número de acciones sensibles que son deliberadamente no alcanzables por ningún alcance estrecho: borrar un contacto, cambiar la configuración de privacidad y leer el registro de acceso.
💡
Llame a meta. actions con su clave para ver exactamente qué acciones puede ejecutar en su instalación, lo cual siempre es más confiable que trabajar desde una lista.
Niveles de acceso
Todo
La clave puede llamar a cualquier cosa que sus alcances permitan.
Solo lectura
Se rechaza toda escritura, independientemente de lo que digan los ámbitos. La opción más segura para informes, paneles y cualquier cosa que nunca debería cambiar datos.
Restringido
Se enumeran las acciones exactas que puede llamar la tecla, cualquier otra acción se rechaza, incluso dentro de un ámbito permitido.
4
Copiar la clave
Se muestra una vez. Comienza con "opq_". Guárdelo de forma segura.
🚫
Nunca compartir API Claves en código público, lado cliente JavaScript, o control de versiones. Use variables de entorno.
Desarrollador
Conecta tu sitio web
The OpsIQ El widget es un. JavaScript Un fragmento de código que agregas a tu sitio web para el seguimiento, chat con IA, creación de tickets e identificación del cliente.
No. Bajo 15 KB gzipped, carga asincrónico después del contenido de la página.
¿Puedo personalizar la apariencia?+
Use data-color para el color primario. Póngase en contacto con soporte técnico para las opciones de anulación CSS.
Desarrollador
Widget instalar recetas
Guías de instalación específicas para plataforma.
Cómo funcionaInstalar recetas
WordPress
Escenario:
Add to all pages of a WordPress site.
Qué hacer:
Option 1: Edit theme footer.php, paste snippet before </body>.
Option 2: Use "Insert Headers and Footers" plugin > Scripts in Footer.
Option 3: Use a child theme footer.php to survive theme updates.
Shopify
Escenario:
Add to your Shopify store.
Qué hacer:
Online Store > Themes > Edit Code > Layout > theme.liquid. Paste before </body>. Save.
React / Next. js
Escenario:
Add to a React or Next.js app.
Qué hacer:
In Next.js, use next/script in app/layout.tsx:
import Script from "next/script";
<Script src="https://your-opsiq.com/widget.php" data-site-key="site_abc" strategy="lazyOnload" />
WHMCS
Escenario:
Add to your WHMCS client area.
Qué hacer:
Configuración > General Settings (Configuración general) > Other (Otro) > Global Footer Content (Contenido global del pie de página). Pegue el fragmento.
Google Tag Manager
Escenario:
Add via GTM.
Qué hacer:
Crear etiqueta personalizada HTML, pegar fragmento. Activador: Todas las páginas. Publicar.
Desarrollador
widget de administrador en su backend (un contrato, cualquier plataforma)
Embed the OpsIQ admin assistant — admin chat, ticket inbox and AI Writing — inside YOUR OWN platform's admin panel, so your team never leaves their tools. Like visitor identity and portal SSO, this is ONE generic contract implemented in ~15 lines of your platform's server code — the same pattern Zendesk, Intercom and Discourse use for SSO. There is no per-platform plugin to wait for: any stack that can compute an HMAC can do this today.
Paso 1 — la línea de la incrustación
Desde Sitios remotos→su sitio→Códigos, copiar la línea de carga y añadirla a las páginas del panel de administración (incluidos los pies, plantilla de diseño o una caja solo para administración personalizada-JS):
Paso2- Díselo.OpsIQquién está conectado (señal del servidor)
Sólo SU aplicación sabe en qué administrador está firmado - que no es un corto, es el modelo de seguridad. Su servidor genera una ficha firmada de corta duración desde su propia sesión, exactamente como la señal de identidad del visitante, firmada con el mismo sitio webhook secreto:
PHP · firma la identidad de administrador en tu sesión
<?php
$secret = "opsiq_whsec_your_site_secret"; // Remote Sites → Codes
$payload = json_encode([
"site_key" => "SITE_KEY",
"iat" => time(),
"exp" => time() + 6 * 3600,
"authenticated" => true, // REQUIRED, top level — see note below
"platform" => "your-platform",
"admin" => [
"id" => (string)$admin->id, // from YOUR session
"name" => $admin->name,
"username" => $admin->username,
"email" => $admin->email,
"role" => $admin->role,
"authenticated" => true,
],
]);
$payload64 = rtrim(strtr(base64_encode($payload), "+/", "-_"), "=");
$identityToken = $payload64 . "." . hash_hmac("sha256", $payload64, $secret);
// Put $identityToken into the embed line (identity_token=…), or expose it as
// window.OpsIQAdminIdentityToken before the loader script.
Acceso por amino, automáticamente
Cada administrador que entra en su plataforma se combina individualmente:OpsIQ's per-admin access gate resolve the token's username + email against oneOpsIQagente (página del equipo; utilice la lista de "emails principales" del agente cuando los correos electrónicos de la plataforma difieren) y aplica permisos de espacio de trabajo, departamento e bandeja de entrada de ese agente.OpsIQ; no hay cambios en la incrustación.
Paseos en roles a lo largo de
Cualquiera que sea la cadena de papel que envía su plataforma se muestra en elOpsIQlado para la atribución; autorización siempre viene delOpsIQagente record, nunca del papel afirmado.
¿Por qué no leemos nuestra cookie de inicio?
Los navegadores nunca envían su cookie de administrador a otro origen — ningún proveedor puede "sólo detectar" el dominio cruzado de inicio. Cada producto serio resuelve esto de la misma manera: su servidor vouches, firmado. Ese es todo el contrato.
Modo simple (tiendas de memoria única)
Paso2y utilizar el token estático de sitios remotos→Códigos en la línea de carga (token=... en lugar de identity_token =...). El widget funciona con la identidad compartida del espacio de trabajo; la puerta per-admin puede permanecer ejecutada más adelante cuando el equipo crece.
El authenticated bandera - ponerlo en el nivel TOP
Esta bandera es la afirmación de su servidor que un humano está conectado y OpsIQ se niega a cualquier token sin ella. "authenticated" => true beside site_key/iat/exp, NO sólo dentro de admin actual OpsIQ acepta en cualquier posición, pero las versiones anteriores sólo leen el nivel superior - y el fracaso es engañoso: lista de conversaciones, historia e irrevisible todo autenticado fino mientras cada chat da respuestas "Se requiere acceso a la memoria", que parece un error de sesión y no lo es. Si ves exactamente esa división, compruebe esta bandera primero.
Higiene de las piezas
Firme en el servidor solamente, nunca en el navegadorJavaScript. Mantener la exposición corta (minutos a horas);OpsIQrechaza los tokens vencidos y actualizados por el futuro, y la firma une la señal a su clave del sitio.
Implementaciones de referencia
ElWHMCSmódulo hace esto automáticamente desde elWHMCSsesión de administración; el archivo puente del conector Botble Hotel lo hace desde la sesión Laravel (op=admin_identity). Ambos son sólo este contrato en el dialecto de su plataforma — copia que lee más cerca de su pila.
Cierre de página cero (sonda declarada por conector)
Cuando su conector OpsIQ almacena su punto de referencia de identidad en su admin_identity_probe_url configuración, la línea de carga PLAIN es toda su página de administración necesita: el widget descubre la sonda del conector, lo llama con tu token de sitio + widge y autentica cada administrador automáticamente. La página puede anularse con un data-identity-endpoint atributo o window.OpsIQAdminIdentityEndpoint.
Implementación del punto final de identidad en Laravel (notas difíciles)
Si su plataforma es Laravel (Botble, Bagisto, aplicaciones personalizadas) y su punto final es un archivo independiente que arranca el marco para leer el administrador conectado, tres detalles le ahorrarán horas — cada uno produjo una falla de producción real antes de aprender:
Cumplir la solicitud de arranque antes de la salida
Sus proveedores de servicios pueden resolver request del contenedor durante el arranque. El propio ciclo de vida de Laravel ata la solicitud capturada primera cosa dentro Kernel::handle() - espejo de ese orden: $app->instance('request', Request::capture()) ANTES $kernel->bootstrap(), o te dan "La clase de sargento [la conquista] no existe".
El prefijo de la sesión es HMAC_
Modern Laravel prefixes cookie values with an HMAC computed WITH THE APP KEY (CookieValuePrefix) - Una llanura sha1(name."v2") nunca puede igualar. CookieValuePrefix::validate($name, $decrypted, $keys), con un retroceso estructural40hex chars + | a la posición40). Decir: una sesión id más largo que40chars (81= prefijo todavía apegado) y una sesión que carga con sólo _token dentro.
Donde vive el login
El sello de auth es login_<guard>_<sha1(guard class)> — para el guarda web predeterminado: 'login_web_' . sha1(Illuminate\Auth\SessionGuard::class). Escanear cualquier login_* llave numérica como un retroceso para guardias personalizados.
Debug como el puente hace
Navega a debug=1 Modo que nombra el STEP fallido y la excepción — un bloqueo ciego hizo una implementación en vivo indiagnosable. El puente Botble (desde v1.0.7) es la referencia: marcadores de pasos en kernel/bind/bootstrap/decrypt/session/auth/db.
Laravel · punto final de identidad completo (copia, establecer las dos constantes, hecho)
<?php
/* identity endpoint · LARAVEL (Botble, Bagisto, any Laravel admin)
* Drop this in your PUBLIC web root, e.g. /opsiq-identity.php
* Answers: {"success":true,"authenticated":true,"admin":{...},"identity_token":"..."} */
define("OPSIQ_SITE_KEY", "SITE_KEY");
define("OPSIQ_SITE_SECRET", "opsiq_whsec_your_site_secret"); // Remote Sites → Codes
header("Content-Type: application/json");
$step = "boot";
try {
require __DIR__ . "/../vendor/autoload.php";
$app = require_once __DIR__ . "/../bootstrap/app.php";
$step = "bind";
// ORDER MATTERS: bind the request BEFORE bootstrapping, or providers that
// resolve "request" during boot throw "Target class [request] does not exist".
$request = Illuminate\Http\Request::capture();
$app->instance("request", $request);
$step = "bootstrap";
$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
$kernel->bootstrap();
$step = "session";
$app["session"]->driver()->setId($request->cookie(config("session.cookie")));
$app["session"]->driver()->start();
$step = "auth";
$user = auth()->guard("web")->user(); // use YOUR admin guard name
if (!$user) {
echo json_encode(["success" => false, "authenticated" => false, "error" => "no admin session"]);
exit;
}
$step = "sign";
$admin = [
"id" => (string)$user->id,
"name" => (string)($user->name ?? $user->username),
"username" => (string)($user->username ?? $user->email),
"email" => (string)$user->email,
"role" => (string)optional($user->roles->first())->name,
"authenticated" => true,
];
$payload = json_encode([
"site_key" => OPSIQ_SITE_KEY,
"iat" => time(),
"exp" => time() + 6 * 3600,
"authenticated" => true, // TOP LEVEL — required
"platform" => "laravel",
"admin" => $admin,
], JSON_UNESCAPED_SLASHES);
$p64 = rtrim(strtr(base64_encode($payload), "+/", "-_"), "=");
$token = $p64 . "." . hash_hmac("sha256", $p64, OPSIQ_SITE_SECRET);
echo json_encode(["success" => true, "authenticated" => true,
"admin" => $admin, "identity_token" => $token]);
} catch (\Throwable $e) {
// debug=1 names the failing STEP — never ship a blind catch-all
$err = ($_GET["debug"] ?? "") === "1"
? get_class($e) . " at [" . $step . "]: " . $e->getMessage()
: "identity unavailable";
echo json_encode(["success" => false, "authenticated" => false, "error" => $err]);
}
El mismo punto final en otras pilas
Sólo el "quién se ha conectado?" cambia la línea — el bloque de firma es idéntico en todas partes. Inicie sesión en el servidor, nunca en JavaScript.
WordPress · WHMCS· Symfony · PHP claro — cambiar la búsqueda, mantener el firmante
Widget nunca aparece, consola dice "Se requiere señalización de identidad administrativa"
Tu punto final no regresó identity_token. Abrir el punto finalURLdirectamente en el navegador de administración conectado con &debug=1 En Laravel esto es casi siempre el elemento de unión de solicitudes o de prefijo de cookies arriba.
Historia y conversaciones funcionan, pero cada charla dice "Se requiere acceso a la memoria"
La división clásica, tu token está perdiendo el TOP-LEVEL authenticated bandera — el punto final del widget acepta la señal, el verificador compartido detrás de la secuencia de chat lo rechaza. "authenticated" => true beside exp.
"admin not provisioned inOpsIQ" (HTTP401)
The token verified, but its username + email match no OpsIQ agent. Add the agent in OpsIQ → Team, or add the platform email to that agent's match-emails list when it differs from their OpsIQ email.
Todo 403s desde el navegador pero funciona con rl
Un preluz CORS está rechazando uno de sus encabezados de solicitud. Su punto final debe responder OPTIONS y hacer eco del origen solicitante, o simplemente evitar los encabezados personalizados — el widget sólo necesita la cookie.
Trabajado ayer, falla hoy
Verificar exp: las fichas son de corta duración por diseño. El widget se reprobe automáticamente, por lo que esto generalmente significa que el punto final dejó de ver la sesión — una rotación clave de aplicación, un cambio de goteo de sesión, o un cambio del dominio de cookies.
💡
El widget admin se oculta hasta que la identidad se resuelva, y cada llamada chat/inbox/data es ejecutada lado servidor contra el partidoOpsIQagente independientemente de cualquier cosa que la página afirma. El token desbloquea la UI; los permisos siempre vienen deOpsIQ.
Desarrollador
Identidad del visitante
Cuando se identifica, OpsIQ vincula el historial de navegación, los chats y los tickets al perfil del cliente.
Cómo funcionaIdentidad del visitante
Dos niveles de identidad, y cuando cada uno es suficiente
Nivel 1 — una pista sin firmar
Dígale al widget quién es el visitante con una llanuraJavaScriptllena el correo electrónico y cliente id en el registro de visitantes, por lo que su panel muestra tráfico firmado y sesiones se unen. Es un HINT: cualquiera puede editarlo en su navegador, así queOpsIQnunca libera datos de cuenta sobre la fuerza.
Nivel 2 - una ficha de identidad firmada
Su servidor firma un token de corta duración con el sitio webhook secret. OpsIQ verifica la firma y sólo entonces trata a la persona como cliente probado. Este es el nivel que desbloquea respuestas de cuenta en chat de clientes y búsquedas de conectores. Úselo para cualquier cosa que un extraño no debe ver.
⚠️
Nivel1es una comodidad de visualización.2es autenticación. Si una pregunta sólo puede ser contestada para el titular de la cuenta real, usted necesita Nivel2.
Nivel 1 — la insinuación no firmada
Establecer el objeto ANTES del script widget, o llamar a identificar() más tarde una vez que su aplicación sepa quién está firmado. Ambos formularios son leídos; utilizar cualquier cosa que se ajuste a su página.
JavaScript · las dos formas soportadas
<!-- Form A: set the global before the loader -->
<script>
window.OpsIQClient = {
id: "cust_1001",
email: "[email protected]",
name: "Jane Smith",
plan: "pro"
};
</script>
<script async src="https://YOUR-OPSIQ/widget.php?site_key=YOUR_SITE_KEY"></script>
<!-- Form B: identify later, e.g. after a client-side login -->
<script>
window.opsiq.identify({
id: "cust_1001",
email: "[email protected]",
name: "Jane Smith",
plan: "pro"
});
</script>
⚠️
Only these forms are read: the window.OpsIQClient global, window.opsiqConfig.user, and window.opsiq.identify(). There is no OpsIQ.push(['identify', ...]) queue and no OpsIQClientSignature global — if you find either in an old note, it does nothing.
Nivel 2 — la identidad firmada por el servidor token
Exactamente el mismo contrato de ficha que el widget admin, con un customer sujeto en lugar de un admin uno. Firme en su servidor y pásela al widget. Dos detalles deciden si lo verifica, y ambos son fáciles de equivocarse:
ElHMACcubre la cadena BASE64URL, no elJSON
Firmar $payload64, no $payload. Firmar la cruda JSON produce una señal que se ve bien y es rechazada cada vez con un desajuste de firma.
base64url, sin apadillar
Traducido +/ a -_ y despojar = padding. Plain base64 happens to survive today; base64url is the contract and is what every OpsIQ verifier and reference connector emits.
autenticado va en el nivel TOP
Beside site_key, iat y exp. Es su afirmación de que un verdadero humano está conectado, y OpsIQ se niega la señal sin ella.
cliente. id es obligatorio
Un token que lleva sólo un correo electrónico verifica como firma y luego se deja caer silenciosamente. Siempre envía una id.
Mantenga la exposición corta
Minutos a horas. El token es una afirmación de sesión, no un credencial para almacenar.
PHP - firma un token de identidad del cliente (este código exacto verifica)
<?php
/* Server-signed customer identity. Runnable as-is: set the two constants. */
$siteKey = "YOUR_SITE_KEY"; // Remote Sites -> Codes
$secret = "opsiq_whsec_your_site_secret"; // Remote Sites -> Codes
$payload = json_encode([
"site_key" => $siteKey,
"iat" => time(),
"exp" => time() + 3600,
"authenticated" => true, // TOP LEVEL - required
"platform" => "your-platform",
"customer" => [
"id" => (string)$user->id, // REQUIRED
"email" => (string)$user->email, // REQUIRED
"name" => (string)$user->name,
"plan" => (string)($user->plan ?? ""),
"authenticated" => true,
],
], JSON_UNESCAPED_SLASHES);
/* base64url(payload) . "." . hex HMAC-SHA256 OF THAT STRING. */
$payload64 = rtrim(strtr(base64_encode($payload), "+/", "-_"), "=");
$token = $payload64 . "." . hash_hmac("sha256", $payload64, $secret);
/* Hand it to the widget either way: */
printf(
'<script async src="https://YOUR-OPSIQ/widget.php?site_key=%s&identity_token=%s"></script>',
rawurlencode($siteKey),
rawurlencode($token)
);
// or, if the loader is already on the page:
// echo '<script>window.opsiqConfig = window.opsiqConfig || {}; '
// . 'window.opsiqConfig.identityToken = ' . json_encode($token) . ';</script>';
🚫
Iniciar sesión en el servidor solamente. Un token minted en el navegadorJavaScriptsignifica enviar el sitio secreto a cada visitante, que da a cualquiera la capacidad de impersonar cualquier cliente.
El mismo contrato, tres superficies
chat de cliente en su sitio
sujeto cliente, pasó como ID_token a widget. php. Cubierta arriba.
chat de administrador dentro de su backend
El sujeto de administración, pasó a opsiq/embed/admin_widget. php. Mismo signer, clave de tema diferente. Ver "El widget de Admin en tu backend".
Enlaces profundos del portal de apoyo
Una variante más estricta: las mismas afirmaciones más jti y single_use:true, y una120- segunda vida, porque el token viaja en unaURLy debe ser gastado una vez. No la cargue a mano. Ajustes, Portal de soporte tiene un snippet listo para su idioma, y la plataforma lo miente cuando el área de cuenta se ejecuta en este servidor.
¿Qué pasa si un visitante borra las cookies?+
Se vuelven anónimos hasta que se identifiquen de nuevo. OpsIQ vincula el nuevo registro anónimo al perfil del cliente en el momento en que llega una pista o un token.
¿Por qué mi ficha verifica para el registro de visitantes pero no para preguntas de cuenta?+
Ese es el nivel1/ Nivel2Una insinuación no firmada llena el registro del visitante y nada más. Las respuestas de la cuenta necesitan una firma verificada.
Desarrollador
Plugins y SDK
OpsIQProporcionarSDKpaquetes y plugins para plataformas comunes.
Cómo funcionaPlugins y SDK
PHPSDK
Paquete Composer: generación de tokens de identidad, ayudantes de acción API, verificación de firma webhook.
JavaScript SDK
Browser-side: seguimiento, identidad, eventos personalizados, control de chat.
WordPress plugin
Inyección de widgets, identidad desde sesiones de usuario WP, sincronización WooCommerce.
Módulo WHMCS
Integración completa: widget, retransmisión de tickets, identidad, IA administrativa.
Extensión de tema Shopify
Insertar aplicaciones con identidad automática del cliente.
Encuesta API, eventos y automatización sin conectores
Survey Studio está diseñado para usar el mismo tipo de GeneralAPI, ejecución interna, operaciones de bus de eventos y webhook como el resto deOpsIQ. Esto permite que los desarrolladores integren el fin al final sin construir un conector empaquetado.
⚠️
Estado de implementación: el catálogo en vivo actualmente expone solo platform.get.survey.config y platform.save.survey.config. El surveys.* y feedback.* Las familias a continuación son el contrato objetivo aprobado y deben regresar unknown_action Hasta que se registre.
Familias de acción específica
Tipos, plantillas y lanzamiento rápido
surveys.types.*, surveys.templates.* y surveys.quick_launch.* Lista, vista previa, instancia y validar los inicios completos.
Encuestas y versiones
surveys.create|get|list|update|archive|duplicate más acciones de versión, validación y publicación inmutables.
Despliegues y orientación
surveys.deployments.*, surveys.links.*, surveys.audiences.*, surveys.triggers.* y surveys.variables.*.
Divulgación y respuestas
surveys.invitations.*, surveys.campaigns.*, surveys.recipients.*, surveys.responses.*, exportaciones, redacción y análisis.
Webhooks, importación y exportación
surveys.webhooks.*, surveys.imports.*, feedback.items.*, feedback.analytics.*, feedback.sources.* y feedback.analysis.*.
Flujo sin conector
1
Crear y publicar a través de General API
Las acciones de uso de encuestas escritas* con una clave fijada al espacio de trabajo. Las escrituras declaran permiso, riesgo, confirmación, idempotencia y comportamiento de ejecución en seco.
2
Recibe tu evento de negocios
Envía un evento firmado a un webhook de entrada, por ejemplo, una cancelación de pedido o el paso de incorporación completado. La protección de reproducción desduplica el ID del evento.
3
Asignarlo en acciones y desencadenadores
Elija unOpsIQGeneralAPIacción tales como la emisión de una invitación a Survey o la preparación de una campaña, luego mapear campos desde la carga útil del desencadenante verificada.
4
Suscríbase a los eventos de la encuesta
Entregue el subconjunto de ciclos de vida de encuestas* documentado y seguro para la empresa a su punto final con firma, filtro, reintento, registro y reproducción autorizada.
Objetivo de evento canónico
El catálogo compartido cubrirá el estado de publicación de la encuesta/implementación, las decisiones de audiencia y activación, invitaciones, renderización/inicio/parcial/reanudación/completo/abandono, redacción de respuestas, estado de campaña y errores de entrega. El enfoque de alto volumen, el desplazamiento y los tiempos de pregunta permanecen en el almacenamiento de Survey Analytics a menos que se documente explícitamente para su despliegue.
✅
Un conector es opcional y agrega detección de plataforma reutilizable, identidad verificada, hechos, variables y enumeración de destinatarios. General API más Actions & Triggers/webhooks sigue siendo la ruta de integración completa para los desarrolladores que no necesitan un conector empaquetado.
Desarrollador
API REST
The OpsIQ REST API Le permite acceder por programación a todas las funciones de la plataforma.
Cómo funcionaAPI REST
Formato de solicitud
Enviar la clave como Authorization: Bearer opq_... o X-OpsIQ-Key: opq_.... Utilice un encabezado de autenticación, no ambos.
API formato de solicitud
POST https://your-opsiq-domain.com/api/v1.php
Authorization: Bearer opq_your_api_key
# Alternative header: X-OpsIQ-Key: opq_your_api_key
Content-Type: application/json
{
"action": "endpoint.name",
"site_key": "site_abc123"
}
Acciones comunes
El API está basado en la acción: enviar un action Cada operación de administrador registrada JSON tiene una acción estable con nombre. POST {"action":"meta.actions"} (no se requiere clave) para la lista autorizada, por instalación, el contrato de solicitud, los metadatos de riesgo y el alcance. platform.routes.* El puente permanece solo para integraciones más antiguas.
crm.contacts.list
Lista de contactos CRM (alcance crm. read). Parámetros: q, estado, fuente, etiqueta, puntuación de clientes potenciales, límite.
crm.contacts.upsert
Resolución o creación de un contacto (alcance crm. write). Parámetros: correo electrónico más campos, etiquetas, notas.
crm.deals.list
ListaCRMacuerdos (scopio)crmParams: status, stage_id, company_id , owner_admin_id y pipeline_id. limit.
crm.activities.record
Registra un ciclo de vida/actividad comercial para un contacto (scope crm. write) Parámetros: email o contact_id, evento, valor, moneda.
crm.conversions.record
Registra una conversión (alcance crm. write). Parámetros: contact_id o email, conversion_type, value, currency.
crm.events.list
Consultar el flujo de eventos del CRM (ámbito crm. read). Parámetros: limit.
Un ticket y sus mensajes (alcance tickets. read). Parámetros: id_ticket o número_de_tiquet, include_messages, messages_limit.
tickets.reply
Publicar una respuesta a un ticket (alcance tickets. write). Params: ticket_id o número_de_ticket, cuerpo, tipo_autor, nombre_autor.
tickets.update
Para actualizar un ticket (scope tickets. write), se deben especificar los parámetros siguientes: ticket_id o ticket_number, status, priority, subject, department_id, assigned_admin_id.
tickets.open
Abre un ticket de soporte (scope tickets. write). Parámetros: customer_email, customer_name, subject, body, priority.
tickets.bulk
Ejecuta una operación de cola masiva (scope tickets. write). Parámetros: operation, ids.
conversations.list
Lista de conversaciones en chat (scope conversations. read). Parámetros: page, per_page, status, assigned_admin_id, client_email, search.
conversations.get
Una conversación y sus mensajes (scope conversations. read). Parámetros: id_conversación o clave_de_hilo, include_messages.
Enviar un mensaje a una conversación (scope conversations. write). Parámetros: id_conversación, mensaje, tipo_remitente, interno.
conversations.update
Asignar, cambiar el estado o renombrar una conversación (scope conversations. write). Params: conversation_id, status, assigned_admin_id.
Conectores. lista /. get /, prueba
Vea qué conectores están instalados, lo que cada uno puede hacer y si sus credenciales funcionan (scope connectors. read).
automations.actions.list
Las acciones que ejecutará el generador de acciones (alcance automations. read).
automations.triggers.list
Qué se disparará y en qué condiciones (alcance automations. read).
automations.runs.list
Historial de ejecución para la depuración de una integración (scope automations. read). Parámetros: status, action_key.
departments.list
Departamentos a los que puede enrutar un ticket (ámbito departments. read).
notifications.list
Notificaciones para un operador (scope notifications. read). Parámetros: admin_id (requerido), unread_only.
analytics.export
Una sección de informe como CSV (alcance analytics. read). Parámetros: section, preset, from, to Llama a analytics. sections. list para obtener valores válidos.
Sitios de inteligencia del sitio. lista /. reports. list
Sitios monitoreados y sus informes de SEO (alcance site_intelligence. read).
files.get
Un enlace de descarga firmado y efímero para un archivo adjunto (scope files. read). Parámetros: reference, ttl.
security.check
Pregunte si un IP Aquí se indica si un mensaje de texto o correo electrónico está bloqueado o es sospechoso (ámbito security.read).IP El firewall, la lista de bloqueo de spam del ticket y el veredicto de IA de seguridad almacenado en caché. ip, correo electrónico.
security.report
Informe de abuso observado en su sistema (alcance security. write). Registrado como un evento de seguridad, clasificado inmediatamente por la inteligencia artificial de seguridad y los administradores son alertados sobre veredictos de alto riesgo. Parámetros: ip, correo electrónico, t ip o, razón, fuente.
Añadir a la lista de bloqueos /. list
Administra las reglas de spam que el canalizador del ticket aplica (alcance security. write / security. read). Se almacenan igual que en la página Tickets, control "Bloquear remitente". Params: tipo (correo electrónico, dominio, ip), valor, razón, expires_hours.
💡
Meta. actions es siempre autoritativo, devuelve todas las acciones disponibles en tu instalación con el alcance que cada una necesita, así que nunca tienes que adivinar o codificar esta lista.
Paginación, filtrado y clasificación
Cada acción de lista utiliza los mismos parámetros, por lo que se aprenden una vez.
Página / por página
Número de página que comienza con 1, y el tamaño de la página. 50, máximo 200. límite y compensación también se aceptan si usted los prefiere.
orden
Campo por el que ordenar, y asc o desc (por defecto desc). Cada acción acepta un conjunto fijo de campos de ordenación; cualquier otra cosa se ignora en lugar de producir errores.
filters
Envía filtros como un objeto o pasa un filtro como parámetro de nivel superior, los filtros desconocidos se ignoran.
Lo que vuelve
Sigue solicitando páginas hasta que has_more sea falso. Keep requesting pages until has_most is false.
Error de conexión a la red: missing_api_key / invalid_api _key
No se envió ninguna clave, o la clave es incorrecta o ha caducado. HTTP 401.
missing_scope
La clave es válida, pero carece del alcance que necesita esta acción. HTTP 403.
Clave de solo lectura / acción restringida
La clave es de solo lectura, o esta acción no está en su lista de permisos. HTTP 403.
unknown_action
No hay tal acción. Llama a meta. actions para la lista actual. HTTP 400.
Parámetro_inválido / error_parameter
No se ha encontrado un parámetro requerido, o no se acepta un valor. HTTP 400.
not_found
El registro no existe, o no está en el espacio de trabajo que esta clave puede ver. HTTP 404.
rate_limited
El límite por hora de esta clave se ha agotado. HTTP 429.
server_error
Algo falló en nuestro lado. El request_id identifica el intento si necesitas informarlo. HTTP 500.
Reintentos seguros
Si un tiempo de escritura se agota, no puedes saber si aterrizó. idempotency_key y una repetición de la misma llamada devuelve el resultado original en lugar de hacer el trabajo dos veces.
Escritura Idempotent
{
"action": "tickets.reply",
"ticket_id": 4192,
"body": "Thanks, that is now fixed.",
"idempotency_key": "your-unique-id-for-this-attempt"
}
Cuánto tiempo dura
Una llave es recordada por24horas contra la misma acción yAPIllave.
Lo que obtienes a cambio
La respuesta original, más idempotent_replay: true para que puedas saber si se trataba de una repetición.
Los fallos se mantienen reintentables
Solo se recuerdan las escrituras exitosas, si una llamada falla, enviándola de nuevo con la misma clave se ejecutará nuevamente, lo que es lo que desea.
Lee
Las lecturas ignoran la clave. Repetir una lectura es inofensivo.
Prueba sin cambiar nada
Añadir dry_run: true Su clave, ámbitos y parámetros son todos comprobados exactamente como de costumbre, luego la llamada se detiene antes de que nada sea creado o cambiado.
Prueba en seco: verifique las credenciales y la carga útil de forma segura
{
"action": "tickets.update",
"ticket_id": 4192,
"status": "closed",
"dry_run": true
}
{
"success": true,
"dry_run": true,
"would_execute": true,
"message": "Authorised and validated. No write was performed because dry_run was set."
}
✅
Usa dry_run mientras estás compilando, es la forma más rápida de confirmar que una clave tiene los alcances correctos y tu carga útil se ha formado correctamente, sin crear datos de prueba que luego tengas que limpiar.
Límites de tasa
Límite por clave
Un límite horario configurable por API key (default ) 1000 Configurarlo por tecla en la sección de Ajustes,API Llaves.
Cuando se supera
HTTP 429 con el código rate_limited, más un encabezado Retry-After que te indica cuántos segundos esperar y que restablece el límite al principio de la siguiente hora del reloj.
Saber dónde estás
Cada respuesta lleva X-RateLimit-Limit, X-Remaining y X-Reset (una marca de tiempo Unix) Observe Remaining y reduzca la velocidad antes de que se agote en lugar de esperar a ser rechazado.
Decir429desde401
A 429 significa esperar e intentar de nuevo. A 401 significa que la propia clave es incorrecta o ha caducado, por lo que volver a intentarlo no ayudará hasta que arregle la clave.
Guardia de fuerza bruta pre-auth
Repetidas tentativas fallidas de unaIPLas claves válidas nunca tropiezan con esto.
Las mejores prácticas
Retírate cuando el Remaining sea bajo, y honra a Retry-After después de un 429 en lugar de volver a intentarlo inmediatamente.
Versiones y estabilidad
Versión actual
v1. Cada respuesta lleva X-OpsIQ-API-Versión y X-OpsIQ-API-Estado para que puedas confirmar con quién estás hablando.
Cómo se le avisará
Si una versión es retirada, las respuestas obtienen los encabezados estándar Deprecation y Sunset, y meta. actions reporta deprecated y sunset_at. Compruébalos en tu monitoreo y nunca te sorprenderás.
Lo que no cambiará
Nombres de acciones existentes, sus parámetros y códigos de error. Nuevas acciones y nuevos campos opcionales pueden ser añadidos en cualquier momento, así que ignore los campos que no reconozca antes que fallarlos.
Una integración completa, de principio a fin
Este es el ciclo completo: encontrar trabajo, leerlo, actuar sobre él y confirmar lo que hiciste.
Flujo de trabajo completo del ticket sobre el API
# 1. Discover what this install offers and what each action needs.
POST /api/v1.php
{"action":"meta.actions"}
# 2. Find the urgent open tickets.
POST /api/v1.php
Authorization: Bearer opq_your_api_key
{"action":"tickets.list","status":"open","priority":"urgent","per_page":25}
# 3. Read one, including its conversation history.
{"action":"tickets.get","ticket_id":4192}
# 4. Reply, safely enough to retry if the network drops.
{"action":"tickets.reply","ticket_id":4192,
"body":"We have issued the refund.","idempotency_key":"reply-4192-attempt-1"}
# 5. Close it.
{"action":"tickets.update","ticket_id":4192,"status":"closed"}
# 6. Page through anything larger: keep going until has_more is false.
{"action":"tickets.list","page":2,"per_page":50}
💡
Todo lo anterior funciona de la misma manera para las conversaciones: conversations. list, conversations. get, conversation. send y conversations, update siguen el mismo patrón, parámetros y forma de respuesta.
Cada acción, con el alcance que necesita
Esta lista se genera a partir del catálogo en ejecución, por lo que siempre coincide con la versión que estás usando. meta.actions Devuelve la misma información que JSON.
✅
1758 named actions: 590 reads, 1168 writes and 62 scopes. Every registered administrator JSON operation has a stable named action. OpenAPI: /api/v1/openapi.php. Postman: /api/v1/postman.php. Contract quality: declared_dynamic: 399; explicit: 92; route_inferred: 1151; source_inferred: 116.
Read. Scope: crm.read. Contract: source_inferred. Crm Workflows List
crm.workflows.save
Write. Scope: crm.write. Contract: source_inferred. Crm Workflows Save Retry-safe with idempotency_key.
clientes (44)
customers.analyze
Write. Scope: customers.write, journey.write, admin. Contract: explicit. Analyze a customer journey with AI Required fields: client_id. Retry-safe with idempotency_key.
Write. Scope: security.write, admin. Contract: route_inferred. Security Ai Analyze
security.ai.ask
Write. Scope: security.write, admin. Contract: route_inferred. Security Ai Ask
security.ai.briefs
Read. Scope: security.read, admin. Contract: declared_dynamic. Security Ai Briefs
security.ai.chain.explain
Read. Scope: security.read, admin. Contract: route_inferred. Security Ai Chain Explain
security.ai.incident.action
Write. Scope: security.write, admin. Contract: route_inferred. Security Ai Incident Action
security.ai.incidents
Read. Scope: security.read, admin. Contract: route_inferred. Security Ai Incidents
security.ai.js.triage
Read. Scope: security.read, admin. Contract: route_inferred. Security Ai Js Triage
security.ai.policies
Read. Scope: security.read, admin. Contract: declared_dynamic. Security Ai Policies
security.ai.policy.action
Write. Scope: security.write, admin. Contract: route_inferred. Security Ai Policy Action
security.ai.verdicts
Read. Scope: security.read, admin. Contract: route_inferred. Security Ai Verdicts
security.blocklist.add
Write. Scope: security.write, admin. Contract: source_inferred. Add a spam rule (email, domain or IP) to the ticket blocklist Required fields: kind, value. Retry-safe with idempotency_key.
security.blocklist.list
Read. Scope: security.read, admin. Contract: explicit. List the current ticket spam rules
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Speed V2 Collect
site_intelligence.speed.v2.read
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Speed V2 Read
site_intelligence.speed.v2.run
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Speed V2 Run
site_intelligence.start.crawl
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Start Crawl
site_intelligence.task.approve
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Approve
site_intelligence.task.assign
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Assign
site_intelligence.task.bulk.apply
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Bulk Apply
site_intelligence.task.bulk.assign
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Bulk Assign
site_intelligence.task.bulk.deadline
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Bulk Deadline
site_intelligence.task.bulk.dismiss
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Bulk Dismiss
site_intelligence.task.deadline
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Deadline
site_intelligence.task.note
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Note
site_intelligence.task.proof
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Proof
site_intelligence.task.reject
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Reject
site_intelligence.task.review
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Review
site_intelligence.topical.map
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Topical Map
site_intelligence.webhook.delete
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Webhook Delete
site_intelligence.webhook.save
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Webhook Save
site_intelligence.webhooks.list
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Webhooks List
site_intelligence.workflow
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Workflow
estado (6)
status.component.save
Write. Scope: status.write, admin. Contract: declared_dynamic. Status Component Save
status.components.save
Write. Scope: status.write, admin. Contract: explicit. Create or update a public status component Required fields: name. Retry-safe with idempotency_key.
status.incident.create
Write. Scope: status.write, admin. Contract: declared_dynamic. Status Incident Create
status.incident.resolve
Read. Scope: status.read, admin. Contract: route_inferred. Status Incident Resolve
status.incidents.create
Write. Scope: status.write, admin. Contract: explicit. Create a status-page incident Required fields: title. Retry-safe with idempotency_key.
status.incidents.resolve
Write. Scope: status.write, admin. Contract: source_inferred. Status Incidents Resolve Retry-safe with idempotency_key.
encuestas (22)
surveys.analytics.get
Read. Scope: surveys.read, admin. Contract: source_inferred. Surveys Analytics Get
surveys.audiences.list
Read. Scope: surveys.read, admin. Contract: explicit. List survey audiences
Write. Scope: tickets.write, admin. Contract: source_inferred. Update a ticket status, priority, subject, department or assignment Retry-safe with idempotency_key.
Write. Scope: writing. Contract: source_inferred. Writing Analyze Retry-safe with idempotency_key.
writing.compose
Write. Scope: writing. Contract: source_inferred. Writing Compose Retry-safe with idempotency_key.
writing.reply
Write. Scope: writing. Contract: source_inferred. Writing Reply Retry-safe with idempotency_key.
writing.rewrite
Write. Scope: writing. Contract: source_inferred. Writing Rewrite Retry-safe with idempotency_key.
writing.summarize
Write. Scope: writing. Contract: source_inferred. Writing Summarize Retry-safe with idempotency_key.
writing.translate
Write. Scope: writing. Contract: source_inferred. Writing Translate Retry-safe with idempotency_key.
¿Están disponibles OpenAPI y Postman?+
Sí. El OpenAPI generado 3.0 El documento está en. /api/v1/openapi.php, La colección de Postman generada está en. /api/v1/postman.php, y la documentación de desarrollo legible por humanos está en. /api/docs/.
¿Cómo puedo trabajar con más de un espacio de trabajo?+
Una clave emitida para un espacio de trabajo permanece fija a él; una clave con contexto de administrador puede seleccionar cualquier espacio de trabajar que se le permita ver, y es rechazada por cualquier otro que no lo esté.
¿Qué acciones puede llamar una tecla de solo lectura?+
Cualquier acción marcada como lectura. Establezca el modo de permisos en la clave a solo_lectura y cada escritura se rechaza con solo_lectura_clave, por lo que una integración de informes no puede cambiar nada ni siquiera por error.
¿Por qué recibí not_found para algo que puedo ver en el administrador?+
Los registros en otros espacios de trabajo devuelven not_found en lugar de un error de permiso, por lo que el API nunca confirma si algo existe en otro lugar.
Desarrollador
Seguridad API
Un contrato de seguridad para cada conector e integración: pregunteOpsIQlo que sabe de unIPo remitente, y alimentar el abuso que ve su propio sistema.
OpsIQ El mundo ya se defiende: la IP El firewall bloquea a los atacantes, la canalización de tickets filtra el spam y la inteligencia artificial de seguridad clasifica a los infractores y propone reglas de bloqueo. API Una plataforma de facturación, un portal para clientes o una aplicación personalizada pueden verificar a un visitante antes de confiar en él e informar lo que observó para que toda la instalación aprenda de cada superficie.
Qué puedes hacer
Comprueba antes de confiar
security. check responde con el estado del firewall, cualquier regla de spam que coincida con el remitente y el veredicto de IA en caché para IP Una llamada, una opinión consolidada.
Reporta lo que viste
security.report registra la observación como un evento de seguridad, hace que la IA de Seguridad clasifique el IP Los informes repetidos se agrupan en incidentes, exactamente como los ataques de ransomware, y son enviados a un administrador. OpsIQ El hombre ve directamente.
Reglas de spam compartido
security. blocklist. add y security. bloklist. list leen y escriben las mismas reglas de spam que usa la página Tickets, por lo que un remitente bloqueado en un sistema está bloqueado por todas partes.
Necesaria para security. check y security. blocklist. list. Segura para dar una integración de informes.
security.write
Necesario para security. report y security. blocklist. add, déselo solo a los sistemas en los que desea alimentar reglas e informes.
Nada se destruye silenciosamente
Un remitente bloqueado aún se encuentra en la vista de Spam, donde el ticket puede leerse y restaurarse.
La plataforma se protege a sí misma
El propio del servidor IP Las direcciones de correo no deseadas nunca pueden ser bloqueadas, incluidas en la lista de bloqueo o reportadas a través de este. API, por lo que una integración mal configurada no puede derribar la plataforma.
💡
Cree una clave bajo Integraciones, luego API Keys y déle solo los ámbitos de seguridad que necesita. El contrato completo de solicitud para cada acción está en meta. actions y el documento OpenAPI.
¿Mis conectores existentes utilizan esto automáticamente?+
La sincronización saliente ya es automática: cuando bloquea un IP, las plataformas conectadas se comunican a través de la sincronización de seguridad del conector. API Apunte su conector o código personalizado a estas cuatro acciones con una tecla que lleve los alcances de seguridad.Point your connector or custom code at these four actions with a key carrying the security scopes.
¿Dónde viven las reglas de spam?+
El control de remitentes bloqueados en la página Tickets, el spam AI en Configuración y este API todos trabajan contra la misma lista de bloqueo, por lo que hay exactamente un lugar para buscar.
Desarrollador
Eventos API
Envía eventos personalizados desde tu servidor o sitio web a OpsIQ para análisis, experimentos, desencadenadores de CRM y condiciones de webhook.
En el lado del servidor, registra las actividades y conversiones de un contacto mediante la acción API. Uso crm.activities.record para el ciclo de vida/actividad comercial y crm.conversions.record No hay ningún tipo de conversión. events.send El receptor del evento CRM entrante vive en /v1/inbound.php?t=<token> para sistemas de terceros que envían eventos.
Comprender el flujo de datos le ayuda a depurar las integraciones y optimizar el rendimiento.
Cómo funcionaFlujo de datos
Flujo de datos entrante
1
Widget de baliza
The JavaScript El widget envía vistas de página, clics y mensajes de chat a. /beacon.php.
2
Ingestión de eventos
Eventos almacenados en opsiq_events con site_key, tipo de evento, cliente y propiedades.
3
Asamblea de sesión
El generador de sesiones agrupa las vistas de página en sesiones (a través de cron).
4
Resolución de identidad
Cuando se identifican, los registros anónimos se vinculan al perfil del cliente.
5
Sincronización del conector
Los conectores extraen datos de plataformas externas y los almacenan en la caché del conector.
6
Contexto de IA
La IA ensambla el contexto de: historial del visitante, perfil del cliente, datos del conector, KB y solicitud.
Flujo de datos salientes
1
Incendios de eventos
Incendios de eventos internos (ticket. created, chat. message, order. completed).
2
Cola de trabajos
Evento colocado en la cola de trabajos asíncronos.
3
Despacho de Webhook
El despachador firma y envía a todos los puntos finales suscritos.
4
Reintentar en caso de fallo
Las entregas fallidas se reintentan con retroceso exponencial.
Configuración
Referencia de configuración
Todo lo que se indica a continuación tiene un alcance específico para el espacio de trabajo en el que te encuentras, por lo que una cuenta puede administrar varias marcas con identidades, comportamientos de chat y reglas de retención diferentes.
Encontrar un entorno
Hay alrededor de seiscientos controles individuales en Configuración, distribuidos en once pestañas agrupadas bajo cuatro menús, pero no se espera que los busques.
Configuración de búsqueda (Ctrl + K)
Presione Ctrl + K, o Cmd + K en un Mac, en cualquier lugar de la página Configuración. Escriba palabras sencillas y presione Intro para ir directamente al control. La búsqueda tolera errores tipográficos pequeños y entiende las palabras relacionadas, por lo que el programador encuentra Cron y la privacidad encuentra los controles de seguimiento.
Espacio de trabajo y plan
General y Licencia.
AI y atención al cliente
Asistente de IA, Chat con el cliente, OpsIQ Escritura y Portal de soporte.
Datos y gobernanza
Seguimiento y privacidad, permisos y seguridad.
Sistema
Configuración de Cron (solo auto-hospedado) y Zona de peligro.
Ahorro
Cada pestaña se guarda por sí misma con su propio botón Guardar. El Chat del cliente y OpsIQ Escritura fijan el suyo a la pantalla.
Enlaces profundos
La pestaña activa se escribe en la dirección de la página, por lo que una pestaña puede ser marcada o enviada a un colega.
General: Identidad corporativa
La tarjeta más importante de la página, que el IA lee en cada respuesta, informe y resumen diario.
Nombre de la empresa
Se utiliza en informes de IA, resúmenes diarios y textos dirigidos al cliente.
Industria de negocios
Elige entre alojamiento web, comercio electrónico, SaaS, bienes raíces, agencias, consultoría, atención médica, educación, finanzas o negocios en general. Elige entre una amplia gama de servicios y herramientas para optimizar tu experiencia de usuario.
Idioma del sistema
El idioma que se muestra a cualquiera que no haya elegido el suyo, cada agente puede anularlo en su perfil.
Usar el idioma del navegador
Muestra la página de inicio de sesión en el propio idioma del visitante Una vez que alguien elige un idioma allí, su elección gana y esto nunca lo anula.
Zona horaria del sistema
La zona en la que se ejecuta todo el sistema: fechas, informes, horarios y cron de fondo. Utilice su zona horaria de operaciones, no sus clientes.
General: GeoIP y seguimiento
Ruta de la base de datos GeoIP2
Ruta completa a GeoLite2-City. mmdb. Autodetecta en la primera carga en cPanel, Plesk, DirectAdmin, Cloudways, Docker y Linux o Windows Añada GeoLit2-ASN. mmbd en la misma carpeta para el proveedor de Internet del visitante.
Modo de fuente geográfico
GeoLite2 solamente, GeoLit2 con un Cloudflare fallback, or Cloudflare only.Cloudflare Estos modos requieren que el sitio sea un proxy a través de.Cloudflare, con los encabezados de ubicación del visitante habilitados para el detalle de ciudad y región.
Tiempo de espera (s)
La inactividad antes de que una sesión del visitante se considere terminada. Por defecto 14400, es decir cuatro horas.
Intervalo de actualización en vivo (s)
Con qué frecuencia se actualiza el Live Feed. Por defecto 30 segundos.
Umbral activo (min)
El tiempo que un visitante cuenta como en vivo después de su última carga de página. Por defecto 2 minutos Este es el tiempo de caída del Live Feed, no la duración de la sesión.
Retención de datos (días)
Elimina los registros recopilados y generados después de esta edad: análisis, chat, tickets, comentarios, transacciones, telemetría de IA, registros de integración y actividad de CRM. 0 lo guarda todo para siempre; la configuración, el contenido creado y los recibos de consentimiento nunca se eliminan.
Cuando se elimina un chat
Elige cuánto de una conversación borrada se mantiene en el registro: el disco completo, el registro sin la conversación o sólo la puntuación. Eliminar siempre esconde el chat desde la bandeja de entrada y la historia del visitante. Retención programada y Olvidar visitante siempre borrar completamente independientemente de esto.
Seguimiento del tráfico de bots
Cuenta los rastreadores como visitantes. Deja de hacerlo; infla el recuento de visitantes y sesga todos los informes.
Encuesta de retroalimentación emergente habilitada
Separado de las encuestas del chat, bajo Chat con el cliente, Flujo de soporte.
General: Características de IA
Interruptores maestros para cada superficie de IA, todos activados por defecto y guardados por espacio de trabajo.
AI Triage en los tickets
Clasifica cada ticket por categoría, prioridad y sentimiento, y escribe un resumen del hilo en la parte superior del ticket.
Resumen de hover de AI Triage
Muestra las etiquetas de clasificación y el resumen en una información sobre la herramienta cuando un agente pasa el cursor por encima de una fila de la lista de tickets.
Copilot (compositor)
Añade los botones Borrador de respuesta de IA, Más cálido, Más corto, Más formal y Apología bajo el cuadro de respuesta del ticket.
Pregunta...OpsIQ Copiloto
El copiloto flotante consciente de la página en cada página de administración Sabe qué cliente, factura o ticket está abierto.
Brief de la mañana
En la primera apertura de cada día, el copiloto presenta los tickets urgentes, las respuestas atrasadas y los chats en espera.
General: dinero, marca, respaldo
OpsIQ moneda base
Cada total de dinero en el administrador se convierte a esta moneda para mostrarse. Los conectores almacenan su propia moneda de origen; establezca esa por conector.
Sincronización automática de las tasas FX
Actualiza los tipos de cambio cada seis horas desde un canal público gratuito sin la clave API. Puedes agregar tipos de cambios manuales que anulen el canal, pero si desactivas la sincronización automática, las divisas sin un tipo de cambio manual no se convertirán.
Habilitar las funciones de comercio y facturación
Cuando se activa, muestra la página Ventas y conversiones, las tarjetas de ingresos del panel y el feed de inteligencia en tiempo real. Si está desactivada, todas las superficies de precios están ocultas y la página de ventas sale del menú.
Vocabulario de comercio
Enseña a OpsIQ su redacción: si usted hace renovaciones, la palabra para renovar, lo que vende y cómo se llama a los compradores.
Branding y Logotipos
Dos subidas, una para fondos claros (barra lateral de administración) y otra para oscuros (página de inicio de sesión): PNG, JPG, WebP o SVG hasta 3 MB.
Agente de inteligencia del sitio, permitir objetivos privados SSH
El agente de SEO de implementación automática se conecta a través de SSH. Las direcciones privadas, de bucle y reservadas están bloqueadas por defecto como medida anti-SSRF. Solo habilite en instalaciones autohospedadas que deben llegar a un servidor local.
OpsIQ Copia de seguridad / Restauración
Exporta todos los ajustes y tablas propiedad de OpsIQ más archivos cargados. Restaurar reemplaza solo la configuración y registros de _OpsIQ; nunca toca clientes, facturas, tickets, servicios, dominios, pedidos o transacciones.
⚠️
Hacer una copia de seguridad antes de usar cualquier cosa en Danger Zone, la copia de respaldo vive en General y las acciones de eliminación viven en Dangers Zone, por lo que es fácil llegar al botón de eliminar sin haber exportado primero.
Configuración
Configuración: Seguridad y privacidad
Protección para el inicio de sesión del administrador, las cuentas de su personal y los datos que recopila OpsIQ El inicio de sesion del cliente para el portal de soporte se configura por separado.
Protección de inicio de sesión
Google reCAPTCHA
Detiene los bots y el relleno de credenciales en el inicio de sesión del administrador. Elija v3 (invisible, puntuado) o v2 (caja de verificación), establezca el umbral de puntuación de v3 y proporcione las claves secretas y del sitio.
Bloqueo automático de inicio de sesión fallido
Bloquea una dirección después de un número de errores dentro de una ventana, durante un número determinado de horas. Puede personalizar el mensaje de página bloqueada y mostrar una pequeña distracción en la pantalla de espera.
Iniciar sesión Hardening
Política de contraseñas con una longitud mínima, rechazo de las contraseñas encontradas en violaciones conocidas, bloqueo por cuenta contra el relleno de credenciales, dos factores obligatorios para cada administrador, reintroducción de la contraseña antes de acciones peligrosas y alertas de inicio de sesión en nuevos dispositivos.
Inicio de sesión único (OIDC)
El inicio de sesión del personal a través de su proveedor de identidades requiere el emisor URL, el ID de cliente y el secreto del cliente. Los dominios con aprovisionamiento automático, uno por línea, crean usuarios automáticamente al iniciar sesión por primera vez.
Inicio de sesión único (SSO)SAML 2.0)
Para proveedores que hablan SAML. OpsIQ Suministra la respuesta ACS.URL y el ID de entidad del SP; usted proporciona el IdP ID de la entidad,URL, salida opcional URL y X.509 Los campos de atributo Correo electrónico y Nombre solo son necesarios para nombres de atributos no estándar.
Provisionamiento SCIM
Creación, actualización y desactivación de directorios OpsIQ accounts.OpsIQ Suministra el. SCIM Base URL; se generan tokens etiquetados aquí para que uno pueda ser revocado sin romper el resto.
Amenazas, bloqueo y recopilación
Lista de permisos de salida
Restringe a qué hosts externos pueden llamar los conectores de este espacio de trabajo. Compañero del control SSH target en General.
Puntuación de amenazas y bloqueo automático
Bloquea a un visitante una vez que su puntuación de amenaza supere el umbral. 0 lo desactiva. Observe la página Descripción general de seguridad durante una semana antes de elegir un número.
Mensaje de página bloqueada
El mensaje que ve un visitante bloqueado, como texto plano o su propia pantalla de bloqueo HTML personalizada.
Core Web Vitals de visitantes reales
Mide LCP, INP y CLS de sesiones reales.
Entrega de eventos por lotes, segura para reintentos
Los eventos personalizados se encolan en el navegador y se entregan por lotes con reintentos, reduciendo la pérdida de datos en las conexiones móviles deficientes.
Balizas de seguimiento firmadas
Los widgets reales incorporados llevan un token criptográfico giratorio para que los datos de seguimiento falsificados puedan ser rechazados. Desactivado por defecto; habilitar cambia cómo se autentican los insertos, así que pruébalo primero.
Alertas de seguridad
Esta tarjeta controla si se te dice que lo hagas, y cuánto ayuda la IA.
Habilitar alertas de seguridad
Interruptor maestro para esta tarjeta.
Umbral de onda de inicio de sesión fallido
Cuántos inicios de sesión fallidos en un período corto cuentan como una ola que vale la pena alertar.
IP Inteligencia de reputación
Agrega una puntuación de amenaza para los visitantes que aparecen en las fuentes públicas de abuso.
Vigilancia del sitio
Tiempo de actividad por hora y comprobaciones de caducidad TLS, alertando antes de que un certificado caduque.
Analista de seguridad de IA y informes de incidentes de IA
Añade un veredicto explicable a la actividad sospechosa y agrupa los ataques relacionados en un único incidente legible, en lugar de una secuencia de eventos.
Piloto automático de políticas
Actúa por sí mismo, convirtiendo lo que aprende de un incidente en una regla propuesta o aplicada; deja de hacerlo hasta que hayas revisado sus propuestas y estés de acuerdo con ellas.
Resumen diario de seguridad y asesor semanal de postura
Un resumen diario en la página de información general sobre seguridad y una lista de verificación semanal que muestra qué está protegido y qué sigue abierto.
Propuestas obsoletas de caducidad automática
Una regla de bloqueo propuesta sobre la que nunca actuó caduca por sí misma en lugar de acumularse.
Reproducción de sesión DOM
Habilitar la reproducción de sesión DOM
Cuando está desactivada, la biblioteca de repeticiones nunca se carga, por lo que no hay costo alguno en dejarla desactivado. Las grabaciones se muestrean y enmascaran para proteger su privacidad, y se ven en la página Reproducción de sesión bajo Análisis.
Frecuencia de muestreo, captura máxima, retención
Qué porcentaje de sesiones grabar, cuánto tiempo puede durar una sola grabación y cuántos días se guardan las grabaciones.
⚠️
La reproducción de sesiones registra a personas reales que usan tu sitio. Mantén la frecuencia de muestreo y la retención lo más bajas posibles para responder a tu pregunta. Divulga esta información en tu aviso de privacidad.
Configuración
Configuración: Seguimiento y privacidad
Qué puede recopilar OpsIQ y cuánto tiempo sobrevive cada tipo de registro.
Exclusiones
Excluidos IPs y rangos de CIDR
Direcciones nunca rastreadas, una por línea, direcciones exactas o rangos de CIDR: la forma más limpia de mantener a su propio equipo fuera de sus análisis, porque cubre a todos los usuarios en esa dirección y no solo a los administradores que han iniciado sesión.
Rutas de acceso URL excluidas
Los patrones de página nunca se rastrean, uno por línea, comodines con un asterisco Por ejemplo /admin/* mantiene todo el back office fuera del registro de visitantes.
Política de retención de datos
Separado de la configuración general de Retención de datos en General y de la purga de Zonas peligrosas. Separated from the overall Data Retention setting in General and from the Danger Zone purge.
Registros de interacción con IA
Confidence telemetry holding short previews of query and response. Por defecto, 90 días. Este tiempo contiene la mayor cantidad de texto del cliente, así que acórtalo primero cuando se restrinja la privacidad.
Eventos de uso de IA
Recuento de tokens por llamada para informes de costo. Por defecto 90 días. Solo números, sin contenido del mensaje.
Rastro de auditoría de acciones
El registro de seguridad y acciones a prueba de manipulación. Por defecto, 365 días. Consérvelo durante el mayor tiempo posible; es su rastro de evidencia.
Diagnósticos
Registros de estado del sistema. Por defecto 30 días.
Preguntas sin respuesta
Clústeres de preguntas que la IA no pudo responder. Por defecto 90 días, trabaja en ellas en la página Preguntas que la AI se perdió antes de que expiren.
Perros de vigilancia y exportaciones
Alertas de anomalía métrica
Comparación diaria de ayer con la línea base reciente, que alerta cuando una métrica se mueve más allá del umbral. Por defecto 35 por ciento.
Exportación de Almacén
Volcados nocturnos de sesiones, visitantes, páginas vistas y tablas relacionadas para su propia pila de BI, en un formato que usted elija, conservados durante un número de días.
Configuración
Configuración: Administrador AI Assistant
El asistente flotante que su personal utiliza dentro del administrador, con acceso de lectura en vivo a clientes, facturas, tickets, servidores y registros cron. Un asistente diferente al que se encuentra frente al cliente bajo Chat de Cliente.
Activar el widget de IA OpsIQ
Muestra el botón de asistente en cada página de administración. Desactivado lo oculta para todos.
Diseño y comportamiento
Posición de la esquina, ancho del panel (320 to 600 px), altura máxima (400 to 900 px), radio de esquina (0to 24), el tamaño de la fuente y un desenfoque de vidrio esmerilado detrás del panel.
Mostrar chips rápidos
Botones de acceso directo con un solo clic debajo del encabezado. La forma más rápida para la mayoría del personal.
Mostrar información del modelo
Muestra qué modelo respondió y cuánto tiempo tomó. Útil al afinar el costo, ruido para uso diario.
Puerta de acceso por administrador
Solo muestra el asistente al administrador que ha iniciado sesión y cuyo nombre de usuario y correo electrónico coinciden con un agente OpsIQ asignado a este espacio de trabajo. Los propietarios siempre pasan. Utilice el botón Comprobar mi acceso antes de habilitar o puede bloquear su propio equipo.
AI Persona
Nombre de visualización, eslogan del encabezado y un mensaje personalizado de bienvenida que se muestra cuando se abre el panel.
Chips inteligentes de acción rápida
Edite la etiqueta y el mensaje subyacente para cada acceso directo, agregue su propio o restablezca los valores predeterminados. La etiqueta es lo que ve el personal, el mensaje es lo qu recibe la IA.
Colores y formas
Forma de la ficha (píldora, redondeado, cuadrado), colores de las fichas, tema de tarjeta y forma del lanzador (redondo, squircle, cuadrados), con una vista previa en vivo.
Memoria de conversación
El asistente recuerda el historial de cada persona en las sesiones del navegador, hasta los mensajes 120, almacenados en su propia base de datos.
Configuración
Configuración: Chat de cliente
El widget de chat que usan tus clientes y el área más grande de Configuración Seis subpestañas, con el interruptor maestro y Guardar anclado en la parte superior de la pestaña.
En una nueva instalación, siga las subpestañas en orden: Identidad y copia, Apariencia, Comportamiento, Flujo de soporte, Capacitación sobre conocimientos.
Identidad y copia
Identidad de marca
Nombre del widget, eslogan, nombre de IA, el nombre utilizado para los avisos del sistema y de inactividad, y cómo aparecen los nombres de los agentes. El origen del nombre del agente decide entre nombres reales, un nombre personalizado o una etiqueta de equipo.
Saludo en el chat
Dos saludos, uno para todos los visitantes y otro para los visitante identificados. Una pregunta inicia más conversaciones que una declaración.
Teaser de Popup
El mensaje flotante antes de que se abra el chat, con su propio nombre, tamaño de fuente y colores. La IA puede escribir los teasers, con controles para cuántos generar, cuánto mostrar por visita y el espacio entre ellos.
Indicaciones y Handoff
El guion completo: pedir un nombre y correo electrónico, confirmaciones, solicitar a un humano, no hay agentes disponibles, ticket creado o cancelado, entrega pendiente… Unas dos docenas de líneas individuales en un panel plegable.
Notificaciones de estado e inactividad
Tres mensajes visibles para el cliente: el agente cierra el chat, el visitante se ha quedado en silencio y el agenta devuelve la información a la IA.
Compositor y Sugerencias
El marcador de posición de entrada, la etiqueta del botón para hablar con un humano y las preguntas iniciales sugeridas: tres buenas sugerencias desvían más tickets que una página de artículos.
Lanzador, icono y avatares
Icono del lanzador, un icono diferente opcional cuando está abierto, tamaño del lanzadora e imágenes para el agente humano y la IA.
Apariencia
Tema y vidrio
Modo de tema, un ajuste preestablecido de color premium, intensidad y opacidad del desenfoque, además de conmutadores para animaciones, líneas separadoras, ocultar la fila de estado, ocultando la tarjeta del cuadro de mensaje y ocultando el botón de cerrar. Comience con un ajusta preestado; establece docenas de colores a la vez.
Colores principales:
Lanzador, encabezado, panel de ayuda, enlaces, botones, avisos del sistema y compositor, cada uno con un color de inicio y final para los degradados. Una opción de uso por defecto de vidrio ignora estos y mantiene el acabado transparente.
Panel, burbujas y virutas
Alrededor de treinta selectores que cubren el panel, bordes, texto, área de entrada y cada tipo de burbuja (visitante, IA, agente, escritura, sistema), además de chips de sugerencia y su estado de desplazamiento sobre la pantalla.
Diseño y forma
Ancho y altura del panel, radio de la esquina, tamaño de fuente, posición en pantalla, forma del lanzador, estilo de burbuja y si se muestran los avatares.
Comportamiento
La IA responde automáticamente
Desactivado significa que cada mensaje espera a un humano para responder.
Seguimientos humanos y doble mensajería natural
Un seguimiento suave cuando un visitante se calla, y un segundo mensaje corto opcional de la manera en que una persona enviaría uno. Ajustado con el máximo de seguimientos por silencio, primer retraso, multiplicador posterior, ventana de presencia y ventana de secuencia máxima.
Respuestas de máquina de escribir y ritmo de respuesta
Si las respuestas se escriben palabra por palabra, y qué tan rápido el asistente responde, por preestablecido o su propio retraso mínimo y máximo en milisegundos. Un pequeño retraso se lee como más humano que una respuesta instantánea.
Traducción en vivo
Cada agente lee y escribe en su propio idioma mientras que el visitante lee el suyo.
Devolver la mano a AI después de que el agente esté inactivo
Minutos de inactividad del agente antes de que la IA reanude la conversación.
Abrir automáticamente el chat
Segundos antes de que el widget se abra.0Intrusivo en dispositivos móviles; dejar en.0a menos que probado.
Respuestas más inteligentes
Planificar con anticipación para respuestas de un solo paso, profundidad de pensamiento, un modelo opcional separado para las respuestas del agente, mostrar el razonamiento a los visitantes, tolerar errores ortográficos, memoria de conversaciones largas, restringir al asistente solo a su negocio, precios en la moneda del visitante y cómo aparecen los enlaces. Solo hablar sobre tu negocio debería estar activado para casi todo el mundo.
Ahorro de costos
Omite la búsqueda de conocimientos para saludos como hola y gracias, y limita la respuesta más larga en tokens. Reduce el costo sin cambiar la calidad de las respuestas a preguntas reales.
Idiomas
Qué idiomas admite el widget y cómo elige uno para un visitante.
Respuestas de la cuenta del cliente
Respuestas desde la propia cuenta de un cliente registrado, consultadas en directo opcionalmente y cargadas solo cuando sea necesario. Solo lectura en todos los casos; cargar cuando se necesite reduce notablemente el costo.
Reembolsos
Solicitudes de reembolso asistidas donde el asistente recopila los detalles y entrega la solicitud a una persona, pero nunca completa un reembolsa por sí mismo.
Conversación y Widget
Mantener conversaciones pasadas, continuar un chat en sus sitios conectados, ventana arrastrable, pedir a los invitados un correo electrónico y permitir que su equipo convierta un chat a un ticket.
Características del widget
Selección de emojis, adjuntos con un modo opcional solo para pegar, comprensión de imágenes por IA, iconos en línea, micrófono, botón para hablar con el agente, sonidos del visitante, vista previa de los archivos adjunto, botón de llamada de voz y aislamiento de sesión.
Bandeja de entrada, notificaciones y ventana emergente de bienvenida
La ventana emergente de bienvenida al visitante, además de las alertas para sus agentes: sonidos de bandeja de entrada, notificaciones en el escritorio, susurros, si los susurros privados emiten un pitido y el intervalo de sondeo de la bandeja.
Flujo de soporte
Entrega humana
Cómo se asignan las solicitudes de una persona, los segundos que un agente tiene que responder, si al rechazar el chat regresa a la IA y si la IA reanuda cuando expira el tiempo de espera. Configura esto antes de ponerlo en vivo o un visitante que pide un humano simplemente espera.
Horario de trabajo
Horarios de apertura, zona horaria y el mensaje de horario cerrado. Fuera de estas horas la IA no ofrecerá un humano. Un horario separado del horario comercial del boleto bajo OpsIQ Escritura.
Responde cuando la IA está apagada
La primera respuesta a un nuevo mensaje, la respuesta cuando alguien ya está en cola y cuánto tiempo antes de repetir.
Formulario fuera de línea
Muestra un formulario de contacto en lugar del chat.
Búsqueda de tickets y notificaciones del departamento
Conocimiento de ticket por IA, para que un visitante que cita un número de ticket obtenga su estado real y a qué departamentos puede enrutar el AI. Un panel incorporado muestra los destinatarios reales de cada departamento, resueltos de la misma manera que el notificador los resuelve, para poder ver antes de que lo haga un cliente que un departamento no alerta a nadie.
Centro de ayuda en el widget de chat
Permite a los visitantes navegar por artículos publicados sin salir del chat. Tú eliges dónde aparece el punto de entrada, la etiqueta y el icono de la barra inferior, y si se ofrece un enlace al centro de ayuda completo.
Calificación de conversación
La calificación por estrellas se activa cuando un agente cierra el chat, cuando finaliza una entrega o después de un período de inactividad que establezca. Elige uno o dos desencadenadores, no todos ellos.
Encuesta post-chat
Una encuesta corta cuando el visitante cierra el chat, con su pregunta, retraso, regla de tiempo y un límite por visita. Los visitantes también pueden enviar por correo electrónico o descargar la transcripción.
Encuesta de correo electrónico post-chat
Una encuesta de seguimiento por correo electrónico después de que la conversación termine, opcionalmente en el idioma en el que chateó el visitante, con control sobre retraso, asunto, introducción, pregunta, ambas etiquetas del botón y la línea de agradecimiento.
Responder a Feedback
Pulgares arriba y pulgares abajo en cada respuesta de IA, alimentando los paneles de control de calidad.
Archivo de conversación
Se establece un tercer lugar de retención, junto a General y Seguimiento. A third place retention is set, alongside General and Tracking.
Capacitación en conocimiento
Lo que el asistente realmente sabe. Nada más en el Chat del Cliente importa tanto.
Formación en Conocimiento del Sitio Web
Rastrea tu sitio para que el asistente pueda responder desde él. Hasta diez enlaces iniciales, un límite de páginas, una profundidad de enlace y carpetas excluidas. Se puede probar un solo URL antes del rastreo completo.
Inserciones
La clave y el modelo API que convierten las páginas en significados buscables en lugar de coincidencias de palabras clave.
Organizador de conocimientos
Un clic y la IA lee todas las preguntas frecuentes y páginas rastreadas y las clasifica en categorías.
Preguntas frecuentes, respuestas verificadas
Pares de preguntas y respuestas tratados como la fuente con mayor prioridad, cada uno con un estado, peso y categoría. Se pueden buscar, importar desde JSON, y la IA puede escribirlas a partir de una descripción de su negocio. Cuando el asistente obtiene algo mal, escriba una FAQ: supera las páginas rastreadas, por lo que la solución es inmediata.
Avanzado
Rendimiento y límites
Intervalo de sondeo, límite de velocidad y ventana del mensaje, tamaño máximo de los archivos adjuntos, intentos de adjuntar por ventana y extensiones de archivo permitidas. La lista de extensiones es un control de seguridad; manténgala estricta.
Entrega en tiempo real
Envío de mensajes instantáneos y estados en lugar de sondeos, a través de Pusher, Ably o Firebase, con un intervalo de sondeo alternativo. La recolección está bien para la mayoría de los sitios.
Notificaciones push de Google
Alertas de dispositivos para agentes mediante Pusher Beams o OneSignal, con un dispositivo de interés.
Web Push (VAPID)
Browser push usando sus propias claves generadas sin ningún proveedor externo, generado aquí, no en Danger Zone.
Compartir voz, vídeo y pantalla
TURN credenciales para que las llamadas se conecten a través de redes restrictivas, utilizando Cloudflare o Twilio credenciales o su propio TURN URL, nombre de usuario y credenciales.
Flujo de trabajo de bandeja de entrada
Configuración del espacio de trabajo del agente en lugar de la configuración del visitante: SLA de primera respuesta en minutos, vistas guardadas de colas, métodos abreviados de teclado y paleta de comandos, búsqueda dentro de conversaciones y tickets de clientes en el inspector.
Canales de mensajería
WhatsApp, SMS, Facebook Messenger, Instagram, Telegram, X Direct Messages y LINE, cada uno con su propio interruptor de respuesta automática de IA, además de un interruptor para políticas de acciones de IA en los canales, una opción de cancelación de respuestas y la plantilla de re-engagement de WhatsApp.
✅
Una vista previa en vivo del widget en la parte inferior de la pestaña se actualiza a medida que editas, así que úsala en lugar de volver a cargar tu sitio web para comprobar un cambio.
Configuración
Configuración: OpsIQ Escritura
Tickets respondidos por escrito: respuestas automáticas, el sistema de tickets nativo, escalación, horarios comerciales, enrutamiento y los correos electrónicos dirigidos al cliente.
Auto-respuesta
Mostrar OpsIQ Botones de Escritura
Agrega los botones de ayuda para escribir a sus agentes en el panel de administración.
Habilitar respuesta automática de ticket
Hace colas de nuevos tickets y responde a ellos después de un retraso. Comience con esto apagado y revise los borradores durante una semana, los reembolsos, cancelaciones y cambios de acceso siempre deberían llegar a una persona.
Departamentos de respuesta automática
Cualquier cosa que no esté en la lista se deja para un humano, lo cual es el valor predeterminado seguro.
Programa de retraso en la respuesta (minutos)
Cuánto tiempo esperar antes de enviar la respuesta automática: una respuesta instantánea se lee como un robot; unos minutos se leen como un equipo rápido.
Máximo de respuestas de IA por ticket por departamento
Una gorra por partida, por ejemplo Billing1y Apoyo3Sin una gorra un hilo confuso puede bucle.
Longitud, estado e identidad de la respuesta
El número máximo de tokens de escritura, el estado del ticket después de una respuesta y después de un escalamiento, y a qué cuenta de administrador se atribuyen las respuestas automáticas. Utilice una cuenta con un nombre claro para que el personal pueda distinguir las respuesta de IA de las humanas.
Operaciones de ticket nativas
Sistema de tickets nativo
El sistema de tickets integrado en OpsIQ, para instalaciones sin un servicio externo.
Canalice el correo electrónico entrante en tickets nativos
Convierte el correo entrante en tickets. OpsIQ Suministra el punto final URL, token de autentificación, ruta del script y binario PHP Cualquier cosa que pueda publicar en ese punto final puede crear tickets, así que mantén el token secreto.
Respuestas de múltiples vueltas y retraso y debounce
Si la IA sigue respondiendo a medida que continúa la conversación, y si espera una ventana silenciosa para que tres mensajes rápidos reciban una respuesta considerada. La ventana silencioso es el mejor ajuste único para hacer que las respuestas automáticas se sientan considerados.
Portal de soporte público
Una página orientada al cliente donde cualquiera puede crear y hacer un seguimiento de un ticket, con una línea opcional de bienvenida Su dirección y apariencia se configuran en la pestaña Portal de soporte.
Formato del número de ticket
Cuántas letras aleatorias aparecen en los números de ticket generados.
Envíe correos electrónicos a sus clientes en su propio idioma
Los correos electrónicos del personal nunca cambian de idioma: las notificaciones, alertas de departamento, reuniones informativas e informes programados permanecen en el idioma de su sistema.
Agradecimientos y confirmaciones
Un acuse de recibo fijo en los nuevos tickets, además de mensajes de confirmación cuando se abre un ticket, cuando se deja una opinión y cuando se cierra un ticket. Cada uno con una vista previa en vivo. También hay un envoltorio global de plantilla de correo electrónico y el enlace detrás del botón Ver su ticket.
Revisión de spam con IA
Filtra los tickets de remitentes desconocidos y puede mover automáticamente el spam sospechoso, pero deje la acción automática desactivada hasta que haya visto su juicio.
Cierre automático de tickets inactivos
Cierra un ticket después de varios días sin respuesta, indicando al cliente en el mensaje de cierre cómo volver a abrirlo.
Horario de trabajo (calendario SLA)
Zona horaria, horarios de apertura y cierre, días laborables y festivos para los temporizadores de primera respuesta y resolución. Un calendario separado del horario laboral en Chat con el cliente.
Asignar automáticamente nuevos tickets
Asignación automática, opcionalmente solo a los agentes que están en línea, con habilidades de agente y una sensibilidad de coincidencia para el enrutamiento basado en habilidaden.
Sugerir tickets duplicados
Detecta cuando un cliente abre un ticket cercano al que ya tiene, con una sensibilidad de coincidencia ajustable.
Encuesta de satisfacción después del cierre
Envía una encuesta por correo electrónico un día después del cierre. Los resultados aparecen en la página de CSAT.
Notificar al departamento por correo electrónico
Envía un correo electrónico al departamento cuando llega un nuevo ticket, los destinatarios son los miembros de ese departamento y no la dirección del buzón del departamento, que es la dirección entrante a la que llegan los tickets.
Lo que la IA puede leer
Acceso a datos de clientes AI
Un interruptor principal más permisos individuales de solo lectura para el resumen del perfil del cliente, facturas, transacciones, saldo de crédito, productos y servicios, dominios, servidores vinculados y una visión general de la cuenta de alto nivel. Comience con el resumer del perfil y agregue categorías según las respuestas lo necesiten.
Escalada y conocimiento
Habilitar escalado de ticket AI
Mueve un ticket a un departamento más adecuado antes de responder. Usted elige los departamentos permitidos, el retraso en la comprobación y puede escribir sus propias instrucciones de notificación de escalada.
Configuraciones de conocimiento
Ya sea que las respuestas utilicen el lenguaje del cliente, ya sea en enlaces arrastres y FAQs, si la AI lee imagen yPDFapegos, el modo de respuesta al conocimiento, si importaJSONEl conocimiento se utiliza, y si pueden aparecer enlaces de origen. Use enlaces arrastrados y FAQs deben estar en, o la AI está adivinando.
Detener la respuesta automática después de una respuesta humana
Una vez que el personal responde, la IA deja de responder ese ticket y puede hablar por encima de su propio agente.
Instrucciones de ticket y correo electrónico
Instrucciones de texto libre que dan forma al tono y contenido de cada respuesta, con un ejemplo cargable para trabajar. Sé específico sobre lo que la IA nunca debe hacer.
Importar conocimientos de JSON
Sube o pega un archivo de conocimientos JSON para el asistente de redacción.
Botón de estudio
Un diseñador completo para el botón orientado al cliente: estilo de visualización, tamaño, etiqueta, icono, forma, ancho mínimo, estilo de fondo con colores primarios y secundarios, ángulo degradado, borde, radio de esquina, sombra, tipografía, relleno, animación inactiva, movimiento y colores del cursor y anillo de enfoque, además de un cuadro personalizado CSS para cualquier cosa que los controles no cubran.
Configuración
Configuración: Portal de soporte
El sitio orientado al cliente donde las personas crean y hacen un seguimiento de los tickets y leen tus artículos de ayuda. Esta pestaña controla cómo se llega a ella y cómo inician sesión los clientes; su diseño visual se realiza en el estudio del portal de soporte.
Portal Studio o Embedded Ticket Portal: ¿cuál de los dos prefiero?
Estos son dos productos diferentes y la gente los mezcla constantemente. Resuelven problemas diferentes, y es normal que funcionen ambos juntos.
Soporte Portal Studio: un lugar que envía clientes a
El estudio diseña un Sitio de soporte completo que OpsIQ aloja para ustedTiene su propia dirección web, o su propio dominio, y lleva toda la experiencia de autoservicio: artículos de ayuda con búsqueda, el formulario de solicitud, historial de tickets, inicio de sesión del cliente y el asistente. Elige una plantilla, trabaja en Tema, Navegación, Diseño, Conocimiento, Pie de página, Marca, Tickets, Asistente, Formulario y CSS, previsualiza en tamaños de escritorio, tableta y teléfono, luego publica.
Úselo cuando Quieres un destino de marca al que puedas dirigir a cada cliente, y prefieres no construir o mantener una área de soporte dentro de tu propio sitio web.
Portal de entradas embedida: entradas dentro de su propio sitio
El embed pone Solo la experiencia de entrada en una página de su propio sitio webLos clientes abren, hacen un seguimiento y responden a las solicitudes de soporte sin salir nunca de tus páginas, y tu propio encabezado, navegación y diseño permanecen exactamente como están. Establece el diseño, la apariencia y las reglas de acceso en el creador de widgets, previsualiza el resultado y luego copia el fragmento incrustado en tu página.
Úselo cuando Ya tienes un sitio web o una aplicación con su propio diseño, y quieres que el soporte se produzca dentro de él en lugar de entregar al cliente a otra dirección.
La versión corta
El estudio construye Un lugar al que envías a tus clientes. El inserto trae entradas Lleve a sus clientes allí donde ya estánMuchas empresas utilizan ambos, incrustando el widget de ticket en su área de cuenta para solicitudes contextuales y manteniendo el portal alojado como destino completo de autoservicio con artículos y búsqueda. Son switches independientes.
Dirección y acceso
Modo de acceso
Si el portal está abierto para cualquiera o restringido a clientes que han iniciado sesión, los portales abiertos reciben más tickets y más spam.
Opciones de diseño
Si el portal y el centro de ayuda comparten un héroe o usan dos, qué navegación y pie de página aparecen en ambas superficies y la etiqueta de sección de navegacion.
Dirección del portal
La dirección que usan los clientes. Elige un nombre y OpsIQ muestra el portal resultante y las direcciones de centro de ayuda correspondientes.
Su propio dominio
Ofrece el portal desde un dominio que es de su propiedad, como support. yourdomain. com.
Portal de tickets integrado
Activa el widget desplegable descrito anteriormente, y abre el creador de incrustaciones donde se puede elegir el diseño, la apariencia y las reglas de acceso, previsualizar el resultado y copiar el fragmento para su página. Esto no es Portal Studio: el estudio diseña el portal hospedado, esto pone los tickets dentro de su propio sitio.
Cómo inician sesión los clientes
El inicio de sesión del personal se configura en Configuración, Seguridad. Set up staff login in Settings, Security.
Métodos de inicio de sesión
Qué opciones aparecen en la página de inicio de sesión. El conector y el inicio de sesiones por correo electrónico funcionan automáticamente.
Inicio de sesión social
Proveedores de cuentas de consumidores, cada uno necesita un ID de cliente y secreto, con la dirección de redirección proporcionada por OpsIQ para registrarse con ese proveedor.
Inicio de sesión único (OIDC)
Inicio de sesión del cliente a través de un proveedor de identidad, con emisor URL, ID de cliente, secreto y una lista opcional de dominios de correo electrónico permitidos.
Cliente SAML 2.0
The SAML equivalent. OpsIQ Suministra la respuesta ACS.URLID de entidad del IdP, inicio y cierre de sesión URLs, X 509 certificado y nombres de atributos opcionales. Turn SAML En Métodos de inicio de sesión o no aparecerá.
Inicio de sesión sin problemas desde tu aplicación
Un enlace profundo firmado para que un cliente que ya ha iniciado sesión en su aplicación aterrice en el portal sin tener que volver a iniciar sesión. OpsIQ Suministra el secreto de firma, portal URL El generador de enlaces de prueba firmados es una herramienta que se puede usar antes de escribir cualquier código.
Cierre sesión en todas partes
Al cerrar sesión en el portal, también se cierra la sesión del cliente en su aplicación.
Admisión y protección
Campos del formulario de solicitud
Cada campo adicional hace que se pierdan envíos, así que solo pida lo que necesita para clasificar los datos.
Protección contra spam y abuso
Un honeypot y un límite de velocidad siempre protegen el formulario público. Encima, puede bloquear direcciones de correo electrónico desechables, agregar sus propios dominios bloqueados y añadir un CAPTCHA utilizando Google reCAPTCHA o Cloudflare Turnstile. reCAPCHA reutiliza las claves ya establecidas en Configuración, Seguridad; Las claves del torniquete se ingresan aquí.
Análisis de portal
Un resumen de solo lectura de la actividad del portal durante los últimos treinta días.
Configuración
Configuración: Permisos, Licencia, Cron y Zona de Peligro
El grupo Sistema, además de los controles de acceso del equipo que deciden quién puede ver qué pestaña de Configuración.
Acceso y permisos del equipo
Permisos por administrador
Cada administrador recibe un conjunto explícito de permisos que cubren el acceso a la bandeja de entrada del chat, las secciones de Configuración que pueden editar y sus departamentos. Cualquier persona con el rol de Administrador completo siempre tiene todos los permisos.
Licencia
Muestra su licencia actual, lo que le da derecho y su estado.
Configuración de Cron
En la nube OpsIQ, las tareas programadas se ejecutan por ti y la pestaña está oculta. Una línea de crontab controla cada tarea programada: respuesta automática del ticket, enrutamiento de escalación, actualización de tipo de cambio, sondeo de buzón y sincronización de conector.
1
Copiar la línea
La pestaña muestra la línea crontab exacta para su servidor con el binario PHP correcto ya elegido.
2
Añádelo a crontab
Ejecute crontab -e como el usuario que ejecuta PHP y pegue la línea única, en cPanel use la herramienta Cron Jobs.
3
Verificar
En un minuto, los azulejos de latidos del corazón se iluminan. Utilice Ejecutar ahora para probar inmediatamente en lugar de esperar.
El panel de heartbeat muestra la última ejecución, duración y lo que se procesó para la cola de respuesta automática y el correo electrónico y la encuesta del conector. Advierte cuando la última operación vino desde el botón web manual en lugar de un cron del servidor real, y cuando un heartbeat ha quedado obsoleto.
Zona de peligro
Eliminar todos los datos de seguimiento
Borra todo lo que OpsIQ recopila o genera. Usted marca lo que desea incluir y escribe la frase de confirmación exactamente. Configuraciones y configuración del sitio, direcciones bloqueadas, todo lo escrito por su equipo (base de conocimientos, preguntas frecuentes, traducciones, diseños de portales, definiciones de acciones) y recibos de consentimiento se conservan todos.
Purgar datos más antiguos que
El mismo barrido limitado a registros más antiguos que 30, 60, 90 o 180 Para la retención automática continua, utilice los valores de retención en General y Seguimiento en su lugar y deje que la tarea programada lo haga.
🚫
Exporta una copia de seguridad desde Configuración, General antes de usar cualquier cosa en Zona de peligro. Estas acciones no se pueden deshacer.
Configuración
Administrar tu equipo
Invite a los miembros del equipo y asigne roles para controlar quién puede acceder a qué.
EquipoLa pantalla del equipo real: cada administrador con su contacto, papel y los departamentos que pueden llegar, agentes en alcance, propietarios llenos.
Funciones
Propietario
Acceso completo, incluida la licencia, facturación y zona de peligro. Uno por instalación.
Administrador completo
Acceso completo excepto licencia y zona de peligro. Puede administrar los administradores.
Agente
Limitado a los departamentos asignados. Solo tickets, chats y análisis.
Invitar a miembros del equipo
1
Ir a Equipo
Ve a Equipo en la barra lateral.
2
Haga clic en Invitar
Ingresa el correo electrónico del miembro del equipo.
3
Establecer el rol
Elija Propietario, Administrador completo o Agente.
4
Asignar departamentos
Para Agentes, seleccione departamentos accesibles.
5
Enviar invitación
Recibirán un correo electrónico con un enlace de configuración.
Configuración
Rendimiento del equipo
Cómo se realiza su equipo de soporte. El acceso es por permiso, no por papel: el permiso de vista abre la página, el permiso del manejo desbloquea objetivos, QA y las lecturas identificativas de los compañeros, y el permiso para recompensa-financieras es lo que agrega la ficha Recompensas. Un líder del equipo puede ser dado cualquiera de estos sin convertirse en un administrador completo.
Rendimiento del equipoLa pantalla de rendimiento del equipo real: cada agente puntuado en volumen y CSAT, con un saldo de recompensa que puede pagar por fila.
Cómo se organiza la página
El rendimiento del equipo es de cinco fichas. Cada respuesta una pregunta diferente, y se ordena por lo urgente que generalmente te necesitan.
01 Centro de mando
Estado de cola en vivo, resultados del cliente contra sus objetivos, cómo se gastó la capacidad, situaciones que necesitan una decisión y el índice de evaluación por persona.
02 Compañeros de equipo
La tabla de clasificación, el reconocimiento (más mejorado y estriado), las misiones y el control opt-in para quién puede ver la clasificación.
03 Calidad
Partituras, evaluaciones registradas, acuerdo de revisión corregido por riesgo, deriva del revisor y disputas de pruebas.
04 Rewards
Valor token, reclamaciones de pago y la asignación del período gobernado: autoriza un techo financiado, revisa el previsualización, finaliza.
05 Historia
Cómo el espacio de trabajo se ha movido con el tiempo: métricas de tendencia con un gráfico, y una hoja de calor 28_-día de cobertura mostrando cuando el equipo estaba trabajando en realidad. Cada tarjeta se esconde hasta que hay suficiente historia para dibujarlo.
No es cero
Un compañero de equipo sin suficiente volumen manejado —o cuyas dimensiones llevan evidencias suman menos de la mitad del peso configurado— se muestra como un no marcado. Su puntuación, rango y banda están vacías y su desglose está oculto. Esto es deliberado: hacer una medición ausente como cero pone a alguien en el fondo de un ranking para tener una semana tranquila. Los umbrales de evidencia son configurables por espacio de trabajo en Targets & puntuación.
Los dos umbrales de evidencia hacen diferentes trabajos y vale la pena mantenerlos separados. El manejo mínimo decide si alguien está marcado en absoluto. Las calificaciones mínimas no afectan el puntaje: decide la adjudicación y elegibilidad de recompensa. Así que un compañero de equipo puede ser completamente anotado y todavía ser inelegible para ese período, porque demasiado pocos clientes los valoraron.
💡
Cada figura tiene un alcance en el espacio de trabajo que está viendo y el rango de tiempo que elige. Un compañero de equipo trabajando en dos espacios de trabajo separados tiene un registro independiente en cada uno. Dos excepciones merecen saber: un sitio GROUP es un espacio de obra, por lo que sus dominios miembros se miden juntos; y la vista All-sites deliberadamente mide todo a la vez.
El índice de rendimiento
Un compuesto de cinco dimensiones, cada una medido contra un objetivo que se establece en lugar de contra colegas, luego se jaló hacia el centro cuando la evidencia detrás es delgada. Tenga en cuenta la dirección: el ajuste mueve la figura hacia 70, por lo que una puntuación excelente fina se tira abajo y una puntuación pobre delgado se levanta. Una mala primera semana en cuatro conversaciones no es un veredicto resuelto tampoco.
Calidad
Satisfacción del cliente de la retroalimentación verificada. Complementada por los resultados de QA Scorecard donde existen y se rigen.
Responsabilidad
Primera respuesta en los percentiles P50 y P90, contra sus objetivos.
Resolución
Tiempo de resolución y tasa de resolución de un solo toque.
SLA
La retención contra el SLA que configuraste, más los cargos en riesgo y los conteos incumplidos.
Stewardship
Tasas de reabrir y transferir — el trabajo que regresa.
💡
Las pesas son configurables y relativas; no tienen que totalizar 100. La falta de evidencia sólo puede bajar el índice, nunca elevarlo — el peso configurado completo permanece en el denominador.
Capacidad y tiempo productivo
Ocupación, tiempo productivo, resuelto por hora productiva y parte en línea de la ventana. La utilización no se reporta deliberadamente: necesita horas programadas como denominador, OpsIQ no tiene una fuente de lista o cambio, y un denominador sustituido sería una conjetura que llevaba un signo porcentaje. Se lee como indisponible con esa razón adjunta.
⚠️
La ocupación dice cómo se pasó el tiempo, nunca lo bien que fue gastado y nunca financia, puertas o tamaños de un pago. Un compañero de equipo sin pruebas de la manija lee como indisponible, nunca como cero.
Garantía de calidad
Un marcador es el resultado de las conversaciones reales contra los críticos. Sólo una versión publicada puede recibir una evaluación, y publicar una nueva versión nunca reescribirá lo que ya se ha marcado. Una revisión es evidencia sobre una conversación, no un veredicto en una persona.
Acuerdo de revisión
Reportado como una estadística corregida por casualidad (Cohen's y Fleiss' kappa), no un porcentaje de acuerdo crudo. Dos revisores que pasan todo coinciden 100% del tiempo mientras no llevan información.
Direccionalidad de los revisores
Si un revisor marca sistemáticamente más duro o más suave que sus colegas en la misma conversación, una comparación con el resto del panel, no una tendencia a lo largo del tiempo. Necesita una interacción revisada independientemente más de una vez.
Controversias
Un compañero de equipo puede disputar formalmente evidencias registradas sobre ellos. Una disputa abierta bloquea la finalización de los períodos de recompensa hasta que se resuelve.
Auto-revisión
Un compañero de equipo no puede presentar una evaluación de sí mismo.
⚠️
Las evaluaciones de grado AI no pueden influir en el pago hasta que se publique una calibración mostrando que el modelo está de acuerdo con los revisores humanos lo suficientemente cerca, medido por kappa contra una muestra mínima. Una puerta abierta significa que el Modelo está de conformidad con la gente lo suficiente para contar — nunca significa que sea correcto el modelo.
Reconocimiento
El ranking solo ha documentado modos de falla: juegos métricos, quemadura y afeitado público de quien es el último. Tres alternativas se sientan al lado de él.
Mayoría mejorada
Medido contra el propio record anterior de un compañero, nunca contra colegas, con la reducción por lo que un pequeño denominador no puede comprar una victoria.
Streaks
Períodos consecutivos que reúnen una barra fija, declarada — puntuación media, volumen manejado, calificaciones contadas y tasa de retroalimentación negativa, todas las cifras absolutas. Todos pueden mantener un estreptoco simultáneamente, por lo que no crea ningún ranking, y un colega que tenga un mes excepcional no puede romper el suyo.
Clasificación de Opt-in
Un compañero de equipo siempre ve su propio índice; si ven a los colegas es una decisión del espacio de trabajo. Las bandas percentiles pueden ser publicadas en lugar de posiciones absolutas.
💡
El reconocimiento nunca toca dinero. Una estrecha no puede financiar una paga o romper uno, y la mayoría mejorada no es una categoría de premio.
Búsquedas
Un objetivo al que trabaja el equipo, medido contra una barra declarada fija en lugar de contra uno contra otro, para que todos puedan aclarar la misma búsqueda en el mismo período.
Alcance y cadencia
Individual o equipo; un-off, repetible, o estacional con una ventana explícita.
Criterios
Conversaciones manejadas, clasificaciones recibidas, días activos, calificación media o tasa de retroalimentación negativa. Todo absoluto — ningún métrica cuyo valor depende de lo que hicieron los colegas.
Guardia de calidad
Se requiere en cualquier búsqueda con un objetivo de volumen. Esconder el número mientras que la calidad cae por debajo del suelo retiene la misión más que completarla, y se muestra como retenido, no inacabado.
Límites de repetición
Un gorro per-período, impulsado por el criterio más lento, además de una refrigeración opcional antes de que un repetitivo pueda contar.
Búsquedas de equipo
Progreso compartido sin publicación de atribución por persona, por lo que una búsqueda en equipo no puede convertirse en un tablero de liderazgo.
Cursos de capacitación
Una sesión de coaching es un disco, no una charla. Tiene un entrenador, un compañero siendo entrenado, un tiempo programado, puntos de conversación acordados, y un resumen escrito después. Los chats reales, las entradas y evaluaciones QA están marcados a él como evidencia, por lo que la conversación está anclada al trabajo que realmente sucedió en lugar de una impresión recordada.
Puntos de conversación
De acuerdo antes de la sesión, así que el compañero no se está paseando en una sorpresa.
Pruebas intencionadas
Chats, tickets y evaluaciones de QA adjuntas a la sesión. Un pin almacena una referencia — un tipo y un id— no una copia, por lo que siempre apunta al registro en vivo. OpsIQ no verifica el id antes de aceptarlo.
Temas de acción
Cada uno con un propietario y una fecha de vencimiento. Un artículo pasado su fecha se muestra como atrasado —un estado derivado, no un estatus que alguien tiene que recordar para establecer.
Nota privada
El compañero que está entrenado nunca puede leerlo, no como agente, no en cuanto gerente, no de propietario. Ese cheque corre antes de cada otro permiso y no se puede anular.
¿Quién puede ver una sesión?
El entrenador, el compañero de equipo y cualquiera con permiso para la gestión del equipo. Nadie más, incluyendo a otros compañeros en el mismo departamento.
Auditoría
Cada creación, actualización, pin, unpin y finalización se registra con lo que cambió, por quien.
💡
El entrenamiento es deliberadamente separado de la puntuación y del dinero. Una sesión no cambia el índice de nadie, no cierra una recompensa, y no aparece en la tabla de mandos.
Recompensas y premios
La actividad grabada se convierte en fichas con un valor de efectivo que usted establece. El camino a un pago es deliberadamente lento y cada paso está registrado.
1
Establecer el valor de ficha
Cuantas fichas equivalen a cuánto dinero, y lo que cada actividad vale.
2
Autorizar el techo financiado
Para un período de calendario cerrado, un administrador completo declara las fichas máximas que puede pagar. Ahorrar el formulario de configuración no autoriza un presupuesto y no puede alterar un techo que ya ha sido autorizado.
3
Revisar el previsualización
Los destinatarios, la reserva y la razón por la que alguien es ineligible. Las disputas de evidencia abierta bloquean este paso.
4
Finalizar
La asignación se registra permanentemente con la evidencia detrás de ella. Un período que no asignó nada puede ser anulado y re-correo. Una que emitió fichas debe ser revertida primero: OpsIQ escribe una entrada compensatoria contra cada billetera y nunca elimina el original, por lo que el libro muestra lo que sucedió y por qué, y sólo entonces es el período liberado. La inversión se niega si alguien ya ha cobrado más que los nombres de la cantidad recuperado.
⚠️
La elegibilidad requiere una retroalimentación verificada del cliente. Las puntuaciones de calidad AI pueden complementar ese juicio pero nunca reemplazarlo, y un compañero demostrado como Unscored no es elegible. Cada contribuyente está subido a 25% por encima de su parte esperada del período, por lo que un mes muy alto de volumen no puede absorber todo el presupuesto.
💡
El dueño de la cuenta no participa en premios o recompensas token, sin cambio: autorizan el techo financiado y finalizan cada asignación, y no hay nadie por encima de ellos para aprobar lo que se pagarían. Su trabajo es medido, marcado y clasificado en el tablero exactamente como cualquier otro.
Todos los demás participan por defecto, lideran y copropietarios incluidos. Para dejar a alguien fuera, abrirlos en Departamentos de Equipo y apagar la opción Tomas parte en premios y recompensas. Su trabajo sigue marcado y mostrado; ellos deja de ser un candidato desde ese punto en adelante, y nada ya finalizado se toca.
⚠️
Nadie aprueba dinero por sí mismo. Porque la gente que puede participar son también las personas que pueden aprobar pagos, OpsIQ se niega a pagar o a acreditar en su propia cartera, pagando su propio reclamo, finalizando un período en el cual usted sería pagado y finalizando una indemnización que ganaría. Otro administrador completo o el propietario debe hacerlo. Pagar todas las reclamaciones salta su cuenta y lo reporta como esquiado, no falló.
¿Quién puede ver y hacer lo que
Ver el rendimiento del equipo
El tablero, estado en vivo, capacidad y calidad de visión general para el espacio de trabajo.
Gestión de la actuación del equipo
Metas y puntuación, exportaciones, tarjetas de puntuación y evaluaciones QA, coaching, misiones y lecturas que llevan datos identificativos de colega como la historia de los aminas y el historial de premios.
Ver el equipo recompensa financiera
Saldos, valores de efectivo, notas de reclamación y referencias de pago - separados de las pruebas de rendimiento porque es la nómina de sueldos-adyacente.
Administrador completo sólo
Cada mutación monetaria: pagar una recompensa, pagar o rechazar una reclamación, autorizar un presupuesto, finalizar, anular o invertir una asignación y establecer la tasa de ficha a cambio. Esto no puede ser delegado concediendo un permiso.
Usarlo bastante
El índice de rendimiento es evidencia de gestión, no una decisión automática de empleo. Abre las conversaciones fuente detrás de un número antes de actuar en él, y pesa la complejidad del caso, horarios, necesidades de permiso y accesibilidad. Una semana difícil no parece un patrón sostenido.
Configuración
Sus sitios (espacios de trabajo)
Los sitios (espacios de trabajo) te permiten administrar varios sitios web desde una instalación de OpsIQ, cada uno con su propio seguimiento, IA, conectores y acceso del equipo.
SitiosLa pantalla de Sitios reales: cada sitio es su propio espacio de trabajo aislado (dominio propio, conector y configuración), añadido y abierto de una lista.
Crear un sitio
1
Ir a Sitios conectados
Navegue a Sitios conectados.
2
Añadir un nuevo sitio
Ingrese el nombre, dominio y descripción.
3
Copiar la clave del sitio
Cada sitio obtiene una clave única (site_xxx) para el fragmento del widget.
4
Configurar de forma independiente
Cada sitio tiene su propia IA, conectores y configuraciones.
¿Cuántos sitios puedo tener?+
Depende de su plan de licencia. Compruebe los detalles de la licencia.
Configuración
Licencia y plan
Su licencia OpsIQ controla las funciones, los límites del sitio y el saldo de crédito de AI.
LicenciaEl verdadero Centro de licencias: su plan y estado activo, la clave enmascarada, el saldo de crédito de IA y una nueva verificación forzada con un solo clic.
Clave de licencia
Introduzca en Configuración > Licencia. Validado contra el servidor de licencias OpsIQ.
Latidos cardíacos de licencia / validación
OpsIQ Utilice Forzar comprobación remota cuando necesite un resultado inmediato; el diagnóstico identifica los errores de validación y actualiza la caché de licencia local firmada. DNS, HTTPS o problemas de hora del servidor.
Plan
Determina la disponibilidad y los límites de las funciones.
Límite de sitio
Número máximo de espacios de trabajo.
Créditos de IA
Si usas IA administrada, tu saldo de crédito se muestra aquí.
Expiración
Renueva antes de la fecha de vencimiento para evitar interrupciones del servicio.
¿Qué sucede cuando mi licencia caduca?+
El seguimiento, los tickets y el CRM continúan. Las funciones de IA se ponen en pausa hasta la renovación.
Configuración
Perfil, contraseña y autenticación de dos factores
Cada administrador puede mantener su propia identidad, preferencias de trabajo, contraseña y autenticación de dos factores.
Pantalla de productoLa página de perfil separa los detalles personales, el idioma/zona horaria, avatar/firma, contraseña y autenticación de dos factores.
La configuración del perfil pertenece al administrador que ha iniciado sesión y no cambia la marca de espacio de trabajo. Utilice una contraseña única y habilite la autenticación de dos factores. Cambiar un correo electrónico o la configuración de autenticación puede requerir una nueva verificación o un nuevo inicio de sesión.
Configuración
Preferencias de notificación
Las preferencias de notificación controlan qué eventos operativos llegan a un administrador en el producto o por correo electrónico.
Pantalla de productoLa página de notificaciones proporciona opciones por evento en la aplicación y por correo electrónico, además de una lista de notificación reciente.
Las preferencias cubren la asignación de tickets, respuestas al cliente, advertencias de SLA, entrega de chat y eventos de aprobación de IA. Mantenga las señales operativas urgentes habilitadas en algún lugar; desactivar el correo electrónico no necesariamente desactiva la notificación dentro de la aplicación.
Configuración
Descripción general de seguridad
La descripción general de seguridad es la primera pantalla para evaluar bloqueos, ataques de inicio de sesión, sesiones de amenazas, tendencias de seguridad e integridad de eventos.
Pantalla de productoSecurity Overview combina tarjetas de riesgo actuales, una tendencia del 14 día, lista de atacantes, fuente de eventos y estado de integridad.
Utilice las tarjetas de título para clasificar, luego abra la pestaña relacionada Auditoría, Inicios de sesión fallidos, Bloqueados. IPs o JavaScript Página de errores para el trabajo a nivel de registro. 14 Las sesiones de alta amenaza deberían ser investigadas en comparación con la evidencia del visitante, solicitud y autenticación antes de aplicar un bloqueo permanente.
Configuración
Registro de auditoría a prueba de manipulación
El registro de auditoría registra quién hizo qué, cuándo, a qué objeto, en qué nivel de riesgo y si tuvo éxito.
Pantalla de productoLa página de auditoría proporciona actividad con acciones, actores, riesgos, objetivos y resultados que se pueden buscar.
Filtrar por acción, riesgo y actor; exportación CSV o JSON La cadena hash ayuda a detectar filas de auditoría que faltan o se han alterado, pero no sustituye las copias de seguridad protegidas ni el acceso restringido a la base de datos. Trate las exportaciones de auditorías como confidenciales porque pueden identificar usuarios, registros y acciones de seguridad.
Operaciones
Diagnósticos
Los diagnósticos convierten las comprobaciones de subsistema en resultados de estado claros y acciones directas siguientes.
Pantalla de productoLos diagnósticos agrupan las comprobaciones de estado del widget, IA, tickets, integraciones, inteligencia del sitio, tareas en segundo plano, automatización de CRM, licenciamiento y almacenamiento.
La página comprueba la velocidad del sitio, el ranking/palabra clave/backlink/datos locales, la IA y la puerta de enlace de acción, los tickets, las auditorías/rastreadores, la integración/admisión de eventos, las tareas en segundo plano, las automatizaciones de CRM, la licencia, el widget y los servicios relacionados con el producto.
Después de un cambio, actualice y confirme que el subsistema afectado vuelve a estar sano. Una página verde de diagnóstico es necesaria pero no suficiente para el lanzamiento; complete también la lista de comprobación previa al lanzamiento.
Configuración
Seguridad y acceso
OpsIQincluye múltiples capas de seguridad para proteger su administración, datos yAPIacceso.
Cómo funcionaSeguridad
Características de seguridad
Autenticación de administrador
Correo electrónico/contraseña con 2FA opcional.
Bloqueo de inicio de sesión
Bloqueo temporal después de demasiados intentos fallidos.
IP bloqueo
Bloquear IPs o rangos CIDR de acceso a sitios rastreados.
Puntuación de amenazas
Los visitantes que suponen una amenaza alta pueden ser bloqueados automáticamente.
Aplicación de HTTPS
Requerido para todas las conexiones. HTTP redirige a HTTPS.
Encabezados de HSTS
La seguridad de transporte estricta evita los ataques de degradación.
Protección de CSRF
Todos los formularios de administración incluyen tokens CSRF.
Protección contra XSS
Toda la entrada del usuario se escapa. Los encabezados CSP restringen la ejecución de scripts.
Protección de SSRF
Los webhooks salientes bloquean las direcciones IP privadas/internas.
Configuración recomendada
1
Habilitar 2FA
Para todas las cuentas de administrador.
2
Contraseñas fuertes y seguras
Mínimo 12 caracteres, mixto.
3
Cuentas de revisión
Eliminar el acceso de los antiguos miembros del equipo.
4
Monitorea los inicios de sesión fallidos
Revisa semanalmente si hay patrones sospechosos.
5
Manténgase actualizado
Aplique actualizaciones de forma inmediata para obtener parches de seguridad.
Configuración
Roles y permisos
El control de acceso basado en roles le permite controlar lo que puede hacer cada miembro del equipo.
Roles & permisosLa matriz de roles de un vistazo: El propietario obtiene todo, el administrador completo todo menos la facturación y la zona de peligro, el agente solo sus tickets de alcance.
Roles predeterminados
Propietario
Todo, incluyendo licencias, zonas de peligro y gestión de instalaciones.
Administrador completo
Todo excepto licencia y zona de peligro. Puede dirigir equipo.
Agente
Responda a los tickets y chats del departamento asignado, vea las estadísticas. Sin acceso de configuración, equipo o seguridad.
¿Puedo crear roles personalizados?+
Tres roles integrados más la asignación de departamentos proporcionan un control detallado.
Configuración
Bloqueado IPs
Administrar direcciones IP bloqueadas para acceder a sus sitios rastreados.
Bloqueado IPsEl verdadero bloqueado IPs pantalla: bloquear un solo IPo un rango de CIDR, y gestionar la lista, cada una con su fecha, razón y un clic desbloquear.
Cómo bloquear
1
Ve a Seguridad > Bloqueado IPs
2
Agregar un rango IP o CIDR
Ejemplo: 203.0.113.42 o 203.0.113.0/24
3
Añadir una razón
Documenta por qué: spam, abuso, scraping, etc.
¿El bloqueo afectará a los usuarios legítimos?+
Si los clientes comparten un IP corporativo o una VPN, al bloquear ese _IP se bloquea a todos en él.
Configuración
Iniciativas de inicio de sesión fallidas
Todos los intentos de inicio de sesión fallidos a su OpsIQ admin.
Iniciativas de inicio de sesión fallidasLa pantalla de inicios de sesión Failed real: cada cuenta/IP con su cuenta de fracaso y último intento, bloquear una fuente de fuerza bruta directamente desde la fila.
Lo que muestra cada entrada
Fecha/hora
Cuando el intento sucedió.
Correo electrónico
Dirección de correo electrónico utilizada.
Dirección de IP
Fuente del intento.
País
Ubicación geográfica.
Razón
Contraseña incorrecta, bloqueada o no encontrada.
Señales de advertencia
Muchos intentos, mismo correo electrónico
Asegúrate de que la autenticación en dos pasos esté habilitada.
Muchos intentos, diferentes correos electrónicos
Ataque automatizado. Bloquear la fuente IP.
Países inusuales
Si tu equipo es local, los intentos extranjeros son probablemente ataques.
Configuración
analista de seguridad de IA
Una capa de analista opt-in sobre las páginas de Seguridad: veredictos, informes de incidentes, un resumen diario, una comprobación semanal de la postura, Preguntar por seguridad y políticas de bloqueo del token 0. Nunca se ejecuta en la ruta de solicitud del visitante.
Cada página de seguridad registra lo que ha sucedido, pero la lectura todavía requiere juicio. El analista de seguridad de IA agrega ese juicio en su lugar y está diseñado para no gastar casi nada: nunca se encuentra en el camino del beacon o del inicio de sesión, las reglas deterministas resuelven los casos obvios sin llamada de IA, los veredictos se almacenan en caché y la mejor salida del analista es una regla determinista que luego se aplica para siempre con cero tokens. Configuración → Seguridad; todos por defecto desactivados.
Lo que añade
Fichas de veredicto + Explicar
Bloqueado IPs Las filas de inicios de sesión fallidos y no exitosos muestran un chip benigno / sospechoso / hostil con una puntuación de confianza. Explicar abre el razonamiento, los hechos utilizados y las acciones Bloquear / Liberar con un solo clic. 24h, por lo que re-viewing an.IPLa entrada es gratuita.
Informes de incidentes
Los eventos relacionados se agrupan en un incidente (onda de inicio de sesión, análisis URL, ráfaga de bloqueo automático) con una línea de tiempo en inglés sencillo y un paso siguiente recomendado.
Resumen diario
Un resumen por día: ayer versus tu línea de base, bloqueos, incidentes y la única cosa que hay que hacer. Días tranquilos envían un all-clear determinístico con cero tokens.
Chequeo semanal de postura
Una lista de verificación para el endurecimiento del lunes (brechas 2FA, umbral de bloqueo frente al volumen real de ataques, alertas desactivadas) con una severidad, esfuerzo y solución exacta por elemento.
Preguntar a Seguridad
Un cuadro de preguntas en la vista general de seguridad que responde desde su estado de seguridad real. Preguntas profundas del servidor se entregan al chat del ingeniero administrativo en lugar de adivinarlas.
Propuestas de políticas + piloto automático
El analista propone reglas de bloque concreto como tarjetas Aprobar / Desestimar; las reglas aprobadas se aplican a cero tokens con un contador de golpes en vivo. El piloto automático opcional solo aprueba automáticamente las reglaes más seguras.
Configuración
Analista de seguridad de IA (security_ai_enabled)
Master switch. Enables verdict chips, Explain, and Ask Security. Only ambiguous IPs reach the model, batched into one call.
Resúmenes de incidentes (security_ai_incidents)
Agrupa los eventos en incidentes y escribe cada nueva historia. Se ejecuta sobre el cron de seguridad por hora existente.
Resumen diario (security_ai_digest)
Un resumen de seguridad por día en la campana y el Resumen. Días tranquilos no cuestan nada.
Revisión semanal de la postura (security_ai_posture)
La lista de verificación es completamente determinista y se puede modificar en cualquier momento.
Piloto automático de políticas (security_ai_autopilot)
Permite al analista activar sus propuestas más seguras sin supervisión: solo bloques reversibles con límite de tiempo, único IPs o rangos no más amplios que /24, Nunca compartido/móvil/privado, limitado 10 por hora, siempre auditado y deshacible.
💡
Cada llamada es etiquetada como Security_ai con su propia tapa mensual en AI Config → Guardacostas de Costo (default 300k fichas). Si la gorra se golpea, características degradan a lecturas deterministas. Bloquear, bloqueos y alertas nunca dependen de este presupuesto. El analista nunca puede eliminar datos, cambiar ajustes, tocar el libro mayor de auditoría o hacer una prohibición permanente.
Operaciones
Cron y automatización
OpsIQ utiliza un programador de productos para ejecutar encuestas por correo electrónico, automatización de tickets, agregados analíticos, retención, colas de IA, trabajo con CRM, informes y trabajos con conectores.
Pantalla de productoUna entrada cron del producto proporciona el ritmo cardíaco; OpsIQ decide qué trabajos internos se deben realizar.
Entrada cron de producto requerida
Añada esta línea a la crontab para el mismo servidor y entorno PHP que ejecuta OpsIQ:
Sustitúyase por /path/to/opsiq Use la ruta completa de PHP CLI cuando el host lo requiera, por ejemplo: /usr/bin/php8.4.
No utilice el nivel superior /cron.php Para el trabajo del producto. En este repositorio, ese ejecutor pertenece a un servicio separado que no es producto y está fuera de este manual. OpsIQ El corredor del producto es opsiq/cron/all.php.
Lo que impulsa el programador unificado
Colas de tickets y IA
Procesa respuestas automáticas, escalaciones, aprobaciones y otros trabajos de productos en cola.
Correo electrónico entrante
Buzones configurados para sondeos donde la sonda es el método de admisión seleccionado.
Análisis y sesiones
Ensambla sesiones y actualiza agregados programados cuando deben hacerse.
CRM y compromiso
Ejecuta tareas de puntuación, ciclo de vida, flujo de trabajo, campaña y informe programado que están habilitadas.
Retención y mantenimiento
Realiza el trabajo de limpieza, archivo, caducidad e integridad debido.
Conectores
Envía suscriptores cron de conectores y sondeos solo para los conecteurs instalados, habilitados y configurados.
Verificar cron
Abrir Configuración - Configurar cron y confirme que existe el producto runner.
Uso Corre ahora Una vez, luego confirme la actualización de los latidos del corazón de administración y encuesta.
Verificar Diagnósticos para un problema de heartbeat tardío, PHP CLI, base de datos o ruta de archivo.
Inspeccionar /tmp/opsiq-cron.log o la ruta de registro que seleccionó cuando falla una ejecución manual.
Sincronice por lotes sincronizaciones largas y almacene un cursor/punto de control para que la siguiente ejecución pueda continuar con seguridad.
🚫
Cuando el cron del producto se detiene, el trabajo basado en tiempo OpsIQ se detén o llega tarde aunque las páginas administrativas ordinarias aún pueden cargarse.
Operaciones
Operaciones de despliegue alojadas
Una implementación de OpsIQ alojada utiliza las mismas pantallas y flujos de trabajo del producto, mientras que el operador de alojamiento administra la capa del servidor. Los procedimientos comerciales de registro, planes, facturación y portal de cuenta están fuera de este manual.
Pantalla de productoLa operación hospedada cambia quién mantiene la infraestructura; no cambia cómo los clientes utilizan OpsIQ.
Lo que normalmente gestiona el operador de alojamiento
Servidor web, tiempo de ejecución PHP, servicio de base de datos, TLS y almacenamiento.
El cron del producto unificado y sus registros a nivel de servidor.
Actualizaciones de aplicaciones, monitorización de infraestructura y el proceso de backup definido por el acuerdo de hosting.
Lo que un administrador de OpsIQ todavía gestiona
Instalación de sitios web y widgets, configuración de IA, conocimiento, buzones y flujos de trabajo de soporte al cliente.
Acceso de equipos, departamentos, controles de seguridad, claves API, conectores, automatizaciones y ajustes de retención de datos.
Verificación del producto a través de Diagnósticos, el registro de auditoría, pruebas de conectores y comprobaciones reales de extremo a extremo.
Controles operativos
No asuma que un servicio administrado significa que todas las integraciones de productos están en buen estado.Confirme la última evidencia de copias de seguridad y política de retención con el operador de hosting, y utilice OpsIQ Diagnósticos después de cambios a DNS, correo electrónico, proveedores de IA, sitios web o conectores.
La incorporación comercial, las suscripciones, la facturación y la administración de cuentas de clientes permanecen fuera del manual OpsIQ.
Operaciones
Alojamiento en casa particular OpsIQ
A self-hosted OpsIQ Usted es responsable del tiempo de ejecución, la base de datos, el software y las aplicaciones. TLS, cron del producto, copias de seguridad, actualizaciones y monitoreo.
Pantalla de productoEl autohosting le da control de la infraestructura y hace que su equipo sea responsable de cada dependencia operativa.
MySQL 5.7+ o MariaDB 10.3 Crear una base de datos dedicada y un usuario con menos privilegios en la aplicación.
Servidor de web
Apache o Nginx configurado para el controlador frontal OpsIQ, los recursos estáticos y las reescrituras requeridas.
HTTPS
Necesaria para sesiones de administración, tráfico de widgets, claves API, webhooks y llamadas a proveedores.
Acceso de salida
Permita el acceso DNS y HTTPS a los endpoints de IA, correo electrónico, conector y licencia que haya habilitado.
Acceso a archivos
Los usuarios web y de CLI deben poder leer archivos de aplicaciones y escribir solo en las ubicaciones de tiempo de ejecución/almacenamiento documentadas.
Cron
Ejecute el programador de productos OpsIQ cada minuto con la misma configuración de aplicación y acceso a base de datos que el proceso web.
Secuencia de instalación
Cargue la versión en la raíz del documento deseado y conserve la estructura de directorios proporcionada.
Cree la base de datos y el usuario de aplicación, luego ingrese la configuración de base de información, URL canónico y licencia.
Ejecute el flujo de instalación/instalador y cree la primera cuenta del propietario.
Habilita HTTPS y verifica las redirecciones, cookies y rutas de acceso del widget público/API.
Abra Configuración - Cron Setup y Diagnósticos; ejecute el programador una vez y resuelva todas las dependencias fallidas.
Configure los procedimientos de copia de seguridad, restauración, pruebas, retención de registros y actualización antes de agregar datos de producción.
Actualizar de forma segura
Lea las notas de la versión y compruebe los requerimientos PHP/extensiones antes de cambiar archivos.
Haga una copia de seguridad de la base de datos y los archivos de aplicación/configuración, luego pruebe que la copia de respaldo se puede restaurar en una ubicación de prueba.
Implemente los nuevos archivos sin eliminar la configuración específica de instalación o datos en tiempo de ejecución.
Ejecute el proceso de migración/comprobación previa suministrado y verifique el inicio de sesión, seguimiento de widgets, tickets, correo electrónico, IA, conectores y cron.
Mantenga la versión anterior y el respaldo de base de datos disponibles para la ventana de reversión documentada.
🚫
El repositorio de nivel superior /cron.php No es el. OpsIQ Apunta la automatización del producto solo a. opsiq/cron/all.php.
⚠️
No elimines. schema_cache.json como mantenimiento rutinario, sino solo cuando las instrucciones del producto requieran explícitamente una reconstrucción de la caché de esquemas.
Operaciones
Guía de producción
Lista de comprobación y mejores prácticas para ejecutar OpsIQ en producción.
Guía de producciónUna lista de verificación para que no se pierda nada: dominio + SSL, IA entrenada, conectores y cron probados, copias de seguridad y retención, y roles del equipo.
Chatea como cliente. Verifica la precisión y el tono.
Widget instalado
En todas las páginas del sitio web. Verificar con Live Feed.
Copia de seguridad configurada
Backups diarios automatizados de bases de datos y archivos.
Registro de errores
Registro de errores PHP habilitado y monitoreado.
Equipo invitado
Todos los miembros tienen cuentas con roles correctos.
Base de conocimientos completada
Al menos 5-10 Artículos.
Diariamente: Compruebe el panel de control, limpie la cola de tickets y compruebe las conversaciones de IA.
Semanal: revisa los Insights de IA, actualiza la base de conocimientos, comprueba el rendimiento del equipo y revisa la seguridad.
Mensual: revise las tendencias de análisis, audite los conectores, actualice el entrenamiento de IA y verifique las copias de seguridad.
Operaciones
Lista de verificación previa al lanzamiento
Ejecute las puertas de código fuente y complete comprobaciones reales del producto antes de una versión o primer lanzamiento en producción. El hecho de que un comando esté disponible no es evidencia de que haya pasado en su entorno.
Pantalla de productoLa vista de liberación muestra las puertas requeridas para ejecutarse; no las pre-etiqueta como pasadas.
Puertas de origen y liberación
Ejecute las comprobaciones del repositorio desde la raíz de instalación y mantenga su salida completa con el registro de lanzamiento.
Puerta de prevuelo primaria
php tools/preflight.php
Puerta de liberación extendida
php tools/release_gate.php
La comprobación previa comprueba el tiempo de ejecución PHP 8.4 y las extensiones requeridas, realiza un barrido de sintaxis PHP, ejecuta la puerta de evaluación AI ship gate y la suite completa PHPUnit, y ejecuta comprobaciones de PHPStan/Node cuando estas herramientas están instaladas. La puerta extendida también incluye controles de humo, instalación limpia / esquema y navegador de extremo a extremo cuando su entorno está configurado.
Una comprobación omitida no es un paso, anote por qué no estaba disponible, instale la dependencia que falta o ejecútela en el entorno de CI/staging correcto antes del lanzamiento.
Controles de productos
1. Autenticación y roles
Inicie sesión como cada rol previsto; verifique las páginas/acciones permitidas y denegadas.
2. Widget y seguimiento
Cargue un sitio real en un navegador privado; verifique el tráfico de beacon, Live Feed, registros de visitantes y sesiones.
3. Chat y IA
Haga preguntas representativas; verifique la base de conocimiento, seguridad, escalada e historial de IA.
4. Entradas
Cree, asigne, responda, escale, cierre y reabra a través de cada ruta de admisión habilitada.
5. Correo electrónico
Pruebe la entrega saliente y cada buzón de entrada configurado o ruta de webhook.
6. CRM y análisis
Cree un contacto/negocio/conversión controlado y verifique paneles, embudos, puntuaciones e informes.
7. Conectores
Ejecute pruebas de conexión, una lectura, una escritura segura/ejecución en seco y rutas webhook/polling para cada conector habilitado.
8. API Conexiones y webhooks
Verifique ámbitos estrechos, límites de velocidad, reintentos idempotentes, firmas y manejo de duplicados.
9Cron
Ejecute el programador de productos unificado y confirme todos los latidos del corazón requeridos en Cron Setup/Diagnostics.
10. Seguridad
Verifique 2FA, controles de CSRF/sesión, entradas de auditoría, revocación de clave y aislamiento del espacio de trabajo.
11. Copia de seguridad y restauración
Restaure una copia de seguridad actual en un entorno de prueba independiente y verifique los datos y la configuración.
12. Observabilidad y reversión
Confirme los registros/alertas, preserve las ID de solicitud y pruebe el procedimiento de reversión.
⚠️
Implemente solo después de que cada puerta requerida y el recorrido crítico del negocio tenga evidencia actual para la versión exacta y el entorno.
Desarrollador
Web Push en sitios de terceros
Notificaciones de empuje del navegador (incluyendo OpsIQ Push Campaigns) necesita un trabajador de servicio servido del SAME ORIGIN como la página.OpsIQ cargas de widget de su OpsIQ el despliegue, por lo que un sitio de terceros no puede registrarse OpsIQ's worker directly. Host one small file on the site's own domain to enable push there. Campaigns deliver through BOTH supported methods.
Cómo funcionaEmpuje web
Por qué se necesita esto
Los navegadores sólo permiten que una página registre un trabajador de servicio desde su propio origen. El widget carga el orgán cruzado de su OpsIQ implementación, por lo que no puede instalar el trabajador de presión en un sitio del cliente, hasta que usted acoge al trabajador en el origen de ese sitio, el widget silenciosamente salta empuje (sin error, sin suscripción). Usted tiene dos opciones abajo;OpsIQ Campañas de empuje publican a través de ambas.
Opción A · Empuje Web Auto-auspiciado (VAPID, no terceros)
1. Descargue el worker desde su implementación OpsIQ: https://YOUR-OPSIQ/opsiq/opsiq-push-sw.js
2. Subir a tu blog raíz de la web Por lo que es accesible en https://yoursite.com/opsiq-push-sw.js. El widget Detecta automáticamente esta ruta en el propio origen de la página y lo registra, sin cambio de chispa necesario. (Usa un alcance estrecho, por lo que nunca reemplaza a un trabajador de servicio que ya se ejecuta).
Opcional: Si tienes que alojarlo en una ruta no estándar, apunta el widget a ella antes el snippet. Sólo se acepta cuando mismo-origen:
Opcional · sólo si el archivo NO está en la raíz web
3. En OpsIQ, genera claves VAPID (Configuración → AI de chat del cliente → Avanzado → Web Push) El widget luego pide permiso a los visitantes para recibir notificaciones y se suscriben.
¿Detrás de un CDN/Cloudflare? Asegúrese /opsiq-push-sw.js devoluciones HTTP 200 (purge el cache si era 404 antes de subir; un caché 404 bloqueará el registro).
Opción B · Beams de empuje (proveedor gestionado)
1. En la configuración de OpsIQ establecer el proveedor de push a Aspiradores de empuje Entrar y entrar en tus Beams ID de instancia y Llave secreta.
2. Aloja el service worker de Beams en la raíz del sitio como /service-worker.js. Copia https://YOUR-OPSIQ/opsiq/pusher-beams-service-worker.js, o fusione esta línea en su root worker existente:
3. El widget carga automáticamente los Beams SDK y suscribe a cada visitante al interés por sitio. opsiq-site-<your-site-key>. No se necesita otro cableado.
Cómo funcionan las campañas
Las campañas push publican a través de both Los visitantes del worker VAPID autohospedado reciben el Web Push cifrado, y los visitantes suscritos a través de Pusher Beams obtienen la publicación de cada visitante se llega a través del que esté suscrito, por lo que puede ejecutar VAPIDS de origen común en algunos sitios y beams de orígenes cruzados en otros.
HTTPS es requerido La bandeja de entrada del chat de administración ya utiliza el mismo mecanismo de interés de Beams para las alertas de operadores, pero no se puede usar en la aplicación de mensajería instantánea.
Operaciones
Solución de problemas
Problemas comunes y cómo solucionarlos.
General
Página en blanco+
Causas: PHP antiguo (necesita 8.4+), falta de extensión, falla en la conexión a la base de datos, permisos incorrectos del archivo.
El panel muestra ceros+
Compruebe: ¿Widget instalado? Cron en ejecución? Rango de fechas correcto? IP excluido?
IA
La IA no responde+
Compruebe: ¿el proveedor está configurado? ¿La clave API es válida (use Conexión de prueba)?
La IA da respuestas equivocadas+
Compruebe: ¿está actualizada la base de conocimientos?, ¿el mensaje está claro?, las búsquedas del conector devuelven los datos correctos?
La IA es lenta+
Depende de: velocidad del proveedor API, tamaño del contexto (grande KB = más tokens = menos rápido), latencia de la red.
Seguimiento
Falta el widget+
Comprueba: ¿script en el código fuente de la página? ¿errores JS en la consola?
País desconocido+
GeoIP no configurado. Usar Cloudflare (automático) o MaxMind GeoLite2 base de datos.
Boletos
Correos electrónicos que no crean tickets+
Compruebe: buzón conectado? Cron en ejecución? Cambiado la contraseña de la aplicación? IMAP configuración correcta?
La respuesta automática no funciona+
¿Departamento permitido? ¿AI configurada? ¿Cron en ejecución? ¿Respondió el humano primero?
Conectores
Error de conexión+
Compruebe: ¿las credenciales son correctas? API ¿Accesible desde el servidor? Base URL ¿No es correcto?
Conectado pero sin datos+
Compruebe: ¿Los alcances de la clave API? ¿La sincronización del webhook está habilitada?
Rendimiento
Páginas lentas+
Compruebe: rendimiento de la base de datos (SHOW PROCESSLIST), memoria PHP (aumentar a 1GB), habilitar opcache, reducir el período de retención.
Operaciones
Widget no registra visitas
Utilice esta comprobación enfocada cuando el widget se carga incorrectamente o Live Feed permanece vacío.
Cuando el El widget no está registrando visitas, verifique la clave del sitio, cargue la página en un navegador privado, compruebe los paneles de Red/Consola del navegador para ver si se han bloqueado las solicitudes de beacon o widget, revise la política de seguridad de contenido y los bloqueadores de anuncios, confirme que el sitio está activo en OpsIQ y abra Diagnóstico.
Referencia
Glosario
Definiciones de los términos utilizados en OpsIQ.
Acción
Algo que la IA puede hacer a través de un conector o la plataforma.
Agente
Un miembro del equipo con acceso limitado o un agente de IA.
BYOK
Trae tu propia llave, proporcionas tu propia tecla AI API.
Conector
Un plugin que integra una plataforma externa con OpsIQ.
CSAT
Puntuación de satisfacción del cliente.
Acuerdo
Una oportunidad de ingresos en el CRM.
Departamento
Una categoría de ticket para enrutamiento y control de acceso.
Escalada
Mover un ticket a otro departamento o de IA a humano.
GeoIP
Detección de la ubicación del visitante desde la dirección IP.
Handoff
Transferir una conversación de IA a humano.
Token de identidad
Token firmado que identifica a un visitante del sitio web.
Base de conocimientos
Artículos que la IA utiliza para responder preguntas.
Plomo
Un visitante que muestra intención de compra.
Puntuación de lead
Número 0-_100 que indica la probabilidad de conversión.
Etapa del ciclo de vida
Donde está un cliente: Cliente potencial, prospecto, cliente, en riesgo, rechazado.
AI Gestionado
La IA se proporciona como parte de su plan OpsIQ.
Pipeline
Tablero visual de las etapas del trato.
RBAC
Control de acceso basado en roles.
Sesión
Una serie de vistas de página dentro de una ventana de tiempo de espera.
Clave del sitio
Identificador único de un sitio web rastreado.
SLA
Acuerdo de nivel de servicio, plazos de respuesta.
Token
Unidad de texto AI. Roughly4caracteres =1Token.
Capa de confianza
Sistema de seguridad que controla la autonomía de IA.
Webhook
Devolución de llamada HTTP para notificaciones de eventos.
Widget
JavaScript código incrustado en su sitio web.
Espacio de trabajo
Un sitio con su propio seguimiento, IA, conectores y equipo. Lo mismo que "sitio".
Referencia
Obtenga más ayuda
Si esta documentación no responde a su pregunta:
Administrador de AI
Haga clic en "Preguntar a OpsIQ" en el administrador. Tiene acceso a esta documentación y los datos de su plataforma.
Ticket de soporte
Incluye: lo que intentaste, qué sucedió, lo que esperabas y cualquier mensaje de error.
Correo electrónico
Envíe un correo electrónico al soporte con su clave de licencia y la descripción del problema.
Consejos para solicitudes de soporte efectivas
Incluir la página
Qué página de administración (URL o nombre).
Incluir el entorno
Nombre exacto de la configuración y valor actual.
Incluya el error
Mensaje de error exacto con códigos.
Incluya los pasos
Lo que hiciste, paso a paso.
Incluir esperado vs real
Lo que debería suceder vs lo que sucedió.
💡
Cuanto más específica sea su solicitud, más rápida será la respuesta. "No funciona" requiere investigación. "Haciendo clic en Guardar en Configuración de IA da el código de error 502" obtiene una respuesta directa.