Callback fails

As far as I am aware this worked prior to upgrade.
Log showing a request for callback.
DID called 3604699 and appears to be recognised ok?
Number to be called 729883 (local number).
Upgraded to 2.6.0.beta2.2
Callback 2.6.0.1
Asterisk 1.4.21.2
Remote phone does not ring, and no entries in reports.
Looks to me (with very limited knowledge) that the problem could be
checkperms.agi: CallerID not Parseable - received unknown - exiting with DENY
Hope this helps :)
Eeepc*CLI>
-- Executing [3604699@from-trunk:1] Set("SIP/3604697-b5eafe70", "__FROM_DID=3604699") in new stack
-- Executing [3604699@from-trunk:2] Gosub("SIP/3604697-b5eafe70", "app-blacklist-check|s|1") in new stack
-- Executing [s@app-blacklist-check:1] LookupBlacklist("SIP/3604697-b5eafe70", "") in new stack
-- Executing [s@app-blacklist-check:2] GotoIf("SIP/3604697-b5eafe70", "0?blacklisted") in new stack
-- Executing [s@app-blacklist-check:3] Set("SIP/3604697-b5eafe70", "CALLED_BLACKLIST=1") in new stack
-- Executing [s@app-blacklist-check:4] Return("SIP/3604697-b5eafe70", "") in new stack
-- Executing [3604699@from-trunk:3] ExecIf("SIP/3604697-b5eafe70", "0 |Set|CALLERID(name)=01483729883") in new stack
-- Executing [3604699@from-trunk:4] Set("SIP/3604697-b5eafe70", "__CALLINGPRES_SV=allowed_not_screened") in new stack
-- Executing [3604699@from-trunk:5] SetCallerPres("SIP/3604697-b5eafe70", "allowed_not_screened") in new stack
-- Executing [3604699@from-trunk:6] Goto("SIP/3604697-b5eafe70", "callback|2|1") in new stack
-- Goto (callback,2,1)
-- Executing [2@callback:1] Set("SIP/3604697-b5eafe70", "CALL=729883") in new stack
-- Executing [2@callback:2] Set("SIP/3604697-b5eafe70", "DESTINATION=disa.3.1") in new stack
-- Executing [2@callback:3] Set("SIP/3604697-b5eafe70", "SLEEP=5") in new stack
-- Executing [2@callback:4] System("SIP/3604697-b5eafe70", "/var/lib/asterisk/bin/callback 729883 disa.3.1 5 &") in new stack
-- Executing [2@callback:5] Hangup("SIP/3604697-b5eafe70", "") in new stack
== Spawn extension (callback, 2, 5) exited non-zero on 'SIP/3604697-b5eafe70'
Eeepc*CLI>
Eeepc*CLI>
Eeepc*CLI>
== Parsing '/etc/asterisk/manager.conf': Found
== Parsing '/etc/asterisk/manager_additional.conf': Found
== Parsing '/etc/asterisk/manager_custom.conf': Found
== Manager 'admin' logged on from 127.0.0.1
-- Executing [729883@from-internal:1] Macro("Local/729883@from-internal-867e,2", "user-callerid|SKIPTTL|") in new stack
-- Executing [s@macro-user-callerid:1] Set("Local/729883@from-internal-867e,2", "AMPUSER=") in new stack
-- Executing [s@macro-user-callerid:2] GotoIf("Local/729883@from-internal-867e,2", "1?report") in new stack
-- Goto (macro-user-callerid,s,10)
-- Executing [s@macro-user-callerid:10] GotoIf("Local/729883@from-internal-867e,2", "1?continue") in new stack
-- Goto (macro-user-callerid,s,19)
-- Executing [s@macro-user-callerid:19] NoOp("Local/729883@from-internal-867e,2", "Using CallerID "Callback" <>") in new stack
-- Executing [729883@from-internal:2] Set("Local/729883@from-internal-867e,2", "__ROUTENAME=LANDLINES-943") in new stack
-- Executing [729883@from-internal:3] Set("Local/729883@from-internal-867e,2", "_NODEST=") in new stack
-- Executing [729883@from-internal:4] Macro("Local/729883@from-internal-867e,2", "record-enable||OUT|") in new stack
-- Executing [s@macro-record-enable:1] GotoIf("Local/729883@from-internal-867e,2", "1?check") in new stack
-- Goto (macro-record-enable,s,4)
-- Executing [s@macro-record-enable:4] AGI("Local/729883@from-internal-867e,2", "recordingcheck|20090902-102828|asterisk-1251883708.1920") in new stack
-- Launched AGI Script /usr/share/asterisk/agi-bin/recordingcheck
recordingcheck|20090902-102828|asterisk-1251883708.1920: No AMPUSER db entry for . Not recording
-- AGI Script recordingcheck completed, returning 0
-- Executing [s@macro-record-enable:5] MacroExit("Local/729883@from-internal-867e,2", "") in new stack
-- Executing [729883@from-internal:5] Macro("Local/729883@from-internal-867e,2", "dialout-trunk|9|729883||") in new stack
-- Executing [s@macro-dialout-trunk:1] Set("Local/729883@from-internal-867e,2", "DIAL_TRUNK=9") in new stack
-- Executing [s@macro-dialout-trunk:2] AGI("Local/729883@from-internal-867e,2", "checkperms.agi") in new stack
-- Launched AGI Script /usr/share/asterisk/agi-bin/checkperms.agi
checkperms.agi: Starting checkperms.agi
checkperms.agi: CallerID not Parseable - received unknown - exiting with DENY
-- AGI Script Executing Application: (Goto) Options: (macro-trunk-dial|barred|1)
-- Goto (macro-trunk-dial,barred,1)
-- AGI Script checkperms.agi completed, returning 0
== Channel 'Local/729883@from-internal-867e,2' jumping out of macro 'dialout-trunk'
== Manager 'admin' logged off from 127.0.0.1
Eeepc*CLI>__________________



