In einem kürzlich durchgeführten Projekt wurde ich gebeten, eine Lösung für das Versenden von Textnachrichten als Premium-Funktion auf der Mitgliederseite eines Kunden zu finden. Das habe ich noch nie gemacht, aber ich dachte, ich würde alle Informationen, die ich gesammelt habe, in einem einfachen Tutorial für diejenigen zusammenfassen, die das Gleiche tun möchten
Die kostenlose Option - E-Mail
Wenn Sie es noch nicht wussten, können Sie Textnachrichten per E-Mail an die meisten Mobilfunkanbieter senden. Zum Beispiel bin ich ein Kunde von AT & T. Um mir eine Textnachricht ohne Telefon zu senden, kann ich Google Mail öffnen und eine E-Mail an folgende Adresse senden: Ich erhalte die Textnachricht wie jede andere Nachricht.
Dies auf PHP anzuwenden ist in Bezug auf den tatsächlichen Code einfach genug. Die Mail-Funktion macht den Trick ganz gut. Wenn Sie Ihre Nummer zur Hand haben und wissen, welchen Mobilfunkanbieter die Nummer verwendet, können Sie hier den Mobilfunkanbieter nachschlagen. Das Senden einer Nachricht an mich selbst war so einfach wie:
$ number = "999-999-9999"; $ carrier = "@ txt.att.net"; $ message = "Dies ist ein Text"; $ sent = mail ("$ carrier", 'Test', $ message); echo $ gesendet? "Mail gesendet": "Mail NICHT gesendet"; // mail (E-Mail-Adresse, Betreff, Text); // Der Betreff ist nicht erforderlich und kann bei Bedarf leer gelassen werden
Dies kann jedoch zu Dilemmata führen. Dazu müssen Sie sowohl die Nummer als auch den Mobilfunkanbieter kennen. Durch die Nummernübertragbarkeit kann sich der Mobilfunkanbieter ändern. Wenn Sie nicht von einem Benutzer über diese Informationen informiert werden, können Sie nicht erkennen, dass der Mobilfunkanbieter geändert wurde. Diese Option war für uns einfach nicht realisierbar, da wir sie brauchten, um einwandfrei zu funktionieren, unabhängig davon, ob sie den Träger gewechselt haben oder was auch immer der Fall gewesen sein mag. Wenn wir die Nummer hätten, wären das alle Informationen, die wir brauchen sollten. Es war zu viel verlangt, den Benutzer zu bitten, mehr Informationen als aktuell zu halten.
Ich könnte sehen, dass dies eine nützliche Methode ist, um Textnachrichten zu senden, wenn ich nur einen Benachrichtigungsdienst für mich selbst aufbauen möchte. dh wenn eines meiner täglichen Cron-Skripte fehlschlug, etwas in diese Richtung. Dies ist keine skalierbare, zuverlässige Lösung für jede Art von Lösung, die größer ist als nur einige wenige Benutzer.
Die kostenpflichtige Option - SMS-Gateways
Es gibt zahlreiche SMS-Gateways mit unterschiedlichen Preispunkten und APIs. SMS-Gateways sind nicht kostenlos, bieten jedoch eine sicherere und zuverlässigere Möglichkeit, die Aufgabe zu erledigen. Ich erinnerte mich, dass ich vor ungefähr einem Jahr zu diesem Thema recherchiert hatte und der Name Twilio steckte. Sie sind die, mit denen ich aufgehört habe und ein schnelles und einfaches Tutorial finden Sie weiter unten. Sie kosten 1 Cent pro SMS, nicht die billigsten, aber sehr vernünftig für das, was wir erreichen wollten.
So senden Sie eine SMS mit Twilio
Sie benötigen zunächst ein Konto bei ihnen, also melden Sie sich an. Sie erhalten eine Benutzer-ID und ein Authentifizierungstoken, die Sie in die entsprechenden Variablen unten einfügen können. Laden Sie als Nächstes die offizielle Twilio PHP-Bibliothek von hier herunter.
// füge die offizielle Twilio PHP Bibliothek hinzu include 'Services / Twilio.php'; $ accountid = "#######"; $ token = "#######"; // deklariere eine neue Instanz der twilio services Klasse $ client = new Services_Twilio ($ AccountSid, $ AuthToken); $ mynumber = "###########"; $ to = "###########"; $ body = "Dies ist eine Textnachricht"; $ client-> account-> sms_messages-> create ($ from, $ to, $ body); // voila! Nachricht gesendet
Für jede Größe würde ich die Verwendung eines Gateways wie Twilio empfehlen. Sie müssen sich keine Sorgen um den Überblick über den Spediteur machen, und meiner Erfahrung nach waren sie äußerst zuverlässig. Feedback oder Vorschläge, lassen Sie es mich in den Kommentaren unten wissen.