Multi-Server Setup

All installation and configuration problems and questions

Moderators: gerski, enjay, williamconley, Op3r, Staydog, gardo, mflorell, MJCoate, mcargile, Kumba, Michael_N

Multi-Server Setup

Postby chadahm » Mon Oct 22, 2007 3:07 pm

Hello,

I've read a few things about running Vicidial/Astguiclient and have some concerns about multi-server configuration. I was given a task of setting up a system as follows:

2 webservers
5 asterisk servers
1 database server

For now, I was just going to setup the first asterisk server and then follow the docs for ACQS after getting one server up.
I've followed the scratch documentation and have all the pre-req's installed. This is what I'm running into and have a question:

Is it possible to have webserver, asterisk server, and database server seperate? I'm trying to install the astguiclient on my asterisk server and it's asking for my webroot directory. I'm stumped as I don't have apache/php installed on the first asterisk server. Doesn't the VD AGI stuff need to be on the asterisk server?

Any help would be appreciated. thanks
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby Op3r » Mon Oct 22, 2007 3:16 pm

have you checked the load_balance.txt?
Get paid for US outbound Toll Free calls. PM me.
Op3r
 
Posts: 1432
Joined: Wed Jun 07, 2006 7:53 pm
Location: Manila

Postby chadahm » Mon Oct 22, 2007 3:19 pm

Yes, I just noticed it and was reading it. Thanks for you fast reply. Sorry for the trigger happy post. :)
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby eijal » Tue Oct 23, 2007 9:20 am

You can have the asterisk servers, web servers and DB server in different machines.

The asterisk/vicidial servers must point to the ip address of de DB server, in the astguiclient.conf. Don't worry if the install.pl script asks the path of the web directory, you just accept de default values and copy that web pages to the web server.

The web server must point to the ip address of de DB server too, in the dbconnect.php file.

:idea:
eijal
 
Posts: 186
Joined: Thu Feb 08, 2007 6:34 pm

Postby chadahm » Tue Oct 23, 2007 10:08 am

Thanks eijal. I seem to have it working and did like you said, just let it create the directory and then moved the files to my 2 webservers. Was able to make a manual call, going to begin testing campaigns today. I was a little confused as I thought the Perl scripts for astguiclient and vicidial needed to run on the webserver, not on the asterisk boxes. However, after thinking about it, I can see why that makes no sense as they interact with asterisk, not the webpages. :)

After my setup, I may submit a HowTo based on my setup. When I'm done, I'll have 5 Vicidial/Asterisk servers, A load balancer for the webservers, 2 webservers, and a DB server all running core 2 duo procs and running CentOS 5.0 x86_64
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Need some more help

Postby chadahm » Tue Oct 30, 2007 1:48 pm

Ok, I currently have 2 vicidial/asterisk servers running(for now, will add others later).

I have followed the load_balancing document but only have 3 agents testing the new platform at this time and calls are only ringing through the one, is there any way to verify or force load balancing to see if my setup is right?

I do see them registered (Servers) to each other.


Also, is the load balancing a true load balancing (Meaning all the phones will register to the one server)?


Thanks,

Chad
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby mflorell » Wed Oct 31, 2007 10:39 pm

To test, set the max_vicidial_trunks on one of the servers where agents are to 0 and then dial.

As for the kind of load balancing, it depends on your setup, but basically it will balance the calls being placed across all available agents on all servers equally.
mflorell
Site Admin
 
Posts: 18387
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Postby andoy_ » Thu Nov 01, 2007 10:21 am

Matt,

given below config, when it will take effect?

exten => _192*168*000*179*8600XXX,1,Goto(default,${EXTEN:16},1)
;exten => _192*168*000*179*8600XXX*.,1,Goto(default,${EXTEN:16},1)
exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi)

; ### server 2 extens:
exten => _192*168*000*217*8600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o)
exten => _192*168*000*217*8600XXX,2,Hangup
exten => _192*168*000*127*8600XXX,1,Dial(${TRUNKIAX3}/${EXTEN:16},55,o)
exten => _192*168*000*127*8600XXX,2,Hangup
;exten => _192*168*000*127*8600XXX*.,1,Dial(${TRUNKIAX3}/${EXTEN:16},55,o)
;exten => _192*168*000*127*8600XXX*.,2,Hangup


thanks
andoy_
 
Posts: 16
Joined: Mon Oct 29, 2007 7:53 pm

Postby mflorell » Thu Nov 01, 2007 12:52 pm

your servers table is where you need to look for the max_vicidial_channels setting.
mflorell
Site Admin
 
Posts: 18387
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Postby andoy_ » Thu Nov 01, 2007 4:28 pm

hi,

your servers table is where you need to look for the max_vicidial_channels setting.


default Max VICIDIAL trunks=96.
if i set it lower, and when if all trunks are utilized, does it mean that it will not start bridging to another server?

by the way, heres the additional log files created...
Nov 1 16:33:48 DEBUG[7104] channel.c: Didn't get a frame from channel: SIP/SIPtrunk-2147
Nov 1 16:33:48 DEBUG[7104] channel.c: Bridge stops bridging channels SIP/SIPtrunk-2147 and IAX2/server3-16
Nov 1 16:33:48 DEBUG[7104] chan_iax2.c: We're hanging up IAX2/server3-16 now...
Nov 1 16:33:48 VERBOSE[7104] logger.c: -- Hungup 'IAX2/server3-16'
Nov 1 16:33:48 DEBUG[7104] app_dial.c: Exiting with DIALSTATUS=ANSWER.
Nov 1 16:33:48 VERBOSE[7104] logger.c: == Spawn extension (default, 192*168*000*127*8600051, 1) exited non-zero on 'SIP/S$
Nov 1 16:33:48 VERBOSE[7104] logger.c: -- Executing DeadAGI("SIP/SIPtrunk-2147", "agi://127.0.0.1:4577/call_log") in ne$
Nov 1 16:33:48 VERBOSE[7104] logger.c: -- AGI Script agi://127.0.0.1:4577/call_log completed, returning 0
Nov 1 16:33:48 VERBOSE[7104] logger.c: -- Executing DeadAGI("SIP/SIPtrunk-2147", "agi://127.0.0.1:4577/VD_hangup--HVcau$
Nov 1 16:33:48 VERBOSE[7104] logger.c: -- AGI Script agi://127.0.0.1:4577/VD_hangup--HVcause ... -----16--$


and....

Nov 1 16:31:34 DEBUG[3162] chan_sip.c: Stopping retransmission on '0857ab1202621ad44fdfa0f83b2294a1@192.168.0.179' of Reque$
Nov 1 16:31:34 DEBUG[3162] chan_sip.c: build_route: Contact hop: <sip:9113365994112@192.168.0.232>
Nov 1 16:31:34 VERBOSE[5938] logger.c: -- SIP/SIPtrunk-0ec4 answered Local/9113365994112@default-063c,2
Nov 1 16:31:34 VERBOSE[5936] logger.c: > Channel Local/9113365994112@default-063c,1 was answered.
Nov 1 16:31:34 DEBUG[5936] manager.c: Manager received command 'Logoff'
Nov 1 16:31:34 VERBOSE[5936] logger.c: == Manager 'sendcron' logged off from 192.168.0.179
Nov 1 16:31:34 VERBOSE[6004] logger.c: -- Executing AGI("Local/9113365994112@default-063c,1", "agi://127.0.0.1:4577/cal$
Nov 1 16:31:34 DEBUG[5938] channel.c: Planning to masquerade channel SIP/SIPtrunk-0ec4 into the structure of Local/91133659$
Nov 1 16:31:34 DEBUG[5938] channel.c: Done planning to masquerade channel SIP/SIPtrunk-0ec4 into the structure of Local/911$
Nov 1 16:31:34 DEBUG[5938] chan_local.c: Not posting to queue since already masked on 'Local/9113365994112@default-063c,2'
Nov 1 16:31:34 DEBUG[6004] channel.c: Got clone lock for masquerade on 'SIP/SIPtrunk-0ec4' at 0x81a1e04
Nov 1 16:31:34 DEBUG[5938] channel.c: Didn't get a frame from channel: Local/9113365994112@default-063c,2
Nov 1 16:31:34 DEBUG[5938] channel.c: Bridge stops bridging channels Local/9113365994112@default-063c,2 and SIP/SIPtrunk-0e$
Nov 1 16:31:34 DEBUG[6004] channel.c: Putting channel SIP/SIPtrunk-0ec4 in 64/64 formats
Nov 1 16:31:34 DEBUG[6004] channel.c: Released clone lock on 'Local/9113365994112@default-063c,1<ZOMBIE>'
Nov 1 16:31:34 DEBUG[6004] channel.c: Done Masquerading SIP/SIPtrunk-0ec4 (6)
Nov 1 16:31:34 DEBUG[5938] app_dial.c: Exiting with DIALSTATUS=ANSWER.
Nov 1 16:31:34 VERBOSE[5938] logger.c: == Spawn extension (default, 9113365994112, 2) exited non-zero on 'Local/911336599$
Nov 1 16:31:34 VERBOSE[5938] logger.c: -- Executing DeadAGI("Local/9113365994112@default-063c,2", "agi://127.0.0.1:4577$
Nov 1 16:31:34 VERBOSE[5938] logger.c: -- AGI Script agi://127.0.0.1:4577/call_log completed, returning 0
Nov 1 16:31:34 VERBOSE[5938] logger.c: -- Executing DeadAGI("Local/9113365994112@default-063c,2", "agi://127.0.0.1:4577$
Nov 1 16:31:34 VERBOSE[5938] logger.c: -- AGI Script agi://127.0.0.1:4577/VD_hangup--HVcause ... -----16--$
Nov 1 16:31:34 DEBUG[5938] cdr_addon_mysql.c: cdr_mysql: inserting a CDR record.
Nov 1 16:31:34 DEBUG[5938] cdr_addon_mysql.c: cdr_mysql: SQL command as follows: INSERT INTO cdr (calldate,clid,src,dst,dco$
Nov 1 16:31:34 VERBOSE[6004] logger.c: -- AGI Script agi://127.0.0.1:4577/call_log completed, returning 0
Nov 1 16:31:34 VERBOSE[6004] logger.c: -- Executing AGI("SIP/SIPtrunk-0ec4", "agi-VDAD_LO_transfer.agi|8367") in new st$
Nov 1 16:31:34 VERBOSE[6004] logger.c: -- Launched AGI Script /var/lib/asterisk/agi-bin/agi-VDAD_LO_transfer.agi
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is '"V1101163122000007591" <0000000000>'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is '0000000000'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is '9113365994112'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is 'default'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is 'Local/9113365994112@default-063c,2'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is 'SIP/SIPtrunk-0ec4'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is 'DeadAGI'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is 'agi://127.0.0.1:4577/VD_hangup--HVcauses--PRI-----NODEBUG-----16-----$
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is '2007-11-01 16:31:23'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is '2007-11-01 16:31:34'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is '2007-11-01 16:31:34'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is '11'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is '0'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is 'ANSWERED'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is 'DOCUMENTATION'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is '(null)'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is '1193949083.6'
Nov 1 16:31:34 DEBUG[5938] pbx.c: Function result is '(null)'
Nov 1 16:31:35 DEBUG[3761] manager.c: Manager received command 'Command'
Nov 1 16:31:35 DEBUG[3762] manager.c: Manager received command 'Command'
Nov 1 16:31:35 VERBOSE[6004] logger.c: -- AGI Script agi-VDAD_LO_transfer.agi completed, returning 0
Nov 1 16:31:35 VERBOSE[6004] logger.c: -- Executing MeetMe("SIP/SIPtrunk-0ec4", "8600051") in new stack


- given the logs, does it mean load balancing is working??
thanks
andoy_
 
Posts: 16
Joined: Mon Oct 29, 2007 7:53 pm

Postby mflorell » Fri Nov 02, 2007 1:20 am

set max_vicidial_trunks to 0 on the server with your test agent, and set it to a higher number on your other server. Then dial your campaign and if your agent gets a call it is all working.
mflorell
Site Admin
 
Posts: 18387
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Postby chadahm » Fri Nov 02, 2007 1:05 pm

Hello Matt,

I did set my max_vicidial_trunks to 0 and then nothing happened. My two test agents where ready but no calls were showing dialing on the realtime report and nothing was coming across on the Asterisk CLI, on either server. It was like it just died. :) Could I submit my configs to you or is there something I can check to see why my second server is not dialing?

Another Thought and this may be why it's not working, is exact conferences information need to be set in the vicidial/asterisk database for the second server? I just realized I have the conferences info in the first server, not on the second.


Best Regards,

Chad
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby mflorell » Fri Nov 02, 2007 3:32 pm

What is the output of "screen -r" on both servers?
mflorell
Site Admin
 
Posts: 18387
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Postby chadahm » Fri Nov 02, 2007 3:55 pm

Thanks Matt!

SERVER1
There are several suitable screens on:
2746.ASTsend (Detached)
2743.ASTupdate (Detached)
2591.ASTfastlog (Detached)
2749.ASTlisten (Detached)
2589.ASTVDadapt (Detached)
2755.ASTVDremote (Detached)
2752.ASTVDauto (Detached)
2621.asterisk (Detached)
2593.ASTVDautoFILL (Detached)
Type "screen [-d] -r [pid.]tty.host" to resume one of them.


SERVER2
There are several suitable screens on:
2596.ASTsend (Detached)
2608.ASTfastlog (Detached)
2602.ASTVDauto (Detached)
2604.ASTVDremote (Detached)
2593.ASTupdate (Detached)
2558.asterisk (Detached)
2599.ASTlisten (Detached)
Type "screen [-d] -r [pid.]tty.host" to resume one of them.
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby mflorell » Fri Nov 02, 2007 7:31 pm

That looks right.

try connecting to the ASTVDautoFILL process when you are trying your test and see what output it gives you.
mflorell
Site Admin
 
Posts: 18387
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Postby chadahm » Sat Nov 03, 2007 5:02 pm

Thanks Matt...

Today saw the setting for balance dialing in the ADMIN settings...changed both servers and now the second server was dialing...However, no calls were passed back to the meetme and was getting a carrier level error (which is the carrier IP below) that I never seen before in asterisk CLI:
Got SIP response 481 "Call Leg/Transaction Does Not Exist" back from 66.235.230.10


Just to make sure that it wasn't a carrier level issue, registered to each server, killed the balance and was able to get calls on the campaign for each server individually....Any idea what I'm missing or what's going on?

Server1_IP: 66.235.230.153
Server2_IP: 66.235.230.154

Here is some of the capture(s) i got from screen output from ASTVDautoFILL process:
loop counter: |5759964|
TIME DEBUG: -7.00|-7.00|0| GMT: 22:37
TEST: 3
2007-11-03 15:37:32|SERVERS WITH TRUNK BALANCE: 2
CAMPAIGNS WITH TRUNK SHORTAGE: 1| TOTAL SHORTAGE: 3|
2007-11-03 15:37:32| CAMPAIGN: TEST
DB_balance_fill: 3 VAC_balance_fill: 3
Additional Balance Calls Needed For This Campaign: 0
SERVERS WITH TRUNK FULL for TEST: |66.235.230.153| |'66.235.230.153'||
2007-11-03 15:37:32|Balance Servers available: 1|
VAC CALLS: |3|0|3|
SETTINGS: |0|96|0||
TEMPVALS: |0|93|93||
2007-11-03 15:37:32| Server: 66.235.230.154 AVAIL: 93 DIAL: 0 Campaign Dial Fill tally: 0/0|
2007-11-03 15:37:32|TEST 66.235.230.154: CALLING|
CURRENT FILL: 3 = (3 + 0)
TIME DEBUG: -7.00|-7.00|0| GMT: 22:37

loop counter: |5759963|
TIME DEBUG: -7.00|-7.00|0| GMT: 22:37
TEST: 3
2007-11-03 15:37:35|SERVERS WITH TRUNK BALANCE: 2
CAMPAIGNS WITH TRUNK SHORTAGE: 1| TOTAL SHORTAGE: 3|
2007-11-03 15:37:35| CAMPAIGN: TEST
DB_balance_fill: 3 VAC_balance_fill: 3
Additional Balance Calls Needed For This Campaign: 0
SERVERS WITH TRUNK FULL for TEST: |66.235.230.153| |'66.235.230.153'||
2007-11-03 15:37:35|Balance Servers available: 1|
VAC CALLS: |3|0|3|
SETTINGS: |0|96|0||
TEMPVALS: |0|93|93||
2007-11-03 15:37:35| Server: 66.235.230.154 AVAIL: 93 DIAL: 0 Campaign Dial Fill tally: 0/0|
2007-11-03 15:37:35|TEST 66.235.230.154: CALLING|
CURRENT FILL: 3 = (3 + 0)
TIME DEBUG: -7.00|-7.00|0| GMT: 22:37

loop counter: |5759934|
TIME DEBUG: -7.00|-7.00|0| GMT: 22:38
TEST: 3
2007-11-03 15:38:48|SERVERS WITH TRUNK BALANCE: 2
CAMPAIGNS WITH TRUNK SHORTAGE: 1| TOTAL SHORTAGE: 3|
2007-11-03 15:38:48| CAMPAIGN: TEST
DB_balance_fill: 3 VAC_balance_fill: 2
Additional Balance Calls Needed For This Campaign: 1
SERVERS WITH TRUNK FULL for TEST: |66.235.230.153| |'66.235.230.153'||
2007-11-03 15:38:48|Balance Servers available: 1|
VAC CALLS: |2|0|2|
SETTINGS: |0|96|0||
TEMPVALS: |1|94|94||
2007-11-03 15:38:48| Server: 66.235.230.154 AVAIL: 94 DIAL: 1 Campaign Dial Fill tally: 1/1|
2007-11-03 15:38:48|TEST 66.235.230.154: CALLING|
|UPDATE vicidial_hopper set status='QUEUE', user='VDAD_66.235.230.154' where campaign_id='TEST' and status='READY' order by hopper_id LIMIT 1|
hopper rows updated to QUEUE: |1|
|SELECT lead_id FROM vicidial_hopper where campaign_id='TEST' and status='QUEUE' and user='VDAD_66.235.230.154' LIMIT 1|
|UPDATE vicidial_hopper set status='INCALL' where lead_id='193'|
hopper row updated to INCALL: |1|193|
2007-11-03 15:38:48|| number call dialed|TEST|V1103153848000000193|INSERT INTO vicidial_manager values('','','2007-11-03 15:38:48','NEW','N','66.235.230.154','','Originate','V1103153848000000193','Exten: 8365','Context: default','Channel: Local/16023587999@default','Priority: 1','Callerid: V1103153848000000193','Timeout: 60000','','','','')|0.00||
CURRENT FILL: 3 = (2 + 1)
TIME DEBUG: -7.00|-7.00|0| GMT: 22:38
2007-11-03 15:38:48|| lastcalldate UPDATED 1|'101'||

loop counter: |5759890|
2007-11-03 15:40:36|| updating server parameters |8365|-7.00|default|Y|1||
TIME DEBUG: -7.00|-7.00|0| GMT: 22:40
TIME DEBUG: -7.00|-7.00|0| GMT: 22:40
TEST: 3
2007-11-03 15:40:38|SERVERS WITH TRUNK BALANCE: 2
CAMPAIGNS WITH TRUNK SHORTAGE: 1| TOTAL SHORTAGE: 3|
2007-11-03 15:40:38| CAMPAIGN: TEST
DB_balance_fill: 3 VAC_balance_fill: 2
Additional Balance Calls Needed For This Campaign: 1
SERVERS WITH TRUNK FULL for TEST: |66.235.230.153| |'66.235.230.153'||
2007-11-03 15:40:38|Balance Servers available: 1|
VAC CALLS: |2|0|2|
SETTINGS: |0|96|0||
TEMPVALS: |1|94|94||
2007-11-03 15:40:38| Server: 66.235.230.154 AVAIL: 94 DIAL: 1 Campaign Dial Fill tally: 1/1|
2007-11-03 15:40:38|TEST 66.235.230.154: CALLING|
|UPDATE vicidial_hopper set status='QUEUE', user='VDAD_66.235.230.154' where campaign_id='TEST' and status='READY' order by hopper_id LIMIT 1|
hopper rows updated to QUEUE: |1|
|SELECT lead_id FROM vicidial_hopper where campaign_id='TEST' and status='QUEUE' and user='VDAD_66.235.230.154' LIMIT 1|
|UPDATE vicidial_hopper set status='INCALL' where lead_id='199'|
hopper row updated to INCALL: |1|199|
2007-11-03 15:40:38|| number call dialed|TEST|V1103154038000000199|INSERT INTO vicidial_manager values('','','2007-11-03 15:40:38','NEW','N','66.235.230.154','','Originate','V1103154038000000199','Exten: 8365','Context: default','Channel: Local/16028661053@default','Priority: 1','Callerid: V1103154038000000199','Timeout: 60000','','','','')|0.00||
CURRENT FILL: 3 = (2 + 1)
TIME DEBUG: -7.00|-7.00|0| GMT: 22:40
2007-11-03 15:40:38|| lastcalldate UPDATED 1|'101'||

loop counter: |5759889|
TIME DEBUG: -7.00|-7.00|0| GMT: 22:40
TEST: 3
2007-11-03 15:40:41|SERVERS WITH TRUNK BALANCE: 2
CAMPAIGNS WITH TRUNK SHORTAGE: 1| TOTAL SHORTAGE: 3|
2007-11-03 15:40:41| CAMPAIGN: TEST
DB_balance_fill: 3 VAC_balance_fill: 3
Additional Balance Calls Needed For This Campaign: 0
SERVERS WITH TRUNK FULL for TEST: |66.235.230.153| |'66.235.230.153'||
2007-11-03 15:40:41|Balance Servers available: 1|
VAC CALLS: |3|0|3|
SETTINGS: |0|96|0||
TEMPVALS: |0|93|93||
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby mflorell » Sat Nov 03, 2007 10:47 pm

That process seems to be working fine, can you post Real Asterisk CLI output when you try balance dialing?
mflorell
Site Admin
 
Posts: 18387
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Postby chadahm » Sun Nov 04, 2007 1:43 pm

Will Do...Thanks for your help!!!
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby chadahm » Sun Nov 04, 2007 2:53 pm

Ok, obviously there is zero output (except when logging out from webclient) from server1 as max vicidial channels were set to 0

Here is Server2's asterisk CLI for the entire session:

Reposting CLI with specified comments on next reply, thanks Matt
Last edited by chadahm on Mon Nov 05, 2007 9:24 am, edited 1 time in total.
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby mflorell » Mon Nov 05, 2007 1:52 am

Please delete that last post and post the Real Asterisk CLI output with the server AGI output set to STDERR or BOTH.

Sorry I didn't specify that before.
mflorell
Site Admin
 
Posts: 18387
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Postby chadahm » Mon Nov 05, 2007 9:26 am

Thanks Matt, can you please specify where/how I change the AGI and which AGI/File that is? I'm sorry, I'm not exactly a newbie with straight asterisk but am a Newbie with Vicidial/Astguiclient and AGIs :) I am in the directory of the AGI /var/lib/asterisk/agi-bin/ but do not know which one to edit and not even sure that's what I should do. I realize there's 'agi debug' with the cli but not sure what to do. Thanks for all your help.
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby andoy_ » Mon Nov 05, 2007 12:18 pm

Thanks Matt!
I guess its working perfectly fine.

heres some of my log file...

[server1 with 0 max_vicidial_trunks]
Nov 5 12:04:37 VERBOSE[3163] logger.c: -- Accepting AUTHENTICATED call from 192.168.0.127:
> requested format = ulaw,
> requested prefs = (),
> actual format = gsm,
> host prefs = (gsm),
> priority = mine
Nov 5 12:04:37 VERBOSE[5824] logger.c: -- Executing MeetMe("IAX2/server3-3", "8600051") in new stack
Nov 5 12:04:37 DEBUG[5824] app_meetme.c: Placed channel IAX2/server3-3 in ZAP conf 1023
Nov 5 12:04:37 DEBUG[3163] chan_iax2.c: Ooh, voice format changed to 2


[server2 with 4 max_vicidial_trunks]
-- Executing AGI("Local/9113365997131@default-7346,2", "agi://127.0.0.1:4577 /call_log") in new stack
-- AGI Script agi://127.0.0.1:4577/call_log completed, returning 0
-- Executing Dial("Local/9113365997131@default-7346,2", "SIP/SIPtrunk/911336 5997131||tTo") in new stack
-- Called SIPtrunk/9113365997131
-- SIP/SIPtrunk-09a551c0 is making progress passing it to Local/911336599702 3@default-a1ef,2
-- SIP/SIPtrunk-09ab2028 is making progress passing it to Local/911336599713 0@default-b19a,2
-- SIP/SIPtrunk-09a7e648 is making progress passing it to Local/911336599712 2@default-6f5b,2
-- SIP/SIPtrunk-09abfb80 is making progress passing it to Local/911336599713 1@default-7346,2
-- SIP/SIPtrunk-09abfb80 answered Local/9113365997131@default-7346,2
> Channel Local/9113365997131@default-7346,1 was answered.
== Manager 'sendcron' logged off from 192.168.0.127
-- Executing AGI("Local/9113365997131@default-7346,1", "agi://127.0.0.1:4577 /call_log") in new stack
== Spawn extension (default, 9113365997131, 2) exited non-zero on 'Local/91133 65997131@default-7346,2'
-- Executing DeadAGI("Local/9113365997131@default-7346,2", "agi://127.0.0.1: 4577/call_log") in new stack
-- AGI Script agi://127.0.0.1:4577/call_log completed, returning 0
-- Executing AGI("SIP/SIPtrunk-09abfb80", "agi-VDAD_LB_transfer.agi|8368") i n new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/agi-VDAD_LB_transfer.agi
-- AGI Script agi://127.0.0.1:4577/call_log completed, returning 0
-- Executing DeadAGI("Local/9113365997131@default-7346,2", "agi://127.0.0.1: 4577/VD_hangup--HVcauses--PRI-----NODEBUG-----16-----ANSWER-----7-----0)") in ne w stack
-- AGI Script agi://127.0.0.1:4577/VD_hangup--HVcause ... DEBUG----- 16-----ANSWER-----7-----0) completed, returning 0
-- AGI Script agi-VDAD_LB_transfer.agi completed, returning 0
-- Executing Dial("SIP/SIPtrunk-09abfb80", "IAX2/server3:test@192.168.0.179/ 8600051|55|o") in new stack
-- Called server3:test@192.168.0.179/8600051
-- Call accepted by 192.168.0.179 (format gsm)
-- Format for call is gsm
-- IAX2/server1-2 answered SIP/SIPtrunk-09abfb80
andoy_
 
Posts: 16
Joined: Mon Oct 29, 2007 7:53 pm

Postby chadahm » Mon Nov 05, 2007 12:32 pm

Just making sure you know Matt, the last post was not me and I'm still stuck :(

Thanks,
Chad :)
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby andoy_ » Mon Nov 05, 2007 1:11 pm

chadahm,

if the other server is dialing.. and not passing ANSWERED calls tru IAX trunks, i guess you need to check your extensions.conf
entries like these...

;machine IP
exten => _192*168*000*179*8600XXX,1,Goto(default,${EXTEN:16},1)
;exten => _192*168*000*179*8600XXX*.,1,Goto(default,${EXTEN:16},1)
exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi)

; ### server 2 extens: additional asterisk servers IP
exten => _192*168*000*217*8600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o)
exten => _192*168*000*217*8600XXX,2,Hangup
exten => _192*168*000*127*8600XXX,1,Dial(${TRUNKIAX3}/${EXTEN:16},55,o)
exten => _192*168*000*127*8600XXX,2,Hangup

