6

每次收到符合特定标准的电子邮件时,我都在处理 SMS 通知;我决定为此使用 Google App Scripts。

我特别受到以下文章 https://developers.google.com/apps-script/articles/gmail_filter_sms的启发。我还检查了 StackOverflow SMS Alerts for Important Mails in Gmail中的相关问题。

我通过在下次运行脚本时清理事件来改进来自 developers.google.com 的原始脚本(每次运行脚本时我都会收到 SMS 警报)。该脚本当前正在使用标签“SendText”并在日历“AlertSMS”中创建事件。

但是,我收到的 SMS 仅包含电子邮件的主题和作者:我需要显示电子邮件的内容(或至少部分内容)。我尝试将其添加到事件的描述中,但没有成功。有人知道怎么做吗?

下面是我的脚本代码:

function sendText() {
  var now = new Date().getTime();

  // Delete old events
  var events = CalendarApp.openByName('AlertSMS').getEvents(new Date('January 1, 2010 EST'), new Date(now-30000));
  for (i in events) {
    events[i].deleteEvent();
  }  

  // Get list of emails to set alert for
  var label = GmailApp.getUserLabelByName('SendText');
  var threads = label.getThreads();

  // Create new events for emails alert
  for(i in threads){
    var message=threads[i].getMessages()[0];
    CalendarApp.openByName('AlertSMS').createEvent('[SMS] '+threads[i].getFirstMessageSubject()+' -from- '+message.getFrom(),
      new Date(now+60000), new Date(now+60000), { description:message.getBody() }).addSmsReminder(0);
  }
  label.removeFromThreads(threads);
}
4

2 回答 2

5

您可以使用(完全免费的)IFTTT或(有点免费的)Zapier等服务在收到符合条件的电子邮件时触发 SMS 操作。

以下是一些将 GMail 连接到 SMS 的 IFTTT “食谱”。

于 2013-04-09T15:35:49.320 回答
0

你真的不需要日历黑客来向自己发送任意文本消息 - 每个移动提供商都有一个电子邮件到文本网关。例如,对于 verizon,它的 5551234567@vtext.com(替换您的电话号码),其他运营商也存在类似的情况。只需使用 GmailApp 通过电子邮件发送这些号码,您就可以发送任何您想要的内容。

于 2013-02-13T14:27:02.230 回答