Zapier в Twilio для создания динамического тела SMS - PullRequest
0 голосов
/ 20 января 2019

Я хотел бы использовать Zapier для отправки SMS через Twilio с динамическим телом, содержащим другую реферальную ссылку на приложение, каждый раз, когда я получаю нового подписчика в свой список рассылки mailchimp.

У меня есть два отдельных фрагмента кода, которые делают то, что я ищу, но из-за ограничений установки модулей в рамках автоматизации кода в Zapier и моего отсутствия опыта в программировании, я не знаю, как соединить их вместе в Zapier код Zap.

Это код, который я могу использовать для отправки SMS с Twilio и работает нормально независимо:

const accountSid = '<twilioAcctSid>';
const authToken = '<twilioAuthToken>';
const client = require('twilio')(accountSid, authToken);

client.messages
  .create({from: '<twilPhoneNo>', body: '<affiliateRefLink>', to: '<subscriberPhoneNo>' })
  .then(message => console.log(message.sid))
  .done();

Это код, который я использовал в другом месте для случайного выбора одной из моих партнерских ссылок, и я хотел бы добавить случайную ссылку в тексте SMS для нового подписчика.

const refCodes = ['link1',
                'link2',
                'link3'];

function getCode()
{
    let randomNum = Math.floor((Math.random() * refCodes.length));
    let baseSite = "#url_";
    let newLink = baseSite + refCodes[randomNum];
    document.getElementById('#url').href = newLink;
    document.getElementById('#url').innerHTML = newLink;

}

Любая помощь будет искренне признательна!

Toes.

Ответы [ 2 ]

0 голосов
/ 03 февраля 2019

Спасибо @philnash за вашу поддержку, я смог решить эту проблему с помощью кода ниже!

  exports.handler = function(context, event, callback) {
  const appCodes = ['code1', 'code2', 'code3', 'code4']
  var smsBody = refCode ();
  var subNum = event.primaryPhone || 'There is no subscriber number'; // primaryPhone sent via HTTP post to twilio function

function refCode () {
    return appCodes[Math.floor((Math.random() * appCodes.length))];
};

  context.getTwilioClient().messages.create({
    to: `${subNum}`, // parameters & values recieved from HTTP POST are available within the twilio functions "event" context
    from: '+1444555666',
    body: `Get the App: ${smsBody}`
  }).then(msg => {
    callback(null, msg.sid);
  }).catch(err => callback(err));
}
0 голосов
/ 21 января 2019

Разработчик Twilio здесь.

Я не уверен, что вы можете запустить подобный код в Zapier.Однако я могу предложить вам использовать модуль Zapier webhook в сочетании с функцией Twilio .

Функции Twilio предоставляют вам серверный способ запуска собственного узла.основанный на js код, так что вы можете объединить две части кода, которые у вас есть выше, в одну функцию, которая затем вызывается веб-крючком Zapier.В качестве альтернативы, если MailChimp позволяет вам настраивать свои собственные веб-крючки, вы можете полностью обойти Zapier и направить его прямо на свою функцию Twilio.

Дайте мне знать, если это поможет.

...