what i did was to follow whats written in load_balance.txt
i'm sure it will work just like what i did :D
andoy_
 
Posts: 16
Joined: Mon Oct 29, 2007 7:53 pm

Postby chadahm » Mon Nov 05, 2007 2:04 pm

Thanks Andoy_ , I did double check my extensions.conf and found something wrong, however I thought I fixed them and still was having issues. Here they are on each server (2 Server setup)

SERVER1:

[globals]

; IAX Trunk Load Balance entries [start]
TRUNKIAX2=IAX2/ASTServ1:loadbal@66.235.230.154
; IAX Trunk Load Balance entries [end]

[default]
; [Start] Load Balancing Wildcard Entries
exten => _066*235*230*153*8600XXX,1,Goto(default,${EXTEN:16},1)
exten => _066*235*230*154*8600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o)

exten => _066*235*230*153*8600XXX*.,1,AGI(agi-VDADfixCXFER.agi)
exten => _066*235*230*154*8600XXX*.,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o)
exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi)

; [End ]Load Balancing Wildcard Entries



SERVER2:

[globals]

; IAX Trunk Load Balance entries [start]
TRUNKIAX1=IAX2/ASTServ2:loadbal@66.235.230.153
; IAX Trunk Load Balance entries [end]

[default]
; [Start] Load Balancing Wildcard Entries
exten => _066*235*230*153*8600XXX,1,Goto(default,${EXTEN:16},1)
exten => _066*235*230*154*8600XXX,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o)

