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 :slight_smile:

EeepcCLI>
– 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>
EeepcCLI>
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 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.

Yes I had installed
Outbound Route Permissions 0.3.2.4
Have disabled and callback does work :slight_smile:

Thanks Philippe.

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.

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:

[code]#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;

#}[/code]

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 stack

I have triggered the callback from shell with:

I 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 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.

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! :slight_smile:
Thank you

Hello,

I have solved it :slight_smile:
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:

Resulting in something like:

Hope it helps,

Regards