Support A2Billing :

provided by Star2Billing S.L.

Support A2Billing :
It is currently Thu Mar 28, 2024 2:36 pm
Hosted Voice Broadcast


All times are UTC




Post new topic Reply to topic  [ 17 posts ]  Go to page 1, 2  Next
Author Message
 Post subject: UNKNOWN CallerIDs --> Hangup
PostPosted: Sat Oct 21, 2006 2:38 am 
Offline

Joined: Sat Oct 21, 2006 2:01 am
Posts: 6
Location: Australia
Hi everyone,



I have installed the latest version Version 1.2.3 (BrainCoral) - Release : 13 August 2006, and noticed couple of problems so far:

1) I have setup my a2billing.conf file to use cid_enable=yes and callerid_authentication_over_cardnumber=Yes , so if the caller's callerID was in the database, system doesn't ask about the pin code. This works properly, BUT if caller has a private number (callerID ='' or unknown) then system doesn't work and hangs up on caller.
I found that it just happen in situations that callerID is unknown, it means if a caller use a line with callerID but if that callerID wasn't available in database, system will ask about pincode, so the problem is with unknown callerIDs. It looks like in that AGI file there is not any option to check if callerID is empty, because in Australia when a number is private, when you check in Astersik the callerID is empty (NOT unknown). So my quick fix to this bug was as following:

[custom-callingcard]
exten => s,1,Answer
exten => s,2,Set(NOCalleID=${IF($[ ${CALLERIDNUM}>1]?${CALLERIDNUM}:55555555)})
exten => s,3,Set(CALLERID(number)=${NOCalleID})
exten => s,4,Wait,2
exten => s,5,DeadAGI,a2billing.php
exten => s,6,Wait,2
exten => s,7,Hangup


So it means I just replace the unknown callerIDs with a dummy number (55555555), and in this way system works.

It is possible to add such a code in the main AGI file, but this one was easier for me. I hope you can find out where is the problem with the main code.

I haven't have this problem with version 1.07.

If you think I am doing something wrong in settings please let me know, I checked all the possibilities in a2billing.conf and just find out the above solution works for me.

2) List Speed Dial
If I choose List Speed Dial from CUSTOMERS menu, and then click on the small button near to FILTER ON CARDID, a pop up will open with the following error message:


The requested URL /A2Billing_UI/Public/CC_entity_card.php was not found on this server.


Areski, thanks for this grate application.

Regards,
ertebat


Top
 Profile  
 
 Post subject:
PostPosted: Sat Oct 21, 2006 4:20 am 
Offline

Joined: Mon Jun 19, 2006 5:14 pm
Posts: 218
in the 1.2.3 version the test for callerid changed. it no longer covers the case when the callerid is "empty" or when the callerid = 000000000

look in "function callingcard_ivr_authenticate($agi)" in Class.A2Billing.php and you wil see the test for callerid

if ($callerID_enable==1 && is_numeric($this->CallerID) && $this->CallerID>0){

that's the line of code that changed from 1.2.2 to 1.2.3

the work around is clever ;-)


Top
 Profile  
 
 Post subject:
PostPosted: Sat Oct 21, 2006 4:30 am 
Offline

Joined: Sat Oct 21, 2006 2:01 am
Posts: 6
Location: Australia
Thanks gue,

So it means the current code, doesn't cover private numbers because their callerID is not a numeric , so should I change it to something like:

if ($callerID_enable==1 && $this->CallerID>0){

in this case we don't check the is_numeric($this->CallerID).

I will give it a try.

Thank you for point this out.

Regards,
ertebat


Top
 Profile  
 
 Post subject:
PostPosted: Sat Oct 21, 2006 7:15 am 
Offline

Joined: Sat Oct 21, 2006 2:01 am
Posts: 6
Location: Australia
I found something else that I couldn't find any solution for that. When I call a destination through a2Billing, I always miss the first 2-4 seconds of the other party's conversation, I have tried this with different trunks, and it will happen all the times. Is there any setting for this or is it a bug? Sometimes I can not hear the other party is ringing, and all of the sudden I can hear the conversation(with missing the first 4 seconds).

Any solution for that would be appreciated,

Regards,
ertebat


Top
 Profile  
 
 Post subject:
PostPosted: Sat Oct 21, 2006 10:33 am 
Offline
Moderator
User avatar

Joined: Tue Jun 06, 2006 12:14 pm
Posts: 685
Location: florida
ertebat, is this an issue with A2B, asterisk install, or carrier ?? (A2B handles the billing of the call, where Astrisk is responsible for the processing)

I've encountered no such issue (so far)


Top
 Profile  
 
 Post subject:
PostPosted: Sat Oct 21, 2006 10:42 am 
Offline

Joined: Sat Oct 21, 2006 2:01 am
Posts: 6
Location: Australia
I know that A2B is the billing side of things here, but as you know it will control the call flow through an AGI and through Asterisk API, so all the call management and controlling the channels will happen inside that AGI file that coming with A2B, So we can't say that this is not related to A2B.

I have more than 10 different trunks registered in my server, and also have couple of custom AGI script to handle some stuff for me, and also using those trunks regularly myself to handle my incoming and outgoing calls, and I don't have that problem when I handling calls, this problem shows up when call going through A2B, it seems to me that it can't handle when the other party answer the call or it does it with delay.

-ertebat


Top
 Profile  
 
 Post subject:
PostPosted: Sat Oct 21, 2006 10:48 am 
Offline
Moderator
User avatar

Joined: Tue Jun 06, 2006 12:14 pm
Posts: 685
Location: florida
A quick test on your side to confirm your suspicions ... use a direct extension in Asterisk - taking A2B out of the equation. If problem no longer exists, I'd have to say you are right. If so, then I'd check the CLI's and look at timing to make sure it's not processor speed related. I'm curious about this myself as to what volume of traffic it can handle before degredations occur. .... 2-4 seconds .... damn that's a long time.


Top
 Profile  
 
 Post subject:
PostPosted: Sat Oct 21, 2006 10:56 am 
Offline

Joined: Sat Oct 21, 2006 2:01 am
Posts: 6
Location: Australia
krzykat, as I mentioned I have done that test. I am using that server as my PBX as well, everything is working properly. I don't have so much load on it, and I am sure that it is not related to load. Even when there is not any call on that server, it happening again.


Top
 Profile  
 
 Post subject:
PostPosted: Fri Dec 08, 2006 2:17 pm 
Offline

Joined: Sat Sep 09, 2006 9:05 am
Posts: 22
[custom-callingcard]
exten => _X.,1,Answer
exten => _X.,2,Set(NOCalleID=${IF($[ ${CALLERIDNUM}>1]?${CALLERIDNUM}:55555555)})
exten => _X.,3,Set(CALLERID(number)=${NOCalleID})
exten => _X.,4,Wait,2
exten => _X.,5,DeadAGI,a2billing.php
exten => _X.,6,Wait,2
exten => _X.,7,Hangup


Top
 Profile  
 
 Post subject:
PostPosted: Mon Dec 11, 2006 6:21 pm 
Offline

Joined: Sun Dec 03, 2006 10:40 am
Posts: 10
guys, if someone of You had payd attention, there's a post very close to yours ....


http://forum.asterisk2billing.org/viewtopic.php?t=1242


Top
 Profile  
 
 Post subject:
PostPosted: Sat Dec 30, 2006 4:20 am 
Offline

Joined: Tue Nov 21, 2006 7:01 pm
Posts: 19
Ilia,

If YOU'D been paying attention, you'd have seen that their posts were several months before yours!

:wink:

Tim


Top
 Profile  
 
 Post subject:
PostPosted: Sat Dec 30, 2006 4:41 am 
Offline

Joined: Tue Nov 21, 2006 7:01 pm
Posts: 19
Ertebat,

Are you also using cid_auto_assign_card_to_cid=YES? Because if you are then I think your clever workaround will add the fake CID 55555555 to the card which means the next person who calls would be authenticated automatically, and the cost would go on the wrong card!

This is indeed a clever workaround however does anyone (Areski - Help!) have a "real" fix for this problem?

Tim


Top
 Profile  
 
 Post subject:
PostPosted: Sat Dec 30, 2006 5:51 am 
Offline

Joined: Tue Nov 21, 2006 7:01 pm
Posts: 19
OK after more testing I have found that Ertebat's workaround does work for empty CID's but not for alpha-numeric CID's. I found one provider that sends the word "unknown" as the CID and one that sends "restricted" as the CID. The workaround does not work in this case because it's testing for ${CALLERIDNUM}>1 which resolves true for alpha-numeric CID's.

I changed the function "callingcard_ivr_authenticate($agi)" in Class.A2Billing.php as described by Areski from:

if ($callerID_enable==1 && is_numeric($this->CallerID) && $this->CallerID>0){

To this:

if ($callerID_enable==1){

It seems to work now however I wonder what the implications of removing the is_numeric and >0 tests might be?


Top
 Profile  
 
 Post subject:
PostPosted: Sun Dec 31, 2006 9:26 am 
Offline

Joined: Fri Apr 28, 2006 5:11 am
Posts: 426
Thanx timbo1966, is it help to me


Top
 Profile  
 
 Post subject:
PostPosted: Sun Dec 31, 2006 9:50 pm 
Offline

Joined: Tue Jun 20, 2006 3:23 pm
Posts: 153
I would recommend to keep it as previous code:

Class.A2Billing.php -> In Line: 1279,1

---- if ($callerID_enable==1 && is_numeric($this->CallerID) && $this->CallerID>0){

++++ if ($callerID_enable==1 && strlen($this->CallerID)>0){


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 17 posts ]  Go to page 1, 2  Next
Hosted Voice Broadcast


All times are UTC


Who is online

Users browsing this forum: No registered users and 7 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group