Eine frohe Adventszeit wünscht Apfeltalk
  • Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Unser Dezember-Wettbewerb steht unter dem Thema Zeitreise - Macht mit und beteiligt Euch mit Euren kreativen Fotos! Zum Wettbewerb --> Klick

Mail2SMS-Gateway für GMX

Bananenbieger

Golden Noble
Registriert
14.08.05
Beiträge
25.515
Hallo zusammen!

Weil in den Complete-Verträgen die SMS ja so teuer sind, hab ich mich nach einer Alternative umgesehen und bin auf GMX gestoßen, wo man bereits für 9 Cent eine SMS absetzen kann. Noch günstiger wirds mit ProMail (6Cent/SMS für die 50 Inklusiv-SMS) und TopMail (5Cent/SMS für die 100 Inklusiv-SMS). Das Schöne an GMX ist, dass die GMX-SMS die eigene Absenderkennung tragen.

Vorweg: Für das Gateway wird eigener Webspace/Server mit Domain, PHP und Zugriff auf die Mail-Konfiguration (insb. Catch-All, Mail-Pipe an Skript) benötigt. PHP und Mailserver-Know-How sind absolut erforderlich. Ohne die Möglichkeit, Mails an ein PHP-Skript zu routen, ist das folgende Skript nicht zu gebrauchen.

Okay, lange Rede, kurzer Sinn: Ich habe ein Mail2SMS-Gateway geschrieben, mit dem man direkt Mails als SMS an eine beliebige Empfängeradresse schicken kann.

Das Skript nimmt Mails mit Zieladressen in der Form "[email protected]" an. Wobei "test" ein einstellbarer PIN ist (so dass nur Leute, die den PIN kennen, auch SMS versehnden können). Die Rufnummer muss eine deutsche Mobilfunknummer beginnend mit 01 sein. Die Domain kann beliebig gewählt werden. Idelalerweise nimmt man eine Subdomain und richtet einen Catch-All ein, so kann man ohne weitere Konfiguration an jede X-beliebige Telefonnummer SMS schreiben.

Installation: Skript in einem beliebigen Serververzeichnis entpacken, in der Datei mail2sms.php die PIN festlegen und in gateway.php GMX-User und Passwort eintragen. Danach noch den Mailserver konfigurieren, so dass alle Mails an eine Subdomain auf das Skript geleitet werden bzw. alle Mails, die mit dem PIN anfangen vom Skript verarbeitet werden.

Wie immer gilt: Diese Software wird kostenlos wie sie ist verteilt. Ich übernehme keine Garantie, dass sie funktioniert und fehlerfrei ist. Vor dem Einsatz hat jeder selber zu prüfen, ob das Skript schädliche Auswirkungen auf die Umgebung, in der es eingesetzt wird hat!

Viele Grüße

der Bananenbieger
 

Anhänge

  • Mail2SMS.zip
    31,5 KB · Aufrufe: 510

Bananenbieger

Golden Noble
Registriert
14.08.05
Beiträge
25.515
Nachtrag: Die eMail-Adressen des Mail2SMS-Gateways kann man ins Adressbuch bei den jeweiligen Kontakten einpflegen. Kommt nun eine SMS herein, einfach in SMS.app auf "Kontaktinfo" klicken, danach auf die Mail2SMS-Adresse des Kontakts und schon schreibt Ihr eine Antwort. Ganz einfach, oder? Einziger Nachteil: Die eigenen SMS werden in SMS.app natürlich nicht angezeigt.
 

spleen

Fuji
Registriert
08.09.08
Beiträge
38
Hey,

da ich eh bei GMX free-SMS habe wunderte ich mich schon länger, wie ich diese per iPhone benutzen kann.
Rein von der Erzählung finde ich Deinen Ansatz sehr scharmant.

Ich besitze eigenen Webspace und habe auch eingeschränkten Zugriff auf die Mail Funktionen. Was ist dort genau zu machen?

Ist das ganze überhaupt noch aktuell? Die Antwortmöglichkeit finde ich vor allem geil..

Gruß
 

Bananenbieger

Golden Noble
Registriert
14.08.05
Beiträge
25.515
Ich würde erstmal nachsehen, ob Du alle Mails einer Subdomain (z.B. @sms.deinedomain.de ) an ein Skript pipen kannst (muss irgendwo in den Einstellungen stehen), sonst funktioniert es nicht.
 

spleen

Fuji
Registriert
08.09.08
Beiträge
38
Ah damn - ist leider nicht möglich. Da funkt mir Plesk dazwischen... schade.
 

nicx

Alkmene
Registriert
17.09.08
Beiträge
31
hi,

ich finde deine idee klasse :)

hab jetzt alles so weit eingerichtet, die mails werden auch gepiped an das script und im exim log seh ich keine fehler... nur dann passiert einfach nichts... keine sms wird empfangen...

