English Version
WEB IAX Phone Implementation HowTo

Im Netz sind einige ActiveX basierende Softphones zu finden. Leider sind die meisten nicht kostenfrei. Das hier verwendete ActiveX Control wurde von Babar Shafiq Nazmi auf Basis des 'IAXClient' SourceForge Projekt geschaffen.

Der 'IAXClient' und damit auch alle Anwendungen die diese Bibliothek statisch verwenden, unterliegen der 'GPL' bzw. 'LGPL'.

Die zugehörige und von Babar Shafiq Nazmi geschriebene Web Oberfläche dient wohl nur der Demonstration des ActiveX Control und ist nicht vollständig implementiert. Aus diesem Grund wurde die auf dieser Site zu findende Web Oberfläche 'WEB IAX Phone' geschaffen. Diese Seite beschreibt wie das 'WEB IAX Phone' auch auf der eigenen Web Site genutzt werden kann.

Das 'WEB IAX Phone' kann für private und nicht kommerzielle Anwendungen kostenfrei genutzt werden.

Um das 'WEB IAX Phone' auf der eigenen Web Site zu nutzen sind folgende HTML / JavaScript Elemente zu integrieren :

<script language="javaScript">
  iaxServer="example.dyndns.org";
  iaxName="webiaxuser";
  iaxPass="topsecret";
  iaxCLID="10000";
</script>
<script src="http://www.dorstel.de/iaxphone/call/iaxWebStart.js"
type="text/javascript"></script>

Diese Zeilen werden nur einmal pro Seite benötigt. Die Variablen haben die folgenden Bedeutungen :

[iaxServer]   Der Hostname oder die IP Adresse des eigenen Asterisk Server.

[iaxName]   Der Username des IAX User aus der 'iax.conf' Konfigurationsdatei des Asterisk Server. Wenn der 'guest' Account verwendet werden soll, kann diese Variable auch leer gelassen werden.

[iaxPass]   Das Passwort des IAX User aus der 'iax.conf' Konfigurationsdatei des Asterisk Server. Wenn der 'guest' Account verwendet werden soll, kann diese Variable auch leer gelassen werden. Wird diese Variable leer gelassen und nicht der 'guest' Account verwendet, so fordert das 'WEB IAX Phone' zur Eingabe des Passworts auf.

[iaxCLID]   Die 'Calling Line ID' wird vom 'WEB IAX Phone' als Quell Rufnummer verwendet. Wird diese Variable leer gelassen, so verwendet das 'WEB IAX Phone' als Quell Rufnummer einen Leerstring.

<a href="javascript:iaxWebStart('10001')">IAX Test Call</a>

Dieser Link löst die Anwahl aus. Die in diesem Beispiel verwendete Ziel Rufnummer ist die '10001'. Es kann eine beliebige Anzahl von Links pro Seite verwendet werden.

Hier findet man eine Beispiel Implementierung.

Der für die Beispiel Implementierung notwendige IAX User wird in dem Asterisk Konfigurationsfile 'iax.conf' wie folgt konfiguriert :

[webiaxuser]
type=friend
host=dynamic
secret=topsecret
context=default

Um dem User 'webiaxuser' und damit dem 'WEB IAX Phone' einen abgehenden Ruf zu einem SIP Endgerät mit Namen 'cisco7960' unter der Rufnummer '10001' zu ermöglichen sind folgende Zeilen in die 'Asterisk' Konfigurations Datei 'extensions.conf' aufzunehmen.

[default]
exten => 10001,1,Answer
exten => 10001,2,Dial(SIP/cisco7960,180,g)
exten => 10001,3,Congestion
exten => 10001,103,Busy

Um dem User 'webiaxuser' und damit dem 'WEB IAX Phone' einen ankommenden Ruf aus dem Context 'from_isdn' unter der Rufnummer '10000' zu ermöglichen sind folgende Zeilen in die 'Asterisk' Konfigurations Datei 'extensions.conf' aufzunehmen. Die gewählte Rufnummer (hier '10000') des 'WEB IAX Phone' sollte auch als 'iaxCLID' konfiguriert werden.

[from_isdn]
exten => 10000,1,Answer
exten => 10000,2,Dial(IAX2/webiaxuser,180,g)
exten => 10000,3,Congestion
exten => 10000,103,Busy