[Technologie] Live-Kontakt-Button auf der eigenen Seite

Seit einiger Zeit habe ich jetzt auf der rechten Seiten hier im Blog einen "Live Kontakt"-Button, mit dem man direkten Kontakt mit mir aufnehmen kann, wenn ich online bin. Das ist in letzter Zeit ein bisschen weniger der Fall aber generell eigentlich recht oft. Da dazu schon einige Fragen kamen, wie man so etwas selber auf der eigenen Seite realisieren kann, möchte ich dazu ein paar Worte fallen lassen.

Voraussetzung
Die Voraussetzung für das Ganze ist ein Google-Talk Account. Also entweder eine normale "*@googlemail.com" oder aber Google Apps E-Mail Adresse. Bei der Google-Apps-Methode muss der Administrator der Domain im Dashboard Google Talk freigeben, falls das noch nicht geschehen ist.
Die einfache Methode
Bei der einfachen Methode könnt Ihr euch den ganzen Code für eure Webseite einfach von Google generieren lassen. Das geht für die Nutzer des öffentlichen Google Talk auf dieser Seite. Die Google-Apps Nutzer müssen die URL ein wenig anpassen, damit es auch ein "Badge" für ihren Apps-Account wird:
http://www.google.com/talk/service/a/<DOMAIN>/badge/New
Damit könnt Ihr euch einen Button mit Statusanzeige generieren und diesen über den angezeigten Code direkt im Blog einbinden.
Meine Methode
Wenn Ihr nun die einfache Methode angesehen habt, es euch aber nicht reicht, wenn der Standard-Badge verwendet wird, sondern Ihr wie ich einen eigenen Badge haben möchtet, muss ein wenig Programmiergeschick dazu gemischt werden.

Dazu braucht Ihr die ID eures Chats, den Google euch generiert. Dazu lasst Ihr euch wie in der einfachen Methode einen Badge generieren, wählt unter "Edit" allerdings "URL only (no frame)" aus. Das gibt euch einen Text ähnlich dem folgenden:

Chat with [...]: http://www.google.com/talk/service/badge/Start?tk=z01[...]m9u
Für euch natürlich ungekürzt und damit einen gefühlten Kilometer länger. Wir brauchen davon den Teil hinter "tk=" zur weiteren Verwendung. Der Rest ist Müll.

Für das Script könnt Ihr mein Beispiel (http://gist.github.com/335502) benutzen. Das Script ist komplett kommentiert und läuft als CGI auf einem Server, der Ruby unterstützt. Ansonsten sollte aber die Implementierung in PHP auch nicht allzu schwer fallen. (Wer sich eine schreibt, kann mir gerne einen Link zu einem Gist zukommen lassen, dann veröffentliche ich den hier.)

Nachdem Ihr das Script nun zum Laufen gebracht habt, bindet Ihr es einfach nur noch als Javascript in eure Webseite ein:

<script type="text/javascript" src="http://url.zum/script.cgi?chat=[...]"></script>
Die Parameter, die ich hier jetzt nur angedeutet habe, sind in meinem Script noch näher erklärt und müssen natürlich wenn Ihr das Script umschreibt auch geändert werden.