Мы собираем файлы cookie и применяемрекомендательные технологии

Отправка SMS из Google Sheets с использованием Google Apps Script - 536 - МТС Exolve

Отправка SMS из Google Sheets с использованием Google Apps Script

Google Apps Script предоставляет мощный способ автоматизировать задачи в Google Sheets. В этой статье мы рассмотрим, как можно автоматически отправлять SMS сообщения, используя данные из таблицы Google Sheets. Мы будем использовать скрипт для отправки SMS через API.

Шаг 1: Создание и настройка Google Sheets
  1. Создайте новый документ Google Sheets.
  2. В первой строке (A1) введите текст сообщения.
  3. В ячейке B1 введите номер телефона получателя.
Шаг 2: Написание скрипта для отправки SMS

Откройте редактор скриптов Google Apps Script, выбрав Инструменты -> Редактор скриптов. Вставьте следующий код:

Код
function sendSMSFromCell() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var messageCell = sheet.getRange('A1');  // Ячейка для сообщения
  var destinationCell = sheet.getRange('B1');  // Ячейка для номера получателя
  var smsContent = messageCell.getValue();
  var phoneNumber = destinationCell.getValue();
  
  // Убедитесь, что номер телефона и текст сообщения передаются как строки
  sendSMS('NOMER_OTPRAVITELYA_EXOLVE', String(phoneNumber), smsContent); // Номер отправителя, номер получателя, текст сообщения
}

function sendSMS(number, destination, text) {
  var apiUrl = 'https://api.exolve.ru/messaging/v1/SendSMS';
  
  var payload = {
    'number': number,       // Номер отправителя
    'destination': destination, // Номер получателя
    'text': text           // Текст сообщения
  };
  
  Logger.log('Payload: ' + JSON.stringify(payload));
  
  var options = {
    'method': 'post',
    'contentType': 'application/json',
    'headers': {
      'Authorization': 'Bearer VASH_TOKEN'
    },
    'payload': JSON.stringify(payload),
    'muteHttpExceptions': true  // Чтобы увидеть полный ответ при ошибке
  };
  
  try {
    var response = UrlFetchApp.fetch(apiUrl, options);
    Logger.log('Response code: ' + response.getResponseCode());
    Logger.log('Response body: ' + response.getContentText());
  } catch (error) {
    Logger.log('Error: ' + error.toString());
  }
}

function testSendSMS() {
  sendSMSFromCell();
}


Объяснение кода

Функция sendSMSFromCell:

  • Получает активный лист.
  • Считывает значения из ячеек A1 и B1 для сообщения и номера телефона получателя соответственно.
  • Вызывает функцию sendSMS, передавая ей номер отправителя, номер получателя и текст сообщения.

    Функция sendSMS:

  • Формирует URL для API.
  • Создает объект payload с номером отправителя, номером получателя и текстом сообщения.
  • Использует UrlFetchApp.fetch для отправки POST-запроса на API, передавая данные в формате JSON.

    Функция testSendSMS:

  • Тестирует отправку сообщения, вызывая функцию sendSMSFromCell.

    Шаг 3: Настройка триггера

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

  • В редакторе скриптов выберите "Триггеры" (иконка часов).
  • Добавьте новый триггер для функции sendSMSFromCell.
  • Установите тип триггера "при изменении".

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

    Код на Github

  • 3
    282
    Открытая тема
    1 балл

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

    Авторизоваться
    Отличный пост!

    Никогда не думал что можно использовать Гугл таблицы как мессенджер. А реально ли получать СМС и сохранять в ячейках?
    moderator
    moderator
    0 баллов
    23 июля 2024 в 08:57