exten => _066*235*230*153*8600XXX*.,1,AGI(agi-VDADfixCXFER.agi)
exten => _066*235*230*154*8600XXX*.,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o)
exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi)

; [End ]Load Balancing Wildcard Entries


If you notice anything that looks wrong, let me know....I will again check them myself to see if I have anything discombobalated. :)
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby andoy_ » Mon Nov 05, 2007 4:15 pm

hi,

i guess your extensions.conf entries are wrong...
specially priorities

[globals]

; IAX Trunk Load Balance entries [start]
TRUNKIAX2=IAX2/ASTServ1:loadbal@66.235.230.154
; IAX Trunk Load Balance entries [end]

[default]
; [Start] Load Balancing Wildcard Entries
exten => _066*235*230*153*8600XXX,1,Goto(default,${EXTEN:16},1)
exten => _066*235*230*154*8600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o)

exten => _066*235*230*153*8600XXX*.,1,AGI(agi-VDADfixCXFER.agi)
exten => _066*235*230*154*8600XXX*.,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o)
exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi)

; [End ]Load Balancing Wildcard Entries


if
server 1 = 66.235.230.153 (public IP huh?)
server 2 = 66.235.230.154 (public IP huh?)
therefore, your entries should look like these...

exten => _066*235*230*153*8600XXX,1,Goto(default,${EXTEN:16},1)
exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi)

