We have :
Asterisk 1.2.24
Zaptel 1.2.21
Libpri 1.2.6
Apache 2.2.3
MySQL 5.0.32
vicidial 2.0.3
Debian 4.0, kernel 2.6.18-5-amd64 (SMP)
Agents are on Linksys PAP2T, using SIP trunk for outbound calls. No T1 cards, using ztdummy.
Everything works fine, manual, inbound and auto- dial, except when we have wrong or disconnected number in the list, on some occasions hang up doesn't work properly.
For example if I dial manually that number first 3-4 calls to it I hear busy signal and can hang up and dispo that call just fine.
Then on 5th or 6th call hitting HANG UP CUSTOMER doesn't lead to dispo screen, at the top of page ALT PHONE...FINISH LEAD links briefly show and disappear, then HANG UP and DIAL NEXT NUMBER are inactive, vicidial screen is stuck on "Waiting for Ring... 1 seconds". Attempts to make manual or fast dial lead to something like "you must be paused to make a new call".
The only solution is to log out and log in.
On campaign status screen I see the phone is in call.
screen -r output:
There are several suitable screens on:
2995.ASTfastlog (Detached)
2973.ASTupdate (Detached)
2976.ASTsend (Detached)
2979.ASTlisten (Detached)
2886.asterisk (Detached)
2982.ASTVDauto (Detached)
2985.ASTVDremote (Detached)
Type "screen [-d] -r [pid.]tty.host" to resume one of them.
This is asterisk CLI while making this call and hangup:
== Parsing '/etc/asterisk/manager.conf': Found
== Manager 'sendcron' logged on from 127.0.0.1
-- Executing MeetMe("Local/8600200@default-7733,2", "8600200") in new stack
> Channel Local/8600200@default-7733,1 was answered.
-- Executing Dial("Local/8600200@default-7733,1", "SIP/7783299***/19056641373|55|tTo") in new stack
-- Called 7783299***/19056641373
-- SIP/7783299***-006a92b0 is making progress passing it to Local/8600200@default-7733,1
== Manager 'sendcron' logged off from 127.0.0.1
== Parsing '/etc/asterisk/manager.conf': Found
== Manager 'sendcron' logged on from 127.0.0.1
== Spawn extension (default, 919056641373, 1) exited non-zero on 'Local/8600200@default-7733,1'
-- Executing DeadAGI("Local/8600200@default-7733,1", "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 DeadAGI("Local/8600200@default-7733,1", "agi://127.0.0.1:4577/VD_hangup--HVcauses--PRI-----NODEBUG-----0-----CANCEL----------)") in new stack
-- AGI Script agi://127.0.0.1:4577/VD_hangup--HVcause ... ----------) completed, returning 0
== Spawn extension (default, 8600200, 1) exited non-zero on 'Local/8600200@default-7733,2'
-- Executing DeadAGI("Local/8600200@default-7733,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 DeadAGI("Local/8600200@default-7733,2", "agi://127.0.0.1:4577/VD_hangup--HVcauses--PRI-----NODEBUG-----0---------------)") in new stack
-- AGI Script agi://127.0.0.1:4577/VD_hangup--HVcause ... ----------) completed, returning 0
== Manager 'sendcron' logged off from 127.0.0.1
vici*CLI>
Part of extensions.conf:
exten => h,1,DeadAGI(agi://127.0.0.1:4577/call_log)
exten => h,2,DeadAGI(agi://127.0.0.1:4577/VD_hangup--HVcause ... EBUG-----${HANGUPCAUSE}-----${DIALSTATUS}-----${DIALEDTIME}-----${ANSWEREDTIME}))
;dial a local number
exten =>_NXXXXXXXXX,1,Dial(${TRUNK}/${EXTEN},55,tTo)
exten =>_NXXXXXXXXX,2,Hangup()
exten =>_9NXXXXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},55,tTo)
exten =>_9NXXXXXXXXX,2,Hangup()
exten =>_9900XXXXXXX,1,Playback(please-contact-tech-supt)
exten =>_9900XXXXXXX,2,Hangup()
exten =>_91900XXXXXXX,1,Playback(please-contact-tech-supt)
exten =>_91900XXXXXXX,2,Hangup()
exten =>_91700XXXXXXX,1,Playback(please-contact-tech-supt)
exten =>_91700XXXXXXX,2,Hangup()
; dial an 800 outbound number
exten => _91800NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},55,tTo)
exten => _91800NXXXXXX,2,Hangup
exten => _91888NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},55,tTo)
exten => _91888NXXXXXX,2,Hangup
exten => _91877NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},55,tTo)
exten => _91877NXXXXXX,2,Hangup
exten => _91866NXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},55,tTo)
exten => _91866NXXXXXX,2,Hangup
; dial a long distance outbound number
exten => _91NXXNXXXXXX,1,Dial(${TRUNK}/${EXTEN:1},55,tTo)
exten => _91NXXNXXXXXX,2,Hangup
; dial a local outbound number (modified because of only LD T1)
exten => _9NXXXXXX,1,Dial(${TRUNK}/1727${EXTEN:1},55,tTo)
exten => _9NXXXXXX,2,Hangup
Do you need any other log file or output ?
During installation I deleted by mistake 1 of the vicidial conferences in MySQL vicidial_conferences table. When I deleted that table in MySQL and recreated it, somehow all entries got sorted backwards- 200 at top, 51 at bottom. For now this seems not to be an issue as vici starts from 200, next agent gets 199 and so on. May not be relevant, but wanted to mention that too.
A few other questions about vicidial:
1. When selecting callback time, does it have to be agent's local time or the called number local time? Couldn't find the answer in both manuals.
2. When adding new leads to an existing list, new numbers go on bottom of the list. Can I change vicidial List_order to UP with immediate effect, and without having agents to log off and on, so it starts dialing new numbers right away?
Thanks in advance.