Das Kompatibilitätsproblem mit sipgate ist jetzt auch in der offiziellen Version gelöst:
Beschreibung Bug und Lösung hier.
Damit ist der hier beschriebene Patch nicht mehr notwendig. Ich lasse die Dateien aber erstmal hier stehen.
Allgemeines
Update:
Das Kompatibilitätsproblem mit sipgate ist jetzt auch in der offiziellen Version gelöst:
Beschreibung Bug und Lösung hier.
Damit ist der hier beschriebene Patch nicht mehr notwendig. Ich lasse die Dateien aber erstmal hier stehen.
Auf dieser Seite wird kurz beschrieben, wie man SIP Communicator mit einem sipgate Account einrichtet.
Mir persönlich gefällt die Software nicht so gut, aber dafür hat man den Quellcode zur Verfügung und
kann damit einiges testen und analysieren, oder auch erweitern.
Der SIP Commander ist ein einfacher SIP-Client in Java und sollte daher auf den meisten Plattformen laufen,
allerdings braucht man das Java Media Framework, was nicht unbedingt überall verfügbar ist. Zum
Download stehen zwei Pakete zur Verfügung, eines für Linux und eines für Windows. Die folgenden Angaben
beziehen sich auf die Windows-Version (Linux habe ich nur als Server ohne Soundkarte).
Das Programm kann auch über Java Webstart gestartet werden, da es aber eine kleine Inkompatibilität mit
sipgate gibt, muss man eine geänderte .jar Library einspielen, um mit sipgate telefonieren zu können.
Das Patch wird weiter unten erklärt.
Download der Version von http://www.java.net/ in das Verzeichnis, von dem aus man das Programm
starten möchte.
Entpacken der ZIP-Datei und damit eigentlich fertig. Zum Starten wird die Batch-Datei
sip-communicator.bat verwendet. Führen Sie diese einmal aus Sie werden
dann durch einen Konfigurationsdialog geführt - Sie können jetzt gerne etwas eintragen, aber
wir werden später noch die richtigen Konfigurationswerte direkt in die entsprechende XML-Datei
eintragen. Es geht hier nur um die Initialieirung des Java Media Frameworks und die Auswahl
des richtigen Netzwerk-Adapters.
Ein Problem mit dem SIP Communicator ist eine Prüfung der eingehenden Anrufe. Dabei wird geprüft,
ob der Nutzer der angerufen wird mit dem übereinstimmt, der lokal eingetragen ist. Allerdings gibt
es hier eine Abweichung bei sipgate. Wird ein Anruf aus dem Festnetz übertragen, wird als
Empfängeradresse nicht nur die Teilnehmernummer im sipgate Netz angegeben, sondern auch der Ländercode
(49 für Deutschland) und die Stadtvorwahl mit sipgate Vorwahl (bei mir 211 für D-dorf und die 5),
also insgesamt so etwas wie 492115#######. Verglichen wird aber mit ####### ohne die Vorwahl. Daher
bricht der SIP Communicator die Verbindung ab.
Verantwortlich ist hierfür im Quelltext: net.java.sip.communicator.sip.CallProcessing (Zeile:379):
if (!calleeUser.equals(localUser)) {
Ersetzt man das durch: net.java.sip.communicator.sip.CallProcessing (Zeile:379):
if (!calleeUser.endWith(localUser)) {
hat man immer noch eine einfache Prüfung, die aber mit sipgate funktioniert.
Da nicht jeder selber den Quellcode laden möchte, habe ich die Änderung mal gemacht und die
entsprechende jar Datei generiert (basierend auf der cvs Version vom 7.7.2004).
Diese bitte von hier laden und in das Verzeichnis vom
SIP Communicator kopieren (ersetzt die vorhandene Version) - fertig.
Die Konfiguration erfolgt über die Datei sip-communicator.xml im Verzeichnis
des SIP Communicator. Bitte öffnen Sie dieses mit einem Editor Ihrer Wahl. Hier finden
Sie jetzt eine kommentierte Version, mit den Einträgen, die Sie ändern müssen (Einträge ohne
Änderungen lasse ich weg und markiere die mit [...]):
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<log4j> [...]
</log4j>
<net>
<java>
<sip>
<communicator>
<FIRST_LAUNCH value="false"/>
<ENABLE_SIMPLE value="false"/>
<media> [...]
</media>
<sip>
<PUBLIC_ADDRESS value="sip:#######@sipgate.net"/>
Ersetzen Sie hier die ####### durch Ihre sipgate Nummer und tragen Sie dann den Eintrag inkl. @sipgate.net ein.
Zunächst einmal, ich habe wirklich keine Zeit persönlichen Support zu leisten. Also Emails mit diesem
Hintergrund fliegen gleich raus. Aber ich bin gerne bereit inhaltliche Fehler zu beseitigen, oder
zusätzliche Informationen einzupflegen, in dem Fall mail an
sd@morgenlan.de.
Bücher
"Voice Over IP" von Jochen Nölle
"Professionelle IP-Telefonie" von Oliver Pott, Harald Zapp
So für alle, die bis hierhin gekommen sind, der restliche Text ist nur für den
Wettbewerb bei heise und kann getrost ignoriert werden, aber wen es trotzdem interessiert,
hier ein paar Links zu meinen Seiten für den Wettbewerb: