Empezando

  1. Regístrese/inicie sesión y cree un sitio en el Panel de control
  2. Obtenga clave API y código para insertar
  3. Paste into your site's <head> and optionally set visitor id/nickname

1. Insertar secuencia de comandos

Place the following code in your website's <head>, replace with your actual domain and API KEY:

<script>
// Opcional: establezca el ID del visitante y el apodo antes de cargar el script, para deduplicación y visualización.window.OCS = {
  externalId: 'user_12345', // ID fija para el mismo usuario  nickname: 'Juan Pérez'        // Se mostrará en el título de la ventana/backend.};
</script>
<script>(function(){
  var s=document.createElement('script');
  s.src='http://chatgonow.com/api/widget.js?key=YOUR_API_KEY';
  s.async=true;document.head.appendChild(s);
})();</script>

2. Tema y estilo

Puedes personalizar en "Mis sitios":

3. Carga de imágenes y mensajes de texto

La ventana de visitante admite el envío de texto e imágenes (png/jpg/gif). Las imágenes se cargan de forma segura en la plataforma y se muestran tanto en el backend como en el lado del visitante.

4. Limitación de velocidad

Puede establecer un máximo de mensajes por minuto en "Mis sitios" para evitar el spam. Superar el umbral mostrará "enviando con demasiada frecuencia".

Límite de velocidad de la API de chat: la recuperación y la respuesta comparten el mismo umbral por minuto, pero se cuentan por separado.

5. Deduplicación de visitantes

El sistema prioriza el uso de window.OCS.externalId para la deduplicación. Si no se establece, genera y reutiliza automáticamente un ocs_external_id en Cookie/LocalStorage local. El mismo externalId en el mismo sitio se trata como el mismo visitante.

6. Consola del operador

Después de iniciar sesión, ingrese a la consola de chat en línea desde "Mis sitios" para ver las sesiones de los visitantes en tiempo real, enviar texto/imágenes y verificar notificaciones no leídas.

7. API abierta

Proporcionamos API simples y fáciles de usar para ayudarlo a integrar datos de chat en sus sistemas internos.

Descripción del campo API

Obtener campos de respuesta de la API de mensajes:

Nombre del campo Tipo Descripción
conversation_id string ID de conversación para identificar la sesión de chat
sender_type string Tipo de remitente: visitante o agente
sender_user_id string ID del remitente: aleatorio para visitantes, clave API para agentes
message_type string Tipo de mensaje: texto o imagen
content string Contenido del mensaje, vacío para mensajes con imágenes.
image_url string|null URL de imagen, solo para mensajes de imagen
created_at string Hora de creación del mensaje (formato: AAAA-MM-DD HH:MM:SS)

Campos de solicitud de API de respuesta del agente:

Nombre del campo Tipo Requerido Descripción
conversation_id integer ID de conversación
content string ✓* Responder contenido (ya sea este o image_base64)
image_base64 string ✓* Imagen codificada en Base64 (ya sea esta o el contenido)
agent_name string - Nombre del agente, por defecto es "Agente"

* significa que se debe proporcionar contenido o image_base64

Ejemplo

1. Obtener mensajes recientes

Ejemplo de solicitud
curl "http://chatgonow.com/api/chat_api.php?action=get_recent_messages&key=CHAT_API_KEY"
Ejemplo de respuesta exitosa:
Datos de respuesta
{
  "success": true,
  "data": [
    {
      "conversation_id": "123",
      "sender_type": "visitor",
      "sender_user_id": "visitor_abc123",
      "message_type": "text",
      "content": "Hola quisiera preguntar sobre el precio del producto.",
      "image_url": null,
      "created_at": "2024-01-15 14:30:25"
    },
    {
      "conversation_id": "123",
      "sender_type": "agent",
      "sender_user_id": "chat_xyz789",
      "message_type": "text",
      "content": "Hello! I'm happy to help you. Which product pricing would you like to know about?",
      "image_url": null,
      "created_at": "2024-01-15 14:31:10"
    },
    {
      "conversation_id": "124",
      "sender_type": "visitor",
      "sender_user_id": "visitor_def456",
      "message_type": "image",
      "content": "",
      "image_url": "/uploads/chat_images/visitor_20240115_143200.jpg",
      "created_at": "2024-01-15 14:32:00"
    }
  ]
}
Ejemplos de respuestas de error:
Respuestas de error
// Falta clave API{
  "success": false,
  "message": "missing key"
}

// Clave API no válida{
  "success": false,
  "message": "invalid key"
}

// Demasiadas solicitudes{
  "success": false,
  "message": "too many requests, wait 3s"
}

2. Respuesta del agente

Ejemplo de solicitud
curl -X POST "http://chatgonow.com/api/chat_api.php?action=reply_as_agent&key=CHAT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"conversation_id":123,"content":"Hola, hemos recibido tu mensaje.","agent_name":"Agente Wang"}'
Ejemplo de respuesta exitosa:
Datos de respuesta
{
  "success": true
}
Ejemplos de respuestas de error:
Respuestas de error
// Falta clave API{
  "success": false,
  "message": "missing key"
}

// Clave API no válida{
  "success": false,
  "message": "invalid key"
}

// Conversación no encontrada{
  "success": false,
  "message": "conversation not found"
}

// Contenido vacío{
  "success": false,
  "message": "empty content"
}