Hier nun ein paar Worte über die Installation und Einrichtung von SMSWitch.
[ul]
[li]Installation[/li]einfach die IO.SMSWitch.dll in euren „modules“ Ordner kopieren. Im IPS unter „Modules“ unten rechts das Symbol „Load Modules“ klicken. Danach sollte es links in der Listbox auftauchen. Das Modul ist nun einsatzbereit. Es wird eine Instanz erstellt wie bei jedem Anderen Modul auch. Ihr findet SMSWitch unter den IO-Modulen. Mit Rechtsklick und „Configure“ kommt ihr ins Menü.
[li]Setup[/li]Zunächst solltet ihr das Modem/das Handy an einen Comport anschließen. Virtuelle Comports werden auch unterstützt. Die Default-Werte wurden von mir so gewählt, dass sie schon fast immer passen. Allein die Baudrate und die Nummer des Comports müssen oft eurer Hardware (Modem/Handy) angepasst werden. Der (obere) Button „Test“ Rechts am Rand sagt euch ob die Kommunikation mit dem Modem/Handy funktioniert indem er einen grünen Rand bekommt. Weiter unten könnt ihr eure PIN eingeben. Wenn das Handy bereits eine PIN übergeben bekommen hat (beim einschalten) könnt ihr das Feld leer lassen. Drückt aber bitte unbedingt auch den zweiten „Test“ Button. Erst wenn auch dieser grün wird ist das Modem/Handy betriebsbereit. Abhängig vom Modem- oder Handytypen kann nach dem übergeben des PINs der Button zunächst rot werden. Dies liegt an der Art und Weise wie das Gerät arbeitet. Nach einem zweiten oder dritten Mal klichen auf den unteren Testbutton sollte es aber gehen. Wenn kurz das Wort „Busy“ erscheint, so wurde der Test nicht ausgeführt, weil im Hintergrund grade eine Anfrage an das Gerät läuft. Einfach nochmal versuchen.
[li]Security[/li]Damit nicht von jedem beliebigen Gerät in eure Haussteuerung eingegriffen werden kann muss mindestens ein Absender autorisiert werden indem dessen Nummer im SMSWitch hinterlegt wird. Nur autorisierte Nummern können SMSWitch bedienen. Für eine deutsche Nummer genügt die einfache Eingabe der vollständigen Telefonnummer. Alle anderen müssen die Länderkennung mit führendem „+“ eingeben. (+49171123456 zum Beispiel für eine deutsche Nummer). Das Prefix ist ein Passwort. Jede SMS, die an SMSWitch geschickt wird muss mit dem Prefix beginnen. Das Prefix darf nur ein Wort sein, beliebig lang, jedoch nicht kürzer als vier Zeichen. Achtet beim Senden der SMS auf die Groß- und Kleinschreibung!
[li]Assignment[/li]Hier können die oft furchtbar langen Scriptnamen durch einfache Kommandos ersetzt werden. Wählt ein Script aus, indem ihr auf das Symbol hinter dem Feld „Scriptname“ klickt. Dazu ein möglichst einfaches Kommando. Bedenkt, dass ihr ihn u.U. auf einer Handytastatur eingeben müsst. Verzichtet daher in eurem eigenen Interesse auf Sonderzeichen. Groß- und Kleinschreibung spielt hier heine Rolle. Mit „Add Event“ wird euer Event oben eingetragen und kann nun getriggert werden.
[li]Properties[/li]Der Intervall legt fest wie oft im angeschlossenen Gerät nach neuen SMS geschaut werden soll. Ein langer Intervall belastet das System nicht so stark, bedeutet aber auch, dass die SMS erst lange Zeit, nachdem sie empfangen wurde, verarbeitet wird. Das muss jeder selbst wissen. Mit dem Punkt „Logging“ kann SMSWitch gesagt werden, dass jede empfangene SMS im IPS-Log eingetragen wird. Bei aktiviertem „Direkt-Call“ kann statt einem Kommando auch der Scriptname direkt aufgerufen werden. Dafür muss kein Kommando angelegt sein. Diese Funktion ist momentan aber noch nicht ausgiebig von mir getestet. Die nummer des Servicecenters muss nur angegeben werden wenn man SMS versenden will und muss mir einem „+“ und der jeveiligen Länderkennung beginnen. Die Static PIN muss nicht angegeben werden. Wenn sie angegeben wird, so wird SMSWitch versuchen bei einem Neustart gleich die PIN zu übergeben, falls nötig. Achtung, die PIN wird im klartext auf der Festplatte gespeichert.
[li]Properties - Memory[/li]Das mit dem Speicher ist so eine Sache. Es gibt zwar einen GSM-Standard was die Speicherverwaltung betrifft, jedoch scheinen sich nicht alle Hersteller daran zu halten. Eine SMS kann freilich nur von dem Ort ausgelesen werden wo sie liegt. Da es aber, grade bei neuen Handys, eine Unzahl von Möglichkeiten gibt (Hauptspeicher, Simkarte, Eingangsordner, Archiv, Vorlagen Herstellerspezifische Abweichugen, und so weiter), bin ich auf eure Hilfe angewiesen. Ich habe mal versucht die unterschiedlichen Speicher in Gruppen zusammenzufassen. „SIM“ steht für den SIM-Speicher. Einzelne SIM-Karten scheinen aber keinen eigenen Speicher zu haben oder den Zugriff darauf zu verweigern. Ausserdem ist die Größe des Speichers abhängig von Provider, Netz, Alter und offenbar einigen Faktoren, die ich (noch) nicht kenne. „Phone“ steht für den Hauptspeicher nach GSM-Standard. Motorola kocht ein eigenes Süppchen und darum gibts dafür einen Extrapunkt. Also wer nicht weiss wie sein Gerät arbeitet (woher auch) muss dort einfach mal ein wenig probieren. Wenn euer Speicher nicht erkannt wird, kann ich versuchen den Nachzupflegen. Dafür müsst ihr ein Terminalprogramm (z.B. Windows Hyperterminal) haben und ein wenig Zeit mitbringen.
[li]Aufbau der SMS[/li]Die SMS muss mit dem Prefix beginnen. Dabei ist auf Groß- und Kleinschreibung zu achten. Nach dem Prefix muss ein(!) Leerzeichen als Trennzeichen folgen. Nach dem Trennzeichen muss dann das Kommando oder der Scriptname kommen. Hierbei spielt die Groß- und Kleinschreibung, im Gegensatz zum Prefix, dann wieder keine Rolle. Beispiel: „Blöd test“ wäre eine gültige SMS
[li]Scripting[/li]Es stehen, wenn SMSWitch ein script getriggert hat ($IPS_SENDER == ‚SMSWitch‘) die Variablen $SMSWitch_Sender, die die Telefonnummer des SMS-Senders enthält und $SMSWitch_Content mit dem Inhalt der SMS zur Verfügung. Ausserdem gibt es eine PHP-Funktion SMSWitch_SendMessage(InstanceID, PhoneNr, Text), mit der man eine SMS versenden kann. PhoneNr und Text sind als String zu übergeben. InstanceID ist klar, denke ich, oder? Ein Beispiel ist hier weiter hinten im Thread zu finden.
[li]Allgemeines[/li]Wenn das Setup-Fenster offen ist, so wird immer mal wieder der aktuelle Empfang überprüft und unter „Setup“ mit vier Balken dargestellt. Wenn man einen Test-Button drückt und zufällig grade im Hintergrund so eine (oder auch eine andere) Anfrage ans Modem geschickt wird, so leuchtet kurz das Wort „Busy“ auf. Der Test wurde nicht durchgeführt. Ausserdem wird, solange das Setup-Fenster offen ist wird nicht nach neuen SMS geschaut. Alle SMS, die im Speicher liegen werden gelöscht um Platz für Neue zu schaffen.
[li]Was wenn etwas mal nicht funktioniert?[/li]Hier im Thread lies sich fast jedes Problem durch eine dieser Maßnahmen lösen:
- [li] Hast du mal IPS oder den Rechner neu gestartet? - Hilft oft schon[/li][li] Hast du mal das Modem ganz ausgeschaltet? - Hilft insbesondere bei Speicherfehlern. Dann lassen sich plötzlich keine SMS empfangen (speichern) oder werden nicht mehr gelöscht und immer und immer wieder als neue SMS erkannt.[/li][li] Hast du beide Testbuttons Grün? - sonst klappt die Kommunikation mit dem modem nicht. Einstellungen Prüfen![/li][li] Hast du unter Properties mal mit den Einstellungen zum Leseort gespielt (SIM, Phone, Motorola)? - Bei einer falschen Einstellung kommen keine SMS rein.[/li][li] Hast du die SMSWitch Instanz mal gelöscht und nach nem Neustart in IPS neu angelegt? - Wenn man viel mit den Einstellungen spielt veraschiedet sich die Instanz offenbar manchmal. Ruhig auch mal einen Blick in die Settings.xml werfen und schauen ob nach dem löschen der Instanz nicht noch irgend ein Rest drin steht. Vorm bearbeiten dieser Datei immer ein Backup machen.[/li][li] Hast du Probleme mit deinem Nokia? - Stelle den Timeout auf 3000. Die brauchen das.[/li][/ul]
Die Benutzung des Moduls erfolgt auf eigene Gefahr. Ich hab nach bestem Wissen und Gewissen eine saubere Software geschrieben, kann aber keinerlei Garantien geben. Ich weise darauf hin, dass auch keinerlei Haftungsansprüche geltend gemacht werden können. Dies Modul ist eine Eigenentwicklung von mir. Diese Software steht in keinem Zusammenhang mit dem IPS-Team. Für eventuelle Schäden an Hard- oder Software komme ich nicht auf.
Euer Toni