exten => _066*235*230*154*8600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o)
exten => _066*235*230*154*8600XXX,2,Hangup

same goes for extensions.conf for server 2
you just need to reverse the IP entries and use the proper iax trunks (TRUNKIAX1/2) variable
andoy_
 
Posts: 16
Joined: Mon Oct 29, 2007 7:53 pm

Postby chadahm » Mon Nov 05, 2007 4:33 pm

thanks! I will look at that but I'm a little confused as it seems I have more entries then needed? If you don't mind, could you post each server on my configuration as it should be I really would appreciate it.

Thanks,
Chad
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby andoy_ » Mon Nov 05, 2007 4:42 pm

it will look something like these..
SERVER1:
[globals]

; IAX Trunk Load Balance entries [start]
TRUNKIAX2=IAX2/ASTServ1:loadbal@66.235.230.154
; IAX Trunk Load Balance entries [end]

[default]
; [Start] Load Balancing Wildcard Entries
exten => _066*235*230*153*8600XXX,1,Goto(default,${EXTEN:16},1)
exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi)

exten => _066*235*230*154*8600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o)
exten => _066*235*230*154*8600XXX,2,Hangup

; [End ]Load Balancing Wildcard Entries


SERVER2:
[globals]

; IAX Trunk Load Balance entries [start]
TRUNKIAX1=IAX2/ASTServ2:loadbal@66.235.230.153
; IAX Trunk Load Balance entries [end]