woran könnte dies noch liegen?

gruss,
nicx...
 

Bananenbieger

Golden Noble
Registriert
14.08.05
Beiträge
25.515
Sind in der gateway.php auch die richtigen GMX-Zugangsdaten eigentragen?
 

nicx

Alkmene
Registriert
17.09.08
Beiträge
31
natürlich, jedoch weiss ich nicht wie dein script mit sonderzeichen im usernamen und im passwort umgeht, das ist hoffentlich kein problem?
 

nicx

Alkmene
Registriert
17.09.08
Beiträge
31
ach brauche ich auf debian vielleicht noch irgendwelche speziellen pakete? php5 und php-pear ist installiert...
 

Bananenbieger

Golden Noble
Registriert
14.08.05
Beiträge
25.515
Bei mir läuft es mit PHP 5.2, pear ist eigentlich nicht mal notwendig.

Versuch mal, die Nutzerdaten mit urlencode() zu codieren.

Also z.B. $password = urlencode("geheim");

Die Variablen werden nämlich an den Server per GET-Methode übermittelt und das scheint bei Dir wohl nicht wirklich gut zu klappen, wenn dort Sonderzeichen drin sind.

Ich habe das Skript mal dahingehend geändert und diesem Beitrag angehängt.
 

Anhänge

  • Mail2SMS.zip
    30,1 KB · Aufrufe: 160

nicx

Alkmene
Registriert
17.09.08
Beiträge
31
hm leider habe ich nach wie vor das gleiche problem, auch mit deinem neuen script :(

hast du noch eine idee woran es liegen könnte?

gruss,
nicx...
 

nicx

Alkmene
Registriert
17.09.08
Beiträge
31
^noch ein nachtrag: ich habe eben mal mein passwort geändert und komplett ohne sonderzeichen getestet, auch anstatt mailadresse habe ich die kundennummer eingetragen... leider ebenfalls mit selbem ergebnis, es passiert einfach nichts obwohl ich keinerlei fehlermeldungen erhalte.
 

Bananenbieger

Golden Noble
Registriert
14.08.05
Beiträge
25.515
Nächster Versuch:
Hab mal die Auth-Methode umgeschrieben.
 

Anhänge

  • Mail2SMS_V2.zip
    30,1 KB · Aufrufe: 149

nicx

Alkmene
Registriert
17.09.08
Beiträge
31
jetzt bekomm ich nen fehler:

Parse error: syntax error, unexpected '{' in /var/www/mail2sms/mail2sms.php on line 42
 

nicx

Alkmene
Registriert
17.09.08
Beiträge
31
ich hab mir mal dein script genauer angeschaut und den fehler gefunden :)

wenn man den pin ändert (was ich getan habe auf "sms") dann passt die variable $startpos im abschnitt //extract phone number nicht mehr und es wird eine falsche nummer verwendet. mit "test" als pin funktioniert alles wie gewünscht. d.h. du solltest keine fixe zeichenanzahl nutzen sondern die pinlänge auslesen.

aber super ist dein script allemal! :)

gruss,
nicx...
 

nicx

Alkmene
Registriert
17.09.08
Beiträge
31
noch ein kleiner nachtrag: im bereich //check for pin muss die pinlänge natrürlich ebenfalls angepasst werden :)
 

Bananenbieger

Golden Noble
Registriert
14.08.05
Beiträge
25.515
Zu meiner Verteidigung muss ich sagen, dass die frei verfügbare Version meines Skriptes nicht derjenigen entspricht, die ich auf meinem Server verwende.

Ich würde vorschlagen, die PIN-Überprüfung durch die folgende Funktion zu ersetzen. Dann ist es gleich, wie lang die PIN ist.

Code:
    //Check for PIN
    if(strpos($to,$pin.".")
 

nicx

Alkmene
Registriert
17.09.08
Beiträge
31
so nachdem ich nun mein iphone 3g eine woche habe hab ich mich wieder an dein script gewagt ;)

es funktionierte ja eigentlich alles, ich schicke über thunderbird eine mail und diese wird als sms auf handy geschickt, wunderbar :)

dann veruche ich das gleiche über mein iphone mit gleichem mailkonto, wähle den kontakt aus, schicke die mail... und es passiert nichts ;) im exim-log sehe ich die korrekte verarbeitung der mail, aber weiter nix... woran könnte das noch liegen?

gruss,
nicx...
 

nicx

Alkmene
Registriert
17.09.08
Beiträge
31
ich habe eben in den "gesendeten objekten" meiner mailbox einen unterschied bemerkt: in der mail von thunderbird geschickt steht im empfängerfeld der mail wirklich die komplette mailadresse, in der mail vom iphone ggesendet steht der kontaktname (natürlich mit korrekter mailadresse hinterlegt beio klick auf diesen kontaktnamen)... hat das script vielleicht probleme damit?

gruss,
nicx...