Recopilar Reseñas de Google

Configurar Wix Automation

  1. Ve a Automations en el Wix Dashboard y luego haz clic en Create Automation.

  2. Selecciona la automatización que deseas activar (en este caso, Order Placed).

  3. Luego, agrega un retraso de 3 días haciendo clic en el plus icon y seleccionando la opción Delay.

  4. Agrega una Velo Code Action y añade un archivo .js con el siguiente código (dependiendo del tipo de comunicación: WhatsApp o SMS):

import { secrets } from 'wix-secrets-backend.v2';
import { elevate } from 'wix-auth';
import { fetch } from 'wix-fetch';

// Crear versiones elevadas de las funciones de secrets
const elevatedGetSecretValue = elevate(secrets.getSecretValue);

/**
 * Declaración de función autocomplete, no eliminar
 * @param {import('./__schema__.js').Payload} options
 */
export const invoke = async ({ payload }) => {
  try {
    // Obtener bearer token de manera segura
    const bearerToken = await elevatedGetSecretValue('MERCURI_MESSAGING_API_KEY');
    console.log("Bearer Token",bearerToken)
    // Extraer datos de contacto
    const firstName = payload.contact?.name?.first || '';
    const lastName = payload.contact?.name?.last || '';
    const recipient = payload.contact?.phone || '';

    if (!recipient) {
      console.error('Recipient phone number missing.');
      return {};
    }

    const apiPayload = {
      phoneNumberId: "xxxxxxxxxxxxxxxxxxx",
      channel: "whatsapp",
      recipient: recipient,
      message: {
        type: "template",
        template: {
          templateId: "xxxxxxxxxxxxxxxxxxx",
          parameters: [
            {
              firstName: firstName,
              lastName: lastName
            }
          ]
        }
      },
      saveToInbox: true
    };

    // Llamar a Mercuri API
    const response = await fetch('https://api.mercuri.cx/v1/send_message', {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
        'Authorization': `Bearer ${bearerToken}`
      },
      body: JSON.stringify(apiPayload)
    });

    if (!response.ok) {
      const errorMsg = await response.text();
      console.error(`Mercuri API error: ${response.status} - ${errorMsg}`);
    } else {
      const respData = await response.json();
      console.log('Message sent successfully:', respData);
    }
  } catch (error) {
    console.error('Error in invoke:', error);
  }

  return {};  // Objeto de retorno vacío requerido
};

Last updated