Recopilar Reseñas de Google
Configurar Wix Automation
Ve a Automations en el Wix Dashboard y luego haz clic en Create Automation.
Selecciona la automatización que deseas activar (en este caso, Order Placed).
Luego, agrega un retraso de 3 días haciendo clic en el plus icon y seleccionando la opción Delay.
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