[default]
; [Start] Load Balancing Wildcard Entries
exten => _066*235*230*154*8600XXX,1,Goto(default,${EXTEN:16},1)
exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi)

exten => _066*235*230*153*8600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o)
exten => _066*235*230*153*8600XXX,2,Hangup

; [End ]Load Balancing Wildcard Entries


noticed the IP address entries???.... that should work....
andoy_
 
Posts: 16
Joined: Mon Oct 29, 2007 7:53 pm

Postby chadahm » Mon Nov 05, 2007 5:02 pm

Thank you so much, can't test it right now but I updated my confs and reloaded....

Just to note, that's a bit different than documented in the load_balance.txt

I'm not a Asterisk's guru so that's probably why I didn't catch it

Thanks Matt and andoy_ for all your help so far with this so far
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby andoy_ » Mon Nov 05, 2007 5:08 pm

its actually on Step 2 @ load_balancing.txt.
please check....
andoy_
 
Posts: 16
Joined: Mon Oct 29, 2007 7:53 pm

Postby chadahm » Mon Nov 05, 2007 5:30 pm

Well, it is a bit different and is formatted as I had my configs but I'm not going to go back and forth on this. :) Like I said if I understood it better, it would be easier to figure out so I really appreciate your help!

ok, question I have is that on my second server, I pretty much copied my configs to the second server and modified for load balancing, should I not have the meetme's in the server2 extensions.conf? Could this cause a problem?

