javascript

Integración JavaScript

JavaScript SDK permite una integración con React, Meteor, Angular.JS y más. Ingresa para ver cómo usar los métodos de widget, permitir eventos, etc.

Widget

Los métodos de widgets están disponibles a través del objeto de ventana global UE . Para permitir eventos, pásalos como sus propiedades para el objeto de configuración del widget principal.

Ten en cuenta que esta es una documentación de JavaScript API/SDK , para la API REST, dirígete a esta URL..

Utilizar atributos

Dentro UE.init(), UE.refresh() y UE.pageHit() métodos que se utilizan los mismos atributos que en window.civchat 'objeto' (incluyendo atributos personalizados).

Aquí hay una lista de algunos atributos que puedes usar (por defecto):

Métodos

Métodos obsoletos:
UE.init () y UE.refresh () . Esos se han fusionado en un solo método: UE.pageHit () . El resto se queda como está.

UE.pageHit( )

Inicializar el widget o enviar la señal PING al servidor principal: el equivalente de navegar a una página nueva en & quot; norma & quot; Instalaciones HTTP.

<script>
  UE.pageHit({
    apiKey: 'YOUR_API_KEY',
    name: "John Doe",
    email: "myemail@example.org",
    gender: 2,
    status: 2,
    phone_number: "+48754123434", // Must be a valid E.164 format
    score: 0,
    company: {
      revenue: "$239.9 billion",
      employees: 32
    },
    source_context: {
      foo: "bar",
      john: "doe"
    }
  });
</script>

UE.destroy( )

Destruir la instancia actual del widget y eliminar la ventana de DOM. Este método no admite argumentos.

After current widget instance has been destroyed, you cannot refer to the ue methods.

UE.destroy({});

UE.resetAuth(data)

Esta función restablece la cookie __ca__chat y luego crea una nueva o asigna una existente según la dirección de correo electrónico (si se proporciona). El parámetro datos es un objeto JSON con la clave y el valor de correo electrónico .

Así que técnicamente, puedes eliminar las cookies con esta función y crear una nueva inmediatamente.

UE.resetAuth({
  apiKey: "YOUR_API_KEY",
  email: "johndoe@mydomain.com"
});

Eventos

onLoad( )

Se dispara cuando se carga la ventana del widget

UE.pageHit({
  apiKey: "YOUR_API_KEY",
  email: "johndoe@example.com",
  name: "John Doe",
  phone_number: "+48123456789",
  source_context: {
    foo: "bar",
    john: "doe"
  },
  onLoad() {
    alert("Widget loaded!");
  }
});

onMessage( )

Se desencadena para cada mensaje entrante. El objeto de mensaje se pasará a la función activada.

UE.init({
  apiKey: "YOUR_API_KEY",
  email: "johndoe@example.com",
  name: "John Doe",
  phone_number: "+48123456789",
  source_context: {
    foo: "bar",
    john: "doe"
  },
  onMessage() {
    alert("Received a message!");
  }
});

Objeto de mensaje de muestra:

{
  content: "Hello, world!",
  isAdmin: false
}

Si isAdmin está configurado para true, significa que el mensaje vino del lado del servidor, si no se establecerá en false y significa que el mensaje vino del widget del front-end.

onOpen( )

Se dispara al abrir la ventana del widget

UE.pageHit({
  apiKey: "YOUR_API_KEY",
  email: "johndoe@example.com",
  name: "John Doe",
  phone_number: "+48123456789",
  source_context: {
    foo: "bar",
    john: "doe"
  },
  onOpen() {
    alert("Opened a chat!");
  }
});

onClose( )

Se dispara al cerrar la ventana del widget

UE.pageHit({
  apiKey: "YOUR_API_KEY",
  email: "johndoe@example.com",
  name: "John Doe",
  phone_number: "+48123456789",
  onClose() {
    alert("Closed a chat!");
  }
});