email Statusanzeige per XML auf Cisco Fones

betateilchen

Grandstream-Guru
Mitglied seit
30 Jun 2004
Beiträge
12,882
Punkte für Reaktionen
0
Punkte
0
Ich hab mir mal eine kleine PHP Datei gestrickt, mit der ich auf meinem Cisco 7960 meine diversen Mailbox-Accounts statistisch abfragen kann. Damit ich nicht erst den PC muß, um zu wissen, wo ich wieviele neue Mails habe.

Das Script liefert auf meinem 7960 folgendes Bild:

ciscomail.jpg


Ich habe das Ganze mal für die Abfrage eines IMAP4 und eines POP3 Kontos bei GMX beschrieben (Userdaten sind natürlich anzupassen).

Die Abfrage der Mailbox erfolgt durch Aufruf der Funktion mail_count().

PHP:
function mail_count($info, $server, $user, $pw)

Die Parameter sind eigentlich selbsterklärtend - der Parameter $info enthält den Text, der am Anfang der Statistikzeile angezeigt wird.

Die Ergebniszeile M:74 R:1 U:1 ist so zu interpretieren:

M:74 = In der Mailbox sind 74 Mails
R:1 = Anzahl der "recent" Mails ist 1
U:1 = Anzahl der "unseen" Mails ist 1

Zur Erklärung von "recent" und "unseen" sollte Google weiterhelfen.

Man kann das Skript z.B. auch als URL für die "idleURL" eintragen - dann kommt die Anzeige automatisch im Ruhezustand des Telefones.

Achja - die Zeile mit dem "Refresh:300" bewirkt, daß das Cisco Telefon sich die Daten alle 5 Minuten neu holt und die Anzeige automatisch aktualisiert. (Auch erkennbar an der Uhrzeit hinter "eMail Status)

Viel Spaß damit !

PHP:
<?php
 header("Content-type: text/xml");
 header("Connection: close");
 header("Refresh: 300");

print "<CiscoIPPhoneText>\n";
print "<Title>eMail Status von ".date("H:i")."Uhr</Title>\n";
print "<Text>";

mail_count("GMX_IMAP", "{imap.gmx.net:143}INBOX", "<userid1>", "<password1>" );
mail_count("GMX_POP3", "{pop.gmx.net/pop3:110}INBOX", "userid2", "<password2>" );

print "</Text>\n</CiscoIPPhoneText>\n";

function mail_count($info, $server, $user, $pw)
{
   $mbox = imap_open ($server, $user, $pw);
   $fehler = imap_errors();
   if($fehler[0] !== "Mailbox is empty")
   {
      $status = imap_status ($mbox, $server, SA_ALL);
      print $info." -&gt; ";
      if($status) {
         print ("M: " . $status->messages  ) . " ";
         print ("R: " . $status->recent    ) . " ";
         print ("U: " . $status->unseen    ) . "\n";
      } else {
         print "imap_status failed: " . imap_last_error() . "\n";
      }
   }
   else
   {
      print $info." -&gt; Mailbox is empty !\n";
   }
   imap_close ($mbox);
}
?>

Der nächste Schritt wird das Lesen der eMails selbst über das Cisco sein :wink:
 
Ist schon toll, was man mit den Dingern so alles anstellen kann...
Was meinst Du - lassen sich solche Spielchen auch irgendwie unter SIP realisieren, oder nur unter SCCP (wozu ein Call Manager oder ein Asterisk-Server benoetigt wird)? Eine Services-Url wird ja auch in der SIP-Version angeboten...

Ich habe das Gefuehl hier mutiert ein 'Grandstream-Guru' zu einem Cisco-Freak! ;-)
 
sicher funktioniert das auch mit Sip. Du musst halt nur die Seite manuell über den servicebutton aufrufen.
 
Bei mir ist diese Seite inzwischen auch in mein Service-Menü eingebunden - von wo aus ich auch die Tagesschau-Nachrichten lesen und die aktuellen Meteosat-Wetterbilder auf dem Telefon anschauen kann :mrgreen:
 
Bei dir steht rechts oben im Display "Betateilchen", wie kann man das ändern? Bei mir sthet da die Rufnummer.
 
Das wird im [device] als "description" definiert.
 
Hallo betateilchen,

kannst du mir die Sourcen für dien Service Menü mal geben oder hier Posten?

mfg
Bastian
 
Code:
<CiscoIPPhoneMenu>
<Title>Infos</Title>
<Prompt>Bitte auswählen</Prompt>
<MenuItem>
<Name>eMail</Name>
<URL><httpserveradresse>/mailstatus.php</URL>
</MenuItem>
<MenuItem>
<Name>Nachrichten</Name>
<URL>http://cubic.org/rss2cisco.pl</URL>
</MenuItem>
<MenuItem>
<Name>MeteoSat</Name>
<URL>http://cubic.org/meteosat.sh</URL>
</MenuItem>
<MenuItem>
<Name>Seewetter Kieler Förde</Name>
<URL>http://cubic.org/seewetter.pl</URL>
</MenuItem>
</CiscoIPPhoneMenu>
 
Danke

schade mit der SIP Firmware funzen die News und das Sateliten Bild net.

Wenn ich die News aufrufe ranzt das Telefon komplett ab.
Und das Bild wir net richtig geladen.

aber sonst cool

mfg
Bastian
 
bastian81 schrieb:
schade mit der SIP Firmware funzen die News und das Sateliten Bild net.
Wenn ich die News aufrufe ranzt das Telefon komplett ab.

Dann versuch doch mal, den Nachrichten-Link durch folgende URL zu ersetzen:

Code:
http://phone-xml.berbee.com/rss/items.php

