Senden Sie eine SMS-Textnachricht von der Befehlszeile

Wenn Sie daran denken, SMS zu verschicken, denken Sie wahrscheinlich an das iPhone oder an ein Android-Gerät. Die Befehlszeile kommt Ihnen nicht in den Sinn, aber dank des immer nützlichen Befehls curl können Sie eine SMS an jedes Telefon senden Nummer direkt vom Terminal.

Ja, curl, dasselbe Befehlszeilentool zum Übertragen von Daten von und zu URLs, Herunterladen von Dateien, Abrufen von HTTP-Headerdetails und vieles mehr, kann Textnachrichten senden. Dies geschieht durch eine POST-Anfrage, die an den TextBelt-Dienst gesendet wird, eine kostenlose ausgehende SMS-API. Sicher, es gibt Grenzen, aber sie sind ziemlich großzügig bei 75 Texten pro Tag (pro IP), und Sie können nicht mehr als 3 Texte in drei Minuten senden, um Missbrauch zu verhindern. Beachten Sie außerdem, dass für eingehende SMS mit der normalen SMS- / SMS-Rate Ihres Mobilfunkanbieters Gebühren anfallen. Dies gilt nicht für den iMessage-Dienst. Verwenden Sie diese Option daher nicht zu häufig, wenn Sie keine unbegrenzten SMS haben traditioneller SMS-Plan.

Senden einer Textnachricht von der Befehlszeile mit curl

Die zu verwendende Grundsyntax lautet wie folgt: Ersetzen Sie die ########## durch Ihre eigene 10-stellige Telefonnummer (10 Ziffern = Ortsvorwahl + Telefonnummer) und ersetzen Sie die Nachricht = Text durch Ihre eigene Nachricht zum Senden:

curl http://textbelt.com/text -d number=########## -d "message=text goes here"

Um beispielsweise den Text "Hallo von OSXDaily.com" an die Telefonnummer 555-155-1555 (keine echte Zahl) zu senden, verwenden Sie die folgende Befehlszeichenfolge:

curl http://textbelt.com/text -d number=5551551555 -d "message=hello from OSXDaily.com"

Ja, Sie könnten auch die Telefonnummer einer anderen Person eingeben, aber Sie sollten das wahrscheinlich nicht ohne ihre Erlaubnis tun.

Wenn der Text erfolgreich gesendet wurde, gibt die Befehlszeile eine Nachricht mit dem Text '{"success": true}' zurück. Wenn sie aus irgendeinem Grund fehlschlägt, sieht sie ungefähr wie folgt aus, was normalerweise auf einen Fehler in Ihrem System hindeutet Befehlssyntax: '{"success": false, "message": "Anzahl- und Nachrichtenparameter sind erforderlich."} curl: (6) Host konnte nicht aufgelöst werden:' Überprüfen Sie die Befehlszeichenfolge und versuchen Sie es erneut.

Die Textnachricht sollte sehr schnell auf Ihrem iPhone oder Android ankommen, obwohl die Zweckdienlichkeit des Dienstes wahrscheinlich von einer Warteschlange abhängt und wie viel Aktivität TextBelt von woanders erhält. Es wird etwa so aussehen:

(Wenn Sie sich fragen, die Antwort auf die Texte geht nirgendwohin und tut nichts, es ist kein 2-Wege-Service)

Dies funktioniert, um Texte von Mac OS X, Linux und vermutlich auch von anderen Betriebssystemen oder Diensten zu versenden. Die Empfängerseite sollte mit jedem Mobiltelefon funktionieren, das SMS akzeptiert, egal ob es ein iPhone oder ein uraltes Nokia ist.

Hinzufügen eines schnellen "Send Text" -Befehls zu Bash

Wenn Sie die Möglichkeit haben, sich selbst Texte vom Terminal zu senden und diese häufig zu verwenden, können Sie ein einfaches Bash-Skript erstellen, um die Befehlszeichenfolge zu verkürzen, indem Sie Folgendes zu Ihrem .bash_profile hinzufügen. Achten Sie darauf, die Nummer durch Ihre 10-stellige Telefonnummer zu ersetzen:

sendtext () { curl http://textbelt.com/text -d number=5551113333 -d "message=$1";echo message sent; }

In Ihrem bash_profile können Sie einfach "sendtext your message goes here" eingeben, um einen Text an sich selbst zu senden. Dies ermöglicht auch Spaß und Nutzen mit doppelten kaufmännischen Undsignalen &&, wie das Versenden von SMS-Benachrichtigungen, wenn ein Softwarepaket die Installation beendet hat oder wenn eine Remote-Datei heruntergeladen wird. Diejenigen mit Erfahrung in der Befehlszeile können sich wahrscheinlich auch eine Million und andere nützliche Anwendungen vorstellen.

Laut TextBelt funktioniert der Dienst definitiv in den USA mit den folgenden Mobilfunknetzen: Alltel, Ameritech, AT & T Wireless, Boost, CellularOne, Cingular, Sprint PCS, Telus Mobility, T-Mobile, Metro PCS, Nextel, O2, Orange, Qwest, Rogers Wireless, US Mobilfunk, Verizon, Virgin Mobile. Dies kann auf die USA beschränkt sein, aber wir können keine Netzwerke außerhalb der Region testen, lassen Sie es uns wissen, wenn Sie es anderswo versuchen.