Google als SMS Gateway benutzen
Beim Entwickeln von Monitoringanwendungen kommt man ab und zu zu dem Punkt, an dem man sich fragt, wie man den Benutzer im Falle eines schwerwiegenden Problems schnell benachrichtigt. Eine Email ist in der Regel doch zu langsam, da der Benutzer nicht den ganzen Tag sein Postfach überwacht. Eine andere Benachrichtigungsmöglichkeit stellt SMS dar. Ein Handy hat man praktisch immer dabei. Allerdings kosten SMS Gateways Geld, für Privatkunden liegen die Preise zwischen 5 und 9C pro SMS. Sofern man die SMS immer an die gleiche Nummer schicken will, lassen sich diese Kosten jedoch umgehen. An diesem Punkt kommt Google ins Spiel.
Google bietet seinen Gmailnutzern einen Calendarservice an, mit dem es möglich ist SMS-Erinnerungen für Termine festzulegen. In diesen Erinnerungen steht der Titel sowie der Ort des Eintrags. Das Prinzip ist also recht einfach. Man erstellt einen Termin mit dem SMS Text als Titel im Kalender, fügt eine SMS-Benachrichtigung hinzu und schon schickt Google die Nachricht an die Handynummer, die dem Googleaccount zugeordnet wurde.
Die Schwierigkeit besteht lediglich darin diesen Eintrag zu automatisieren. Dafür stellt Google jedoch eine API bereit. Ich habe in PHP eine Klasse geschrieben mit der es möglich ist SMS zu verschicken, sodass nur ein paar Sekunden vergehen, bis diese dann tatsächlich auf dem Handy eintreffen. Zusätzlich benötigt man das Zend Framework mit Gdata.
Die Benutzung meiner Klasse ist verhältnismäßig einfach. Allerdings sollte sie nur als eine Art VHIT-Prototyp (vom Hirn ins Terminal) gesehen werden. Man kann einige Dinge wahrscheinlich besser lösen.
// load class require 'googlesms.php'; // set login data //$test = new googleSMS("bla@gmail.com", "securepass"); $test = new googleSMS(); // uses default data from googlesms.php // set the time offset of the calendar to UTC+1 $test->setCalendarTZOffset("+01"); // set compensatory time to synch google and server time to 30sec ahead $test->setTimeAdjust(30); // define from who the sms will be sent $test->setSenderName("SMS Sender"); // set message of the sms $test->setMessage("Testmessage"); // send the sms $test->send(); // delete old sent sms $test->deleteOlderEntries();
Ich bin mir nicht ganz sicher, ob ich das auch wirklich verstanden habe aber hast du gerade behauptet, dass man mit Googlemail kostenlos Sms verschicken kann, wenn man sie als Termin mit Sms-Benachrichtigung im Kalender einträgt? Oder entstehen da doch irgendwelche Kosten? Lg und hoffe auf Antwort!
Korrekt, allerdings nur an deine eigene Nummer, die im Googleaccount aktiviert wurde.