2013-02-13 21 views
6

Pracuję nad powiadomieniem SMS za każdym razem, gdy otrzymam wiadomość e-mail spełniającą określone kryteria; Zdecydowałem się użyć Skryptów Aplikacji Google w tym celu.Powiadomienia SMS dla Gmaila za pomocą Google Apps Scripts: jak wyświetlić zawartość wiadomości e-mail?

Zainspirował mnie w szczególności następujący artykuł: https://developers.google.com/apps-script/articles/gmail_filter_sms. Sprawdziłem również powiązane pytanie w StackOverflow SMS Alerts for Important Mails in Gmail.

Poprawiłem oryginalny skrypt z developers.google.com, czyszcząc zdarzenia przy następnym uruchomieniu skryptu (otrzymywałem powiadomienia SMS za każdym razem, gdy skrypt jest uruchamiany). Obecnie skrypt działa za pomocą etykiety "SendText" i tworzenia wydarzeń w kalendarzu "AlertSMS".

Jednak otrzymany SMS zawiera tylko temat i autora wiadomości e-mail: I należy wyświetlić treść wiadomości e-mail (lub przynajmniej jej część). Próbowałem bez powodzenia dodać go do opisu wydarzenia. Czy ktoś ma pomysł, jak to zrobić?

wynikające z Umowy, kod mojego skryptu:

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); 
} 
+1

Powiadomienia SMS nie wyświetlają opisu wydarzeń w kalendarzu. Po prostu podają ci tytuł wydarzenia. Więc jeśli chcesz część opisu w SMS-ie, musisz jakoś to uwzględnić w tytule. –

+0

Tego się bałem. Dzięki –

Odpowiedz

5

Możesz korzystać z usług takich jak (całkowicie darmowa) IFTTT lub (nieco za darmo) Zapier, aby aktywować akcję SMS po otrzymaniu wiadomości e-mail spełniających kryteria.

Here to niektóre "przepisy" IFTTT, które łączą GMail z SMS-ami.

+0

IFTTT brzmi obiecująco. Sprawdzę, czy to jest –

+0

Ale czy istnieje sposób wysyłania wiadomości SMS ze skryptu Google? – CodyBugstein

+0

@Imray Nie próbowałem go, ale możesz spróbować połączyć się z usługą pobierania adresu URL Google Script (https://developers.google. com/apps-script/reference/url-fetch /) (który zezwala na wychodzące połączenia HTTP) z kanałem [Maker Channel] IFTTT (https://ifttt.com/channels/maker) (który można wyzwolić za pomocą połączenia HTTP). Daj nam znać, czy to działa! –

0

Tak naprawdę nie potrzeba hack Kalendarz wysyłać dowolne wiadomości tekstowe do siebie - każdy operator komórkowy ma e-maila do bramy tekstowym. Dla verizon, na przykład, jego [email protected] (zastąpić swój numer telefonu) i istnieje podobny dla innych przewoźników. Po prostu użyj GmailApp, aby wysłać te numery pocztą e-mail i możesz wysłać, co chcesz.

+0

Dziękuję Corey za odpowiedź. Jednak mieszkając w Chinach, nie jestem pewien, czy mój dostawca ma taką funkcję. Zapytam jednak. –

+0

Rzeczywiście, mój dostawca tego nie robi. A to sprawia, że ​​brakuje nam wielu fajnych funkcji. –