There is no "official" documentation, but here is what I have found in the control panel.
There is so much that can be done with the Routes. You can specify more than one trunk so if it is possible to go out a cheap provider for one area, then put that first, if not, then it will try the next one. You are also able to charge a Connect Fee and Include X amount of seconds with that fee.
The "Email New Card Info" did not work for me and I left everything else set to no because I didnt need it.
I'll add a little here. I wrote the code for those so I'll take the blame. This section is designed to use the old mysql friends database. If this is used, when an account is created, a sip and/or iax2 account can be added to the friends db.
Update: September 27/2005: Darren Wiebe - I believe this is fixed.
Info from rolf(at)rowi.net: If you remove all spoken infos before the dial it will work, seems to be a bug.
Update: September 27/2005: Darren Wiebe - I have done some testing on this. It appears to be limited to certain versions of asterisk. I have not been able to ascertain exactly which versions.
These are just some things that I have found working with AstCC. I am not an expert by any means, but if you understand Perl, then the AGI script should be fairly easy to modify to suit your needs. I hope this 'guide' is helpful to someone.
ASTCC-ScreenShots
ASTCC-SampleSQLDB
BRANDS
This is where you can setup different cards with different Service fees. I'm not sure what the INC column is for, I usually leave it set at 6. I think it sets 6 seconds to the minimum bill time. Service fees and Servie Fee Days is for like a monthly charge. I havent figured out where the Markup field comes into play yet.CARDS
This is where you make the cards. You can get a list of cards or you can make/add money to any card. You are able to use GET style URLs to make your own interface to this. Just add a card and notice the URL. This could be very helpful if you want to build another interface (I just made direct DB calls)TRUNKS
This is where you setup your Trunks(duh?). You can name the trunk, set it technology, and then relate it to a real trunk/peer name on your asterisk box. If I understand correctly, only SIP and IAX work, but I could be wrong. I know SIP works, I have used it.ROUTES
This is a decent attempt at a LCR script. Here you will setup your costs for different providers. For example, if you want calls to Mexico to me $.10 a minute, then in the Pattern field, put '^01152.*' (without the '') And in the Cost per additional minute, put 1000. (The costs are in 1/100th of a penny.There is so much that can be done with the Routes. You can specify more than one trunk so if it is possible to go out a cheap provider for one area, then put that first, if not, then it will try the next one. You are also able to charge a Connect Fee and Include X amount of seconds with that fee.
CONFIGURE
This is where you setup your DB connection and some other information. Host, Username, and Password are all related to your DB. Card length is how many digits the card number will be. I think the voiceover always says 12 digits (Not sure).The "Email New Card Info" did not work for me and I left everything else set to no because I didnt need it.
IAX and SIP FRIENDS
I'm sorry, but I dont know what those are for, I havent found a need for them, but maybe my setup doesnt need them.I'll add a little here. I wrote the code for those so I'll take the blame. This section is designed to use the old mysql friends database. If this is used, when an account is created, a sip and/or iax2 account can be added to the friends db.
CDRs
Out-of-the-box CDRs do not work. They are broken. Unless another version was released since I d/led it. I just updated the ASTCC entry on the voip-info.org wiki and the quick-fix is there. The explanation of this is on the ASTCCDB page.Update: September 27/2005: Darren Wiebe - I believe this is fixed.
PROBLEMS
Besides the CDRs, the only problems I have found with ASTCC is that at the 'one minute warning' ASTCC cuts into the call, announces that you have one minute left, then the call is supposed resume for your last minute. If I had to guess, the RTP stream is broken when this happens because after the warning, neither side can hear the other. Unfortunately, I havent had a chance to find out why the voice traffic stops. If anyone could let me know what they find I would appreciate it. I asked Digium about it, and they wanted to charge me their hourly rate to work on it.Info from rolf(at)rowi.net: If you remove all spoken infos before the dial it will work, seems to be a bug.
Update: September 27/2005: Darren Wiebe - I have done some testing on this. It appears to be limited to certain versions of asterisk. I have not been able to ascertain exactly which versions.
OTHER NOTES
If you look on the voip-info.org, there are a couple neat ideas to use with AstCC. I have a box setup that when you dial out, it asks for the pin number then if the pin is right, it will go thru, if not, it denies you. There is also a way to make it go off of the caller ID so no pin is needed.These are just some things that I have found working with AstCC. I am not an expert by any means, but if you understand Perl, then the AGI script should be fairly easy to modify to suit your needs. I hope this 'guide' is helpful to someone.
ASTCC-ScreenShots
ASTCC-SampleSQLDB

Comments
333A kind of solution for RTP cuts before time (last_minute)
I´ve found a kind of solution (if we can call it this way...) and Im
reporting it here to help save some lives.
Editing into astcc.cgi I found where the parameters that set 60 and 30
seconds warning were and put zeros in its place. The last two
lots-of-zeros numbers at second line. So the zap trunk code of astcc.cgi
became like that:
======================================================================
if ($res->{tech} eq "Zap") {
$dialstr = "Zap/$res->{path}/$phone|30|HL(" . ($maxtime *
60 * 1000) . ":00000:00000)";
$res = $AGI->exec("DIAL $dialstr");
$answeredtime = $AGI->get_variable("ANSWEREDTIME");
$dialstatus = $AGI->get_variable("DIALSTATUS");
$callstart = localtime();
return $dialstatus;
}
======================================================================
And - at least until now... - everything is working fine. The credit is
being take from the cards in the right amount and no warnings are being
given when 60 and 30 seconds left. When credit finishes, the agi script
just finishes the call.
If somebody has a better way to do that, please let us know.
Rgs, Ricardo Poppi.
Assunto: ASTCC speaks and cut RTP channel
Data: Fri, 09 Sep 2005 18:09:52 -0300
De: Ricardo Poppi
Para: asterisk-users@lists.digium.com
Hi list.
I have a fine running Ser+Asterisk environment and have just installed
ASTCC. It´s working fine either, including its caller-id authentication
feature (the one we pass the card-number as CALLERID variable and
number-to-dial as EXTEN variable).
The issue, a great one, is that when the credit is about one minute to
end, the ASTCC prompt gets into the call, says that "you have one minute
left..." and when it was suppose to leave and let the RTP traffic of the
original call be "reestablished", it never happens. The RTP packets - I
could see that at asterisk debug screen - stop running and the call is
still signaled as active, but no media at all.
This is a serious problem I´m having and, as I could see, I´m not the
only one. Mr. Chilini reported that around jun 30th this year, as you
can see bellow: (I just added a comment at this voip-info page to see if
anyone could give some clues about that)
http://www.voip-info.org/tiki-index.php?page=ASTCCGuide#comments
Do anyone here in this list had any situation alike? Do you have any
clues do help me? (and others because it will be documented, of course).
Thanks in advance,
Ricardo Poppi.
333RTP down after 'one minute warning' message
Do anybody could figure out what is this about?
Thanks in advance.
333Brands
Let's say you want to add 50% profit to all your routes on only 1 brand.
You make a brand called "50 % profit" or something like that and then put "5000" in the markup field.
Create a card with the "50% profit" brand and it is calculated automaticly.
It works just fine with me.
2500 for 25%
7500 for 75% and so on........