Hello,
I am running PIAF 1.7.5.7 with FreePBX 2.1.0.7, Asterisk 1.8.6 and a2billing 1.9.4
Everything is set up and running fine.
However I have one issue: I am using a2billing to manage my DID's (specifically I use it to forward/resell DID's). All my customers are managed in a2billing.
I pass all calls though FreePBX (because some lines are used for fax and other services). I have tried to set up a catchall for did's in FreePBX - in this manner all calls (not specifically listed in FreePBX) will be sent to a2billing and dealt with there. (The DID number has been modified in the text below)
However when I do this I get "Catch-All DID Match - Found 123456789 - You probably want a DID for this." ...and the call is not processed. It seems to go into an endless loop... And I don't want a DID for this (the DID is in a2billing)
It works great if I add the corresponding DID (equal to that in a2billing) to FreePBX and forward the calls "individually" - however this is not ideal with a large number of customers.
I have posted the relevant log here: ------- start log -- Executing [123456789@from-trunk:1] NoOp("SIP/MyDivert-00000011", "Catch-All DID Match - Found 5117074326 - You probably want a DID for this.") in new stack -- Executing [123456789@from-trunk:2] Goto("SIP/MyDivert-00000011", "ext-did,s,1") in new stack -- Goto (ext-did,s,1) -- Executing [s@ext-did:1] ExecIf("SIP/MyDivert-00000011", "1?Set(__FROM_DID=s)") in new stack -- Executing [s@ext-did:2] Gosub("SIP/MyDivert-00000011", "app-blacklist-check,s,1()") in new stack -- Executing [s@app-blacklist-check:1] GotoIf("SIP/MyDivert-00000011", "0?blacklisted") in new stack -- Executing [s@app-blacklist-check:2] Set("SIP/MyDivert-00000011", "CALLED_BLACKLIST=1") in new stack -- Executing [s@app-blacklist-check:3] Return("SIP/MyDivert-00000011", "") in new stack -- Executing [s@ext-did:3] Set("SIP/MyDivert-00000011", "CDR(did)=s") in new stack -- Executing [s@ext-did:4] ExecIf("SIP/MyDivert-00000011", "0 ?Set(CALLERID(name)= 123456789)") in new stack -- Executing [s@ext-did:5] Set("SIP/MyDivert-00000011", "__CALLINGPRES_SV=allowed_not_screened") in new stack -- Executing [s@ext-did:6] Set("SIP/MyDivert-00000011", "CALLERPRES()=allowed_not_screened") in new stack -- Executing [s@ext-did:7] Goto("SIP/MyDivert-00000011", "a2billing-did,s,1") in new stack -- Goto (a2billing-did,s,1) ---------- end log
What I think is happening here is this. 1) The call goes to FreePBX (asterisk), it is recognized by the catchall (all DID's), then forwarded to a2billing 2) A2billing recognizes the DID (which is listed there), and forwarded to another DID (in this case a mobile phone) 3) The outgoing call is goes to FreePBX and is then passed back to a2billing (to charge for the forwarding service). 4) Then somehow a2billing goes into a loop
Any help here would be highly appreciated
Cheers,
Bjorn
|