An diese URL kannst Du mittels parameter "url" einen beliebigen RSS Feed anhängen, der dann angezeit werden soll, also z.B. die Topstories von CNN

Code:
http://rss.cnn.com/rss/cnn_topstories.rss

Die ganze URL sieht dann so aus:

Code:
http://phone-xml.berbee.com/rss/items.php?url=http://rss.cnn.com/rss/cnn_topstories.rss

Vielleicht funktioniert das ja auch unter Deiner SIP Firmware.

Die Sache mit dem Wetterbild - naja, so toll sieht das Satellitenbild sowieso nicht aus - das ist also kein großer Verlust ;-)
 
tja danke für deine mühen...

aber es will trotzdem nicht.
Ich habe herausgefunden dass, wenn sich ein "&" Zeuchen in einer URL
in der XML Datei befindet, es nicht mehr will.

Wenn ich die "&" Zeichen herausnehme rennt es.

Tja ich würde ja die Skripte anpassen aber nur kommt man da ja leider
net dran.

Ich muss wohl Asterisk installieren und dann SCCP verwenden.

mfg
Bastian
 
Das mit dem & ist richtig, das steht auch in der Cisco Doku so drin - das funktioniert auch unter SCCP nicht. Aber in welcher URL kommt denn ein & vor ?

Es gibt übrigens noch ein paar andere Zeichen " < > , die solche Probleme verursachen können.

Ich werde das heute abend mal selbst auf einem SIP phone testen.
 
Also in SCCP funktioniert das alles prima.

Ich hab jetzt grade mal zum Testen SIP 7.3 aufgespielt und kann Dein Problem bestätigen. Irgendwo scheint es da einen grundlegenden Unterschied in der XML Abarbeitung zwischen SIP und SCCP zu geben.

Wenn es Dir irgendwie gelingt, (durch Script o.ä.) die XML Datei so zu ändern, daß aus dem "&" ein "&amp;" wird, dann sollte das Telefon dies auch korrekt darstellen können.

Es gibt übrigens auch veröffentlichte Scripte, um RSS Feeds nach XML zu konvertieren, da mußt Du mal googlen nach "rss2xml" oder ähnlichem.

Die Wetterkarte wird bei mir übrigens angezeigt.
 
Coole Idee...
aber leider funzt der Link dann nich mehr :) es müsste doch für & ein
%123 code gebe ich habe nur leider noch keine Liste gefunden.
Also ich meine sowas wie der Internet Explorer teilweise in Links macht.

Bastian
 
Ich habe mal bei berbee angefragt, ob die evtl. das php-script ändern ;-) damit auch die SIP-User damit arbeiten können. Obwohl ich SIP auf Cisco für :kotz: halte ...

Vielleicht kommt ja mal irgendein Anbieter auf die Idee, einen SCCP-Proxy-Service aufzusetzen :mrgreen: das wäre doch wenigstens mal was sinnvolles :-Ö
 
Ich habe nochmal ein bissel gespielt...

leider ist es auch mit dem "%26" nicht möglich die Seite aufzurufen denn
dann geht der link nimmer.

D.h. es ist nicht möglich mit dem Sip Image eine Seite aufzurufen die mehrere
Variablen zur ausführung benötigt. *heul*

Was hat Cisco da nur fürn SCHEIß geabut!! Das ist echt peinlich!!

naja wenn noch jemand ne lösung hat dann bitte melden.

mfg
Bastian
 
bastian81 schrieb:
naja wenn noch jemand ne lösung hat dann bitte melden.

Asterisk aufsetzen, chan_sccp verwenden und von dort zu Deinem SIP Provider routen.
 
Ich probiere das gerade mit einem lokalem Apache2 Server, sehe aber immer nur die XML Quelldatei. Welche (falls überhaupt) Einstellungen sind noch nötig, damit es am Telefon korrekt dargestellt wird?

Beispieldatei:
Code:
<?
header("Content-type: text/xml");
header("Connection: close");
header("Expires: -1");
echo "<" . "?xml version=\"1.0\" encoding=\"ISO-8859-1\"?".">"; ?>
<CiscoIPPhoneMenu><Title>Infos</Title> <Prompt>Bitte auswaehlen</Prompt>
<MenuItem><URL>http://cubic.org/rss2cisco.pl</URL><Name>Nachrichten</Name></MenuItem>
</CiscoIPPhoneMenu>

Und auch rss2cisco.pl probiert ( http://llg.cubic.org/tools/cisco.html )

(mit einem Snom 360 lassen sich die Seiten ohne Probleme anschauen)

Telefondaten:
7960G mit SCCP und z.Zt. FW P00307020400.
(an Asterisk mit chan_sccp-20060408 )

Edit: http://cubic.org/rss2cisco.pl funktioniert ohne Probleme, weshalb ich vermute, das ich noch irgendeine Kleinigkeit bei der Apache Konfig oder ähnl. übersehen habe.
 
Zuletzt bearbeitet:
betateilchen schrieb:
Ich hab mir mal eine kleine PHP Datei gestrickt, mit der ich auf meinem Cisco 7960 meine diversen Mailbox-Accounts statistisch abfragen kann. Damit ich nicht erst den PC muß, um zu wissen, wo ich wieviele neue Mails habe.
Man kann das Skript z.B. auch als URL für die "idleURL" eintragen - dann kommt die Anzeige automatisch im Ruhezustand des Telefones.
Der nächste Schritt wird das Lesen der eMails selbst über das Cisco sein :wink:

Hallo Betateilchen,

hab das script mal ausprobiert. Läuft gut als servicesURL. In die idleURL eingetragen, passiert jedoch im Ruhezustand des Telefons nichts. Script wird also nicht aufgerufen. Ist noch was zu beachten?

Grüße
revki
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.