Querdenkender Webworker mit WordPress-Affinität

Skype4Web

Als Nutzer von Skype interessieren mich natürlich auch die Möglichkeiten, die dem Software-Entwickler so angeboten werden. Der Service ist sowieso schon interessant. Aber durch die Skype API wird auch mein Spieltrieb geweckt. Beim Durchstöbern der Skype Developer Docs sprang mir Skype4Web ins Auge. Zugegebenermaßen unabhängig von der API – aber schön für eine schnelle Fingerübung!

Skype4Web bietet ein Framework, um den eigenen Status anzuzeigen oder nach dem Status anderer Skype-User zu suchen. Dafür müssen die Benutzer der Anzeige im Web unter „Tools -> Optionen -> Privacy“ aber zugestimmt haben, sonst gibt es immer nur das gleiche Bild zu sehen. Der Testuser echo123 ist dafür beispielsweise nicht freigegeben:

echo123

Meinen Account habe ich dafür freigegeben. Ich sollte deshalb recht häufig online zu sehen sein:

dennis

Aber wofür der Aufwand, wenn doch Skype schon den Skype Button Wizard anbietet? Tatsächlich sollte der Wizard für die meisten Fälle ausreichen. Ein Skript bietet jedoch einige Vorteile: Man muß seine Skype-Identität nicht preisgeben. Man kann eigene Buttons verwenden. Man kann den Status in anderen Skripten verarbeiten. Herzstück meiner kleinen Lösung ist, die Datei class.skype4web.php. Ein Zip-Archiv mit der Klasse und einigen Beispielen steht ebenfalls für den Download bereit. Die Installation ist denkbar einfach. Das Archiv muß nur entpackt und auf den Webspace in ein Verzeichnis der eigenen Wahl übetragen werden. Der Code wurde von mir kaum mit Kommentaren versehen, so daß die mitgelieferten Beispiele und eine kurze Einführung ausreichen müssen:

1. Beispiel

In der Datei simple.skype4web.php wird die httpSkype-Klasse aufgerufen, um ein Object zu erzeugen, an das man die verschiedenen Parameter und vor allem die Skype-ID übergeben kann. Wird nur die Skype-ID übergeben, wird die Standardgrafik von Skype ausgeliefert. Am Ende wird dann nur die Ausgabe mittel repr aufgerufen. Dieses Skript läßt die schon oben angezeigte Ausgabe zu, wenn man es in einem normalen img-Tag unterbringt: <img src=“/code/simple.skype4web.php“/> Um den Button noch etwas Funktionalität zu verleihen, kann man ihn auch mit einem Skype-URI-Link versehen. So könnten Besucher bei Bedarf den entsprechenden User zu Ihren Kontakten hinzufügen, ohne erst danach suchen zu müssen. Für den Fall, daß Skype auf dem Rechner des Besuchers nicht installiert ist, sollte auch der JavaScript-Code vor dem Button einfügt werden, um eine häßliche Fehlermeldung zu vermeiden. HTML-Code des obigen echo123-Buttons:

<a href="echo123?add"><img alt="echo123" src="/code/simple.skype4web.php" border="0" /></a>

2. Beispiel

Das Skript extended.skype4web.php ist vor allem dazu gedacht, die verschieden Parameter aufzuzeigen und testen zu können. Für die zur Verfügung stehenden Parameter können die Methoden getFormats, getImages und getLangs aufgerufen werden, die jeweils ein Array liefern. Interessant ist vielleicht außerdem, daß die Paramter nicht einzeln übergeben werden müssen, sondern in einem ($_POST-)-Array an das Objekt gesendet werden können, wenn die Form-Elemente die entsprechenden Namen (id, format, image und lang) haben. Das Format kann auch als XML, Text oder nur als Nummer für die Ausgabe angegeben werden. Eventuell ist das für manche wichtig, um zum Beispiel eigene Buttons verwenden zu können. Möchte man das Resultat in eine Variable einlesen, kann anstelle von repr die Methode result aufgerufen werden.

3. Beispiel

Als letztes habe ich noch den angebotenen DNS-Transport mit dem Skript /code/dns.skype4web.php getestet. Das dnsSkype-Objekt gibt mit der Methode result ein Array zurück, in dem im Erfolgsfall die entsprechenden Daten zu finden sind.

Have fun!

Das könnte Dich auch interessieren:

Kommentare

  1. Stephan meint:

    Hallo !

    Ich bin eben über skype4web gestolpert.
    Ich suche nach einer Möglichkeit ankommende Telefongespräche mitzuschneiden. Diese Telefongespräche sollen als mp3 – Datei auf der Festplatte gespeichert werden.

    Geht das mit der Api von Skype ?

    Gruß Stephan

  2. Schau Dir mal in der Dokumentation das Call-Object an. Außerdem gibt es dann noch den Abschnitt zu den Voice-Streams.

Deine Meinung ist uns wichtig

*