[[Vorlage(archiviert)]] {{{#!vorlage Wissen [:Pakete_installieren: Installation von Programmen] [:Paketquellen_freischalten: Bearbeiten von Paketquellen] [:Terminal: Ein Terminal öffnen] [:Editor: Einen Editor öffnen] }}} [[Inhaltsverzeichnis(2)]] smssend ist ein Kommandozeilen-Programm, das sich auf einer Website einloggt und via HTTP-Verbindung eine SMS (Short Message) verschickt. So kann die Zeit gespart werden, die vergeht, wenn man sich mit dem Webbrowser beim SMS-Dienst anmeldet. = Installation = Es muss das Paket * '''smssend''' (''universe'', [2], nur für Hardy verfügbar) installiert werden [1]. = Funktionsweise = == Provider == smssend arbeitet mit Providern, die sich im Verzeichnis '''/usr/share/smssend/''' befinden, die Dateien enden mit der Erweiterung ".sms". Um über einen Provider eine SMS zu versenden, ist folgender Befehl [3] notwendig (zum Beispiel Provider uboot): {{{#!vorlage Befehl smssend uboot.sms user pw 0712345678 "test" }}} == Skript == Wenn für einen Provider noch keine ".sms"-Datei existiert, kann man diese selber schreiben [4]. Ein Beispielsskript für den Provider www.orange.ch: {{{# Usage: # # smssend orangeswiss.sms login password 07?yyyyyyy "message" # NbParams 4 %Login Convert : Your login %Password Hidden : Your password %Tel Convert : GSM number of recipient (090xyyyyyy) %Message Size=143 Convert : Your message }}} Hier werden die Variablen definiert, die man beim Aufrufen des Skriptes an dieses weitergibt. Alles, was hinter "smssend orangeswiss.sms " folgt, wird als Parameter in die Variabeln "%Login", "%Password", "%Tel", und "%Message" gespeichert. Die Trennung zwischen den Parametern ist ein Leerzeichen. {{{## Login to portal # GetURL https://www.orange.ch/footer/login Go PostURL https://www.orange.ch/footer/login/loginForm Referer https://www.orange.ch/footer/login PostData wui_target_id=loginButton&wui_event_id=onclick&username=\%Login%&password=\%Password%&loginButton=Login GO }}} Hier werden Daten an ``https://www.orange.ch/footer/login/loginForm`` gesendet. Auf der Seite von [https://www.orange.ch/footer/login Orange.ch] {de} ist diese URL das Ziel des Formulars. Um das Formular zu finden, ist in [:Firefox:] eine Webdeveloper-Erweiterung notwendig. Die Variabeln, welche versandt werden, sind "wui_target_id", "wui_event_id", "username", "password" und "loginButton". Die den Variabeln zugewiesenen Daten sind "loginButton", "onclick", "\%Login%" (der Parameter, der dem Skript via Befehlszeile übermittelt wurde), "\%password%" und "login". Dies ergibt sich aus dem Formular von den Programmierern der orange.ch-Website. {{{ ## Sending # GetURL https://www.orange.ch/myorange/sms GO PostURL https://www.orange.ch/myorange/sms/smsForm Referer https://www.orange.ch/myorange/sms PostData messageInput=\%Message%&wui_target_id=sendButton&wui_event_id=onclick&destinationNumberInput=\%Tel%&charNumberLeftInput=0&signatureInput= Search wurde verschickt printmsg "jupp" GO }}} Nachdem sich das Skript auf der Seite eingeloggt hat, wird nun die SMS versandt. Das Prinzip ist dasselbe wie beim einloggen: Es werden Variabeln und Daten an eine URL (``https://www.orange.ch/myorange/sms/smsForm``) gepostet. Nach dem Versenden wird eine HTML-Datei an smssend weitergeleitet. Enthält diese Datei den Text "wurde verschickt", so erscheint die Nachricht "jupp" in der Shell; ein Zeichen dafür, dass alles geklappt hat. ;) == Tipparbeit sparen == Wer smssend über ein Terminal nutzt, muss viel tippen und immer die Nummern nachschauen. Zum Beispiel: {{{#!vorlage Befehl smssend orangeswiss.sms BENUTZER PASSWORT 07833449988 "Hallo Welt" }}} Um dies zu vereinfachen, kann man [:Shell/alias: Aliase] und Profile definieren. # tag: Internet, Kommunikation, Shell, Server