looks like you are running
looks like you are running routepermissions module from the extended repository. Turn that off and check again.
If that is an issue we will have to check with the author of the module to have a look or take it out of the Extended repository until someone wants to pitch in and fix it.
Philippe Lindheimer - FreePBX Project Leader
FreePBX Training Opportunities - Click Here
Get Official Paid Support - Click Here
Excellent
Yes I had installed
Outbound Route Permissions 0.3.2.4
Have disabled and callback does work :)
Thanks Philippe.
Thanks, I removed it from
Thanks,
I removed it from the Extended Repository and dropped an email to the author. If we get a fix I'll put it back in, I just don't know how available he is to have a look.
Philippe Lindheimer - FreePBX Project Leader
FreePBX Training Opportunities - Click Here
Get Official Paid Support - Click Here
I found a simple temporary
I found a simple temporary fix. This is not perfect, but it gets the job done. Use at your own risk:
nano /var/lib/asterisk/agi-bin/checkperms.agi
Then I commented out the following 5 lines:
#if (!isset($cidnum) || !is_numeric($cidnum)) { # debug("CallerID not Parseable - received $cidnum - exiting with DENY",1$ # $AGI->exec_goto("macro-trunk-dial", "barred", "1"); # exit; #}callback only works with internal extensions
Hello,
I am trying to setup callback so that it calls a cell phone, but i havent succeeded to make it work. However, it works if both destination and callback number are internal extensions.
Can be the problem that callback is not using the right context to place calls?
I am using callback 2.5.0.3 over a Trixbox 2.8.0.4:
This is the log:
-- Executing [1@callback:4] System("SIP/MyTrunk-000000e9", "/var/lib/asterisk/bin/callback 6XXXXXXXX from-did-direct.105.1 4 &") in new stack -- Executing [1@callback:5] Hangup("SIP/MyTrunk-000000e9", "") in new stack == Spawn extension (callback, 1, 5) exited non-zero on 'SIP/MyTrunk-000000e9' == Manager 'admin' logged on from 127.0.0.1 -- Executing [6XXXXXXXX@from-internal:1] Macro("Local/6XXXXXXXX@from-internal-b8c7;2", "outisbusy,") in new stack -- Executing [s@macro-outisbusy:1] Playback("Local/6XXXXXXXX@from-internal-b8c7;2", "all-circuits-busy-now,noanswer") in new stack -- <Local/6XXXXXXXX@from-internal-b8c7;2> Playing 'all-circuits-busy-now.ulaw' (language 'en') -- Executing [s@macro-outisbusy:2] Playback("Local/6XXXXXXXX@from-internal-b8c7;2", "pls-try-call-later,noanswer") in new stack -- <Local/6XXXXXXXX@from-internal-b8c7;2> Playing 'pls-try-call-later.ulaw' (language 'en') -- Executing [s@macro-outisbusy:3] Macro("Local/6XXXXXXXX@from-internal-b8c7;2", "hangupcall") in new stack -- Executing [s@macro-hangupcall:1] GotoIf("Local/6XXXXXXXX@from-internal-b8c7;2", "1?skiprg") in new stack -- Goto (macro-hangupcall,s,4) -- Executing [s@macro-hangupcall:4] GotoIf("Local/6XXXXXXXX@from-internal-b8c7;2", "1?skipblkvm") in new stack -- Goto (macro-hangupcall,s,7) -- Executing [s@macro-hangupcall:7] GotoIf("Local/6XXXXXXXX@from-internal-b8c7;2", "1?theend") in new stack -- Goto (macro-hangupcall,s,9) -- Executing [s@macro-hangupcall:9] Hangup("Local/6XXXXXXXX@from-internal-b8c7;2", "") in new stack == Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'Local/6XXXXXXXX@from-internal-b8c7;2' in macro 'hangupcall' == Spawn extension (macro-outisbusy, s, 3) exited non-zero on 'Local/6XXXXXXXX@from-internal-b8c7;2' in macro 'outisbusy' == Spawn extension (from-internal, 6XXXXXXXX, 1) exited non-zero on 'Local/6XXXXXXXX@from-internal-b8c7;2' -- Executing [h@from-internal:1] Macro("Local/6XXXXXXXX@from-internal-b8c7;2", "hangupcall") in new stack -- Executing [s@macro-hangupcall:1] GotoIf("Local/6XXXXXXXX@from-internal-b8c7;2", "1?skiprg") in new stack -- Goto (macro-hangupcall,s,4) -- Executing [s@macro-hangupcall:4] GotoIf("Local/6XXXXXXXX@from-internal-b8c7;2", "1?skipblkvm") in new stack -- Goto (macro-hangupcall,s,7) -- Executing [s@macro-hangupcall:7] GotoIf("Local/6XXXXXXXX@from-internal-b8c7;2", "1?theend") in new stack -- Goto (macro-hangupcall,s,9) -- Executing [s@macro-hangupcall:9] Hangup("Local/6XXXXXXXX@from-internal-b8c7;2", "") in new stackI have triggered the callback from shell with:
sudo -u asterisk /var/lib/asterisk/bin/callbackI think the output does not provide much clues.
Getting passed arguments: Array ( [0] => 6XXXXXXXX [1] => from-did-direct.105.1 [2] => 4 ) //...many events... //... Got event.. hangup No event handler for event 'hangup'Can someone give me some clue on how to solve it?
Thank you!
You are using trixbox wtih
You are using trixbox wtih FreePBX 2.5. Trixbox is out of support and is not maintained anymore,
FreePBX 2.5 is also out of official support.
Upgrade to our distro is the best advice I can give you.
Mikael Carlsson
(I am off-line, tinkering with my Chevy and my radios, don't know when I will be back)
Thank you, I suppose that I
Thank you, I suppose that I cant upgrade to your distro from a trixbox.
If anyone has gone through similar problem and knows how to solve it, please give me some guidance! :)
Thank you
Solved - callback only works with internal extensions
Hello,
I have solved it :)
If it helps someone..
The problem was the context didn't use the right context to place calls. (I am using "custom contexts" third party addon).
I used the callback v0.2 script, available in http://www.gufonero.com/asterisk/callback.html
It was necessary to specify the context to use in the line:
$channel="Local/".$callback_prefix.$callback_number."@from-internal";Resulting in something like:
$channel="Local/".$callback_prefix.$callback_number."@MYCONTEXT";Hope it helps,
Regards