Hi,
wir kommen dem Problem glaube ich näher
Habe das Telefon (ohne Änderung an Asteriks) neu gestartet und es wird wie folgt registriert:
-- Registered SIP '2000' at 172.17.6.10 port 1024
> Saved useragent "snom820/8.1.3" for peer 2000
> Found column 'id' of type 'int(11)'
> Found column 'name' of type 'varchar(80)'
> Found column 'host' of type 'varchar(31)'
> Found column 'nat' of type 'varchar(5)'
> Found column 'type' of type 'enum('user','peer','friend')'
> Found column 'accountcode' of type 'varchar(20)'
> Found column 'amaflags' of type 'varchar(13)'
> Found column 'call-limit' of type 'smallint(5) unsigned'
> Found column 'callgroup' of type 'varchar(10)'
> Found column 'callerid' of type 'varchar(80)'
> Found column 'cancallforward' of type 'char(3)'
> Found column 'canreinvite' of type 'char(3)'
> Found column 'context' of type 'varchar(80)'
> Found column 'defaultip' of type 'varchar(15)'
> Found column 'dtmfmode' of type 'varchar(7)'
> Found column 'fromuser' of type 'varchar(80)'
> Found column 'fromdomain' of type 'varchar(80)'
> Found column 'insecure' of type 'varchar(4)'
> Found column 'language' of type 'char(2)'
> Found column 'mailbox' of type 'varchar(50)'
> Found column 'md5secret' of type 'varchar(80)'
> Found column 'deny' of type 'varchar(95)'
> Found column 'permit' of type 'varchar(95)'
> Found column 'mask' of type 'varchar(95)'
> Found column 'musiconhold' of type 'varchar(100)'
> Found column 'pickupgroup' of type 'varchar(10)'
> Found column 'qualify' of type 'char(3)'
> Found column 'regexten' of type 'varchar(80)'
> Found column 'restrictcid' of type 'char(3)'
> Found column 'rtptimeout' of type 'char(3)'
> Found column 'rtpholdtimeout' of type 'char(3)'
> Found column 'secret' of type 'varchar(80)'
> Found column 'setvar' of type 'varchar(100)'
> Found column 'disallow' of type 'varchar(100)'
> Found column 'allow' of type 'varchar(100)'
> Found column 'fullcontact' of type 'varchar(80)'
> Found column 'ipaddr' of type 'varchar(15)'
> Found column 'port' of type 'smallint(5) unsigned'
> Found column 'regserver' of type 'varchar(100)'
> Found column 'regseconds' of type 'int(11)'
> Found column 'lastms' of type 'int(11)'
> Found column 'useragent' of type 'varchar(80)'
> Found column 'username' of type 'varchar(80)'
> Found column 'defaultuser' of type 'varchar(80)'
> Found column 'subscribecontext' of type 'varchar(80)'
> Found column 'transport' of type 'varchar(80)'
In den Snom-Logs steht ebenfalls drin, dass alles geklappt hat:
Registered at registrar as
[email protected] (Expires: 60 secs)
Soweit so gut - die Anzeige mit "sip show peers" ist anschließend aber immer noch nicht gefüllt.
Daraufhin habe ich mir die Sip.conf noch Mal angeschaut. Hier sei noch erwähnt, dass die eigentlichen Telefon-Informationen aus der sip.conf in der MySQL-Datenbank stehen. Um die Fehlerquelle einzuschließen habe ich daher erst mal die MySQL-Sache deaktivert und bin auf die sip.conf umgestiegen. Folgender Eintrag steht dort nun:
[general]
context = default
port = 5060
bindaddr = 0.0.0.0
[2000]
host=dynamic
nat=no
type=friend
callerid=Stefan
cancallforward=yes
canreinvite=no
mailbox=2000
secret=streng_geheim
disallow=all
allow=alaw
Asterisk neu gestartet => alles läuft:
a) in sip show peers wird das Telefon angezeigt
b) es ist auch noch knapp 50 Versuchen immer zu erreichen, kein Aussetzer
Stelle ich nun wieder auf MySQL um, sieht die sip.conf nur noch wie folgt aus:
[general]
context = default
port = 5060
bindaddr = 0.0.0.0
und die extconfig.conf wurde an der Stelle wie folgt angepasst:
sipusers => mysql,general,sip
sippeers => mysql,general,sip
Anschließender Neustart von Asterisk ergibt folgendes:
1) das Telefon ist nur in rund 20% der Fälle erreichbar
2) das Telefon wird bei peers net angezeigt
=> genau die Probleme treten auf, die ich bisher hatte
Wenn ich "sip reload" und "sip show peers" unmittelbar hintereinander aufrufe, dann steht dort:
Reloading SIP
Name/username Host Dyn Nat ACL Port Status Realtime
0 sip peers [Monitored: 0 online, 0 offline Unmonitored: 0 online, 0 offline]
Jetzt stellt sich für mich die Frage: wieso klappt das ganze net in Kombination mit MySQL - sollte es doch eigentlich oder muss ich dafür noch etwas anderes einstellen?
Dankend
Stefan