Hallo zusammen,
ich versuche zwei Asterisk 1.6.2.6 mit DUNDI und MySQL ans spielen zu bringen. Nach dem Whitepaper von JR Richardson habe ich die Peers zusammengeschaltet. Das klappt auch soweit.
Die SIP-User melden sich am MySQL-Server auch korrekt an. Die Tables habe ich dem Beispiel entnommen:
Das klappt auch und ich kann mich auf beiden Asterisk-Server anmelden. Bevor jedoch ein Gespräch vermittelt wird, soll geschaut werden, ob das Gespräch nicht über SIP auf einen anderen Server vermittelt werden kann bzw. auf einem anderen Server angemeldet hat. Das habe ich auch mit dem Whitepaper gemacht und das klappt auch mit festen Einträgen.
Allerdings ist mir die Integration im Rahmen des Realtimes nicht klar.
Wie würde so eine Beispiel-Extention aussehen, damit er ein eingehendes Gespräch auf den DUNDI schickt und sozusagen die Antwort des Servers bzw. der Server abwartet.
Ich glaube mein Verständnisproblem liegt dadran, dass ich ja nicht wirklich sehen kann, auf welchem Server der User angemeldet hat, weil die Authentifizierung nur am SQL-Server stattfindet, ich aber über die "sip show users" keine Anmeldungen sehe, oder?
Woher weiß der Server dann welche er Bedienen muss? Legt er dafür in der extentions.conf einen dynamischen Context pro User an?
Wie sähe der Context für den Incoming Dundi aus, der direkt auf MySQL zugreift?
sip.conf
switch => Realtime
extconfig.conf
sipusers => mysql,general,sip_buddies
sippeers => mysql,general,sip_buddies
extensions => mysql,general,extensions_table
Würd mich über ne Beispiel-Exten freuen, was und wo wie eingespielt werden muss.
Danke für den Support,
MasterD
ich versuche zwei Asterisk 1.6.2.6 mit DUNDI und MySQL ans spielen zu bringen. Nach dem Whitepaper von JR Richardson habe ich die Peers zusammengeschaltet. Das klappt auch soweit.
Die SIP-User melden sich am MySQL-Server auch korrekt an. Die Tables habe ich dem Beispiel entnommen:
Code:
#
# Table structure for table `sip_buddies`
#
CREATE TABLE `sip_buddies` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(80) NOT NULL default '',
`host` varchar(31) NOT NULL default '',
`nat` varchar(5) NOT NULL default 'no',
`type` enum('user','peer','friend') NOT NULL default 'friend',
`accountcode` varchar(20) default NULL,
`amaflags` varchar(13) default NULL,
`call-limit` smallint(5) unsigned default NULL,
`callgroup` varchar(10) default NULL,
`callerid` varchar(80) default NULL,
`cancallforward` char(3) default 'yes',
`canreinvite` char(3) default 'yes',
`context` varchar(80) default NULL,
`defaultip` varchar(15) default NULL,
`dtmfmode` varchar(7) default NULL,
`fromuser` varchar(80) default NULL,
`fromdomain` varchar(80) default NULL,
`insecure` varchar(4) default NULL,
`language` char(2) default NULL,
`mailbox` varchar(50) default NULL,
`md5secret` varchar(80) default NULL,
`deny` varchar(95) default NULL,
`permit` varchar(95) default NULL,
`mask` varchar(95) default NULL,
`musiconhold` varchar(100) default NULL,
`pickupgroup` varchar(10) default NULL,
`qualify` char(3) default NULL,
`regexten` varchar(80) default NULL,
`restrictcid` char(3) default NULL,
`rtptimeout` char(3) default NULL,
`rtpholdtimeout` char(3) default NULL,
`secret` varchar(80) default NULL,
`setvar` varchar(100) default NULL,
`disallow` varchar(100) default 'all',
`allow` varchar(100) default 'g729;ilbc;gsm;ulaw;alaw',
`fullcontact` varchar(80) NOT NULL default '',
`ipaddr` varchar(15) NOT NULL default '',
`port` smallint(5) unsigned NOT NULL default '0',
`regserver` varchar(100) default NULL,
`regseconds` int(11) NOT NULL default '0',
`lastms` int(11) NOT NULL default '0',
`username` varchar(80) NOT NULL default '',
`defaultuser` varchar(80) NOT NULL default '',
`subscribecontext` varchar(80) default NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`),
KEY `name_2` (`name`)
) ENGINE=MyISAM ROW_FORMAT=DYNAMIC;
Das klappt auch und ich kann mich auf beiden Asterisk-Server anmelden. Bevor jedoch ein Gespräch vermittelt wird, soll geschaut werden, ob das Gespräch nicht über SIP auf einen anderen Server vermittelt werden kann bzw. auf einem anderen Server angemeldet hat. Das habe ich auch mit dem Whitepaper gemacht und das klappt auch mit festen Einträgen.
Allerdings ist mir die Integration im Rahmen des Realtimes nicht klar.
Wie würde so eine Beispiel-Extention aussehen, damit er ein eingehendes Gespräch auf den DUNDI schickt und sozusagen die Antwort des Servers bzw. der Server abwartet.
Ich glaube mein Verständnisproblem liegt dadran, dass ich ja nicht wirklich sehen kann, auf welchem Server der User angemeldet hat, weil die Authentifizierung nur am SQL-Server stattfindet, ich aber über die "sip show users" keine Anmeldungen sehe, oder?
Woher weiß der Server dann welche er Bedienen muss? Legt er dafür in der extentions.conf einen dynamischen Context pro User an?
Wie sähe der Context für den Incoming Dundi aus, der direkt auf MySQL zugreift?
sip.conf
switch => Realtime
extconfig.conf
sipusers => mysql,general,sip_buddies
sippeers => mysql,general,sip_buddies
extensions => mysql,general,extensions_table
Würd mich über ne Beispiel-Exten freuen, was und wo wie eingespielt werden muss.
Danke für den Support,
MasterD