Send SMS with Google Forms

S
Published in: Google Apps Script - Google Forms - SMS

A teacher has created a Google Form where students enter their name, the course they’ve enrolled into and their parent’s mobile number. The requirement is that as soon as a student enrolls in a course, an automated SMS message should be sent to the parent’s cell phone.

This can be easily done with OnFormSubmit trigger in Google Apps Script and SMS API. We are using MSG91 for this example but you can use Twilio or any SMS service that offers an HTTP Rest API for sending text messages.

function createTriggers() {
  ScriptApp.getProjectTriggers().forEach(function (trigger) {
    ScriptApp.deleteTrigger(trigger);
  });

  ScriptApp.newTrigger('triggerSMS')
    .forSpreadsheet(SpreadsheetApp.getActiveSpreadsheet())
    .onFormSubmit()
    .create();
}

function triggerSMS(e) {
  var response = e.namedValues;
  var message =
    response['Student Name'].toString() +
    ' enrolled for ' +
    response['Course'].toString();
  var url = 'https://control.msg91.com/api/sendhttp.php';

  var payload = {
    authkey: 'AUTH_KEY',
    mobiles: response['Mobile Number'].toString(),
    message: encodeURIComponent(message),
    sender: 'GFORMS',
    route: 4,
  };

  var options = {
    method: 'POST',
    payload: payload,
    followRedirects: true,
    muteHttpExceptions: true,
  };

  UrlFetchApp.fetch(url, options);
}
Published in: Google Apps Script - Google Forms - SMS

Looking for something? Find here!

Meet the Author

Web Geek, Tech Columnist
A
Amit Agarwal

Amit Agarwal is a Google Developer Expert in GSuite and Google Apps Script. He holds an engineering degree in Computer Science (I.I.T.) and is the first professional blogger in India. Read more on Lifehacker and YourStory

Get in touch