I tried doing a quick test with agents dialing (12) with and without the meetme's and the number of agents waiting kept stacking up...so I assume the calls weren't being passed or if they were, I don't know where...However, no call leg errors like before so we are making progress.

Also, I didn't have this in my configs and it's from the load balance.txt...Should I? If so, the CL_GALLERIA doesn't apply to my setup.

; inbound VICIDIAL call with prompt for 4-digit fronter code
exten => 1234,1,Answer ; Answer the line
exten => 1234,2,AGI(agi-VDAD_LO_closer_inbound.agi,CL_GALLERIA-----7275555134-----Closer-----park----------999-----1)
exten => 1234,3,Hangup
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby mflorell » Tue Nov 06, 2007 7:48 am

You do need to have meetmes in both servers' extensions.conf.

you would use whatever in-group you set up instead of CL_GALLERIA
mflorell
Site Admin
 
Posts: 18387
Joined: Wed Jun 07, 2006 2:45 pm
Location: Florida

Postby chadahm » Tue Nov 06, 2007 10:12 am

Thanks Matt, Meetme rooms back in configs, updated the config as you mentioned in the last post....Still not working....I see calls waiting for agents and waiting for calls but never connect still

Here's something I'm not sure about that andoy_ posted and updated my configs with:

Server2:

1 [globals]
2
3 ; IAX Trunk Load Balance entries [start]
4 TRUNKIAX1=IAX2/ASTServ2:loadbal@66.235.230.153
5
6
7 exten => _066*235*230*154*8600XXX,1,Goto(default,${EXTEN:16},1)
8 exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi)
9
10 exten => _066*235*230*153*8600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o)
11 exten => _066*235*230*153*8600XXX,2,Hangup


Shouldn't Line 10 have TRUNKIAX1 instead? If so I've tried with both and still doesn't work. Matt, you had previously posted:

Please delete that last post and post the Real Asterisk CLI output with the server AGI output set to STDERR or BOTH.

Sorry I didn't specify that before.


I asked how to set that to give you the right output, could you please let me know?

Many thanks for your help.

-Chad
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby andoy_ » Tue Nov 06, 2007 2:58 pm

yes, it should be TRUNKIAX1

i have 3 asterisk/vicidial + 1mysql/apache server working fine with load balancing using those entries in extensions.conf


maybe u need to take a closer look in load_balance.txt
andoy_
 
Posts: 16
Joined: Mon Oct 29, 2007 7:53 pm

Postby chadahm » Tue Nov 06, 2007 8:55 pm

Thanks Andoy_ I realize I've made a few mistakes in my config and I will check the rest of the configs again(all other entries)...I know it's very close as it's working and completing calls, it's just not passing them to the meetme conferences(Seeing calls waiting for agents, and agents waiting for calls) which before it wasn't even getting that far...However, the question of the IAXTRUNK1 mistake actually was from your posting (look at where you posted my requested,example configs)....The LOAD_BALANCING.TXT in the parts you helped me with and we were going back and forth before was misleading and if we want to get granular, was different from what you posted....

Again, I appreciate all your help...I was looking for another way to debug this as I want this to work as much as you want me to say it works, and then go away :)

Is placement within extensions.conf a possible issue?
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby andoy_ » Tue Nov 06, 2007 9:07 pm

maybe you should take a closer look @ step-3&4@load_balancing.txt

noticed the extension 8367 & 8368
and make sure you changed the VDAD extension either 8367 or 8368(see step 4)
andoy_
 
Posts: 16
Joined: Mon Oct 29, 2007 7:53 pm

Postby chadahm » Tue Nov 06, 2007 9:36 pm

Thanks Andoy_

Checked extensions.conf and have entries as mentioned in the LOAD_BALANCING.txt for 8367 and 8368 on both servers

When you say

make sure you changed the VDAD extension either 8367 or 8368


Do you mean within the campaign and or server settings(Admin Interface) or both?

In the server settings there is: "VICIDIAL AD extension:" which I set to 8368 and in the campaign, set VDAD extension 8368

When I see calls waiting for agents and agents waiting for call, the below error will print out correspondingly

-- Got SIP response 481 "Call Leg/Transaction Does Not Exist" back from 66.235.230.10
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby chadahm » Tue Nov 06, 2007 11:26 pm

YIPEE!!!!! Got It working, it was the extension 8368 setting in the campaign and servers....Thanks everybody for all your help!!!! :) :D
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Postby andoy_ » Wed Nov 07, 2007 10:41 am

thanks man

:lol:
andoy_
 
Posts: 16
Joined: Mon Oct 29, 2007 7:53 pm

Postby chadahm » Thu Nov 08, 2007 1:34 pm

Hello,

I have a couple of questions, given the below sections in the extensions.conf.

; VICIDIAL_auto_dialer transfer script Load Balance Overflow:
exten => 8367,1,AGI(call_log.agi,${EXTEN})
exten => 8367,2,AGI(agi-VDAD_LO_transfer.agi,${EXTEN})
exten => 8367,3,AGI(agi-VDAD_LO_transfer.agi,${EXTEN})
exten => 8367,4,AGI(agi-VDAD_LO_transfer.agi,${EXTEN})
exten => 8367,5,Hangup

; VICIDIAL_auto_dialer transfer script Load Balanced:
exten => 8368,1,AGI(call_log.agi,${EXTEN})
exten => 8368,2,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
exten => 8368,3,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
exten => 8368,4,AGI(agi-VDAD_LB_transfer.agi,${EXTEN})
exten => 8368,5,Hangup


1. what is the difference in each AGI for each extension?
2. There are three entries for each AGI, could you explain why there are three?

Reason I'm asking is I'm having some call stacking (hangups aren't actually hanging up on one call and brings a 2 call into the conference) issues with using the balance dialing and not sure where to go from here. It's similar to manual dialing issues that i've had.
chadahm
 
Posts: 49
Joined: Mon Oct 22, 2007 2:52 pm

Next

Return to Support

Who is online

Users browsing this forum: No registered users and 83 guests