root/branches/1.3/TODO

Revision 62, 30.7 kB (checked in by areski, 2 years ago)

BUG : callback DIVIDE THE AMOUNT OF CREDIT BY 2 IN ORDER TO AVOID NEGATIVE BALANCE IF THE USER USE ALL HIS CREDIT

Line 
1
2 ********************************************************************************
3                                         TODO LIST - SPECIFIC
4 ********************************************************************************
5
6 #### BUG : FAILOVER
7 ********************************************************************
8 http://forum.asterisk2billing.org/viewtopic.php?t=2243
9
10 Consider 2 trunks configured like this:
11 #1: trunkprefix=8888 removeprefix=0 failover=trunk #2
12 #2: trunkprefix=8889 removeprefix=0 failover=-1/none
13
14 When dialing 0123456789 the call is presented to trunk #1 as it should be:
15 888812345678
16
17 If the call fails over each of the successive attempts will add the correct prefix, but not remove the desired digits:
18 88890123456789
19
20
21
22 #### GMT
23 ********************************************************************
24 - we need a parameter to define the server_GMT
25 - when creating a customer we need to have it as default on GMT+0
26 - for signup module it can be managed with a right definition in the sql
27 - call-history.php on customer dont have any GMT support on it
28
29
30 #### CONFIGURATION
31 ********************************************************************
32 - if the field is readonly : find a way maybe with css to change the backgroup color of the field like grey color
33
34 - comments when u edit : "Insert the Group Name",  stuff like that when u edit -> this section is to provide a real information
35
36 - dropdown value : As we have many Variables like Card_Type which can have 2 Values like postpaid & Prepaid,
37    Our System will automatically show a Dropdown List to provide customer to select from it...
38    
39 - we need a drop down for the group in list configuration   
40
41 - remove the Text Area  and will make it simple Paragraph.. i will add a new type in the Framework
42   we need to show the only Description,, it should not confuse the use that either it is something to enter in database as this is description for this whole record
43
44 - we want to define a concept of heritage for the AGI-Conf1, 2, 3
45 using a general one agi-conf-base and we will only redefine the changes in agi-conf1, 2, etc...
46 The web interface need to allow us to redefine only the parameter we want.
47
48 - Change the name of list config groups to List Global Config
49
50
51
52 We should get something like this at the end :
53  
54 1. In Global config (list config groups), we should be able to click on each line, and only see the settings pertaining to that section.
55  
56 2. When we click on a section, we can then edit, just as we can under list configuration, but you can only see the section you have clicked on.
57  
58 4. Beneath "List Global Config" we need a button call Add AGI-CONF - this simply creates a standard agi-conf and calls it agi-conf2 (or 3 or 4 depending on how many have been created) We will see the parameter from AGI-Conf-Base and be able to redefine and save the changes
59  
60 The new agi-conf-X can then be accessed via "List Global Config"
61 this will do a SELECT of the AGI-Conf-Base and show the parameter that has been created
62  
63 5. Within each setting, where possible, the user should be restricted to valid values, e.g if the options are "yes" or "no" then there should be a dropdown that only allows "yes" or "no" and no other value is allowed.
64  
65  
66
67 #### BUG : SIGNUP
68 ********************************************************************
69 http://forum.asterisk2billing.org/viewtopic.php?p=7406#7406
70  we shouldn't deactivate magic_quotes_gpc at all.
71  
72
73 #### FEATURE : FRIENDS
74 ********************************************************************
75 its really hard to identify a sip frind based on name,  make the search base on the card number
76
77 #### BUG : IMPORT
78 ********************************************************************
79 http://forum.asterisk2billing.org/viewtopic.php?t=2221
80
81
82 #### TODO : CUSTOMER UI
83 ********************************************************************
84 1. May I suggest that the only Logo's displayed on the customer interface are the payment methods that are enabled.
85
86 #### TODO : GENERATE VOUCHER
87 ********************************************************************
88 In the generate option, the tag value is set to a random ID : 1181897201
89 this allow us to see exactly after the generation those that has been created!
90 If someone really use the tag feature to classify his voucher, this can be bit annoying!
91
92
93 #### TODO : Detach Selling ratecard from Buying ratecard
94 ********************************************************************
95 - you need to update the selling prices multiple times
96 - you cannot really remove the sorter matching prefixes as you do right now, since one provider can have more granularity than other
97
98
99 #### TODO : CallerID prefix for DIDs
100 ********************************************************************
101 to have a CallerID prefix for DIDs, so that you might want to allocate the same DID do different persons, depending on the caller id
102
103
104
105 #### A2Billing_UI/Public/index.php
106 ********************************************************************
107 QUERY:INSERT INTO cc_system_log (iduser, loglevel, action, description, tablename, pagename, ipaddress, data) VALUES('1','1','Page Visit','User Visited the Page','','index.php','127.0.0.1','')
108
109
110 #### MAILTYPE : EPAYMENT GATEWAY SECURITY
111 ********************************************************************
112 Can you add a Mailtype to Epayment Gateway Security Verification Failed so that it can be edited?
113
114
115 #### CUSTOMER : IAX / SIP Info
116 ********************************************************************
117 user interface ability to et up the codec, etc..
118
119
120 #### IAX / SIP Info on signup
121 ********************************************************************
122 then we could say in the customer signup email -
123 IAX details : Username = $card_gen, Password = $password CID = $cardalias
124
125
126 Thank you for registering with Call-Labs
127
128 Please credit your account by paying via the customer interface at http://myaccount.call-labs.com/
129
130 To log into your account please use your email address or card-alias ($cardalias) as your username and your password ($password) to login.
131
132 Configure your VoIP phone with the following settings.
133
134 Host / SIP proxy = voip.call-labs.com
135
136 Account Number = $card_gen
137
138 Password = $password
139
140 CallerID = $cardalias
141
142  
143
144 Kind regards,
145
146 The Call Labs Team
147
148
149
150
151
152
153 #### GMT : REPORT & INVOICING
154 ********************************************************************
155 Suppot GMT : report & invoicing
156
157
158 #### move a2billing.conf in DB
159 ********************************************************************
160 move a2billing.conf in DB
161
162
163 #### CallerID Name
164 ********************************************************************
165 Support callerID name for authentication
166
167
168
169 #### Add VoiceMail
170 ********************************************************************
171
172 http://www.ecualug.org/?q=2006/12/12/comos/configurar_a2billing_en_menos_de_10_minutos
173 http://forum.asterisk2billing.org/viewtopic.php?t=93&highlight=voicemail
174
175
176 You need to create the appropiated line for each extension at the voicemail.conf file. Add the following lines to your a2billing context to give your clients the voicemail feature:
177
178 Code:
179
180 [vmmain]
181 exten => *97,1,Answer
182 exten => *97,n,Wait(1)
183 exten => *97,n,VoiceMailMain(${CALLERID(num)}@default)
184 exten => *97,n,Hangup
185
186
187
188
189
190
191 #### ACL : Access Control List
192 ********************************************************************
193 try to improve for a complex ACL,
194 for each pages / Section
195
196 Access Right like Edit ; Delete ; Add
197
198
199
200
201
202 #### WEB SYSTEM TO AUTOMATE UPDATE OF RATECARD
203 ********************************************************************
204 Web system to automate update of ratecard
205
206 changed rates : the 15th -> 00:00 and the 1st -> 00:00
207 GMT : 0
208
209
210 #### AUTO CREATE CARD
211 ********************************************************************
212 Creating an Account from the Caller ID
213 there is no setting for currency, so despite the fact that I had set the base currency to Euro, it created an account in USD.
214 Maybe the account should be setup in the Base currency by default ?
215
216
217
218 #### MISC
219 ********************************************************************
220 1. Voice over ring tone.
221 how to simulate:  Set up multiaccess on the user account,  answer=no (in a2billing.conf).
222 sometimes u can hear (durring the other party phone rings) a voice with "and then pres pound key" over the ring tone.
223  
224 2. Can not call users alias with 9+alias  , again answer=no in a2billing.conf
225  
226 3. Soft Phone dont work.
227
228
229
230
231
232
233 #### UPDATE STATUS IN PAYPAL AND MONEY BOOKERS
234 ********************************************************************
235 We should have the way to manage the Pending transactions !!!
236
237 There is a interface Provideded by paypal and Money bookers to get status of pending transactions
238 so that later on admin can update the status of transactions which were pending by quering the Epayment Gateway
239
240 so that if any Payment is Pending, the Admin can check the Status of Transaction
241 this will actually query the epayment gateway to provide the status of transaction
242 we will need to build the admin interface to see the transactions that are pending
243 so that admin can click on update button to update the status
244
245
246 #### FEATURE IN VIEW FRAMEWORK TO SHOW A BUTTON ACCORDING TO THE VALUE OF ONE OF THE FIELD
247 ********************************************************************
248 what will happend when a invoice is paid
249 we should not show the pay invoice button then
250 is there anything in framework that support like this?
251
252
253 #### NEW TASK - NEW button style []
254 ********************************************************************
255 New button for edit/delete... really tiny but with text
256 New button for confirm Data
257
258
259 #### FEATURES : CALLBACK dont bill 1st if not connected
260 ********************************************************************
261 add a parameter to not bill 1st if not connected
262 callback_bill_1stleg_ifcall_notconnected = YES / NO
263
264
265 #### multi-langague on email template
266 ********************************************************************
267 multiple email templates based on location signup
268 ie, if some one is from india, they will recieve their email in indian language
269
270
271 #### Check voice one
272 ********************************************************************
273 SIP JAVA Phone
274
275
276 #### INVOICE IMPROVE SENDING
277 ********************************************************************
278 when you send invoices, there is no "to pay" field
279 they might paid just a part of last invoice
280 so a "current balance to pay" would be probably usefull
281 maybe they had $50 in january and $30 in february and they only paid $20 in february,
282 so in march invoice, they have $20 but they need to pay $20 + $50 + $30 - $20
283
284
285
286
287 #### DID CRONT : MAIL
288 ********************************************************************
289 $mail_user_content.="BALANCE REMAINING ".$mydids[5]-$mydids[3]."\n\n";
290 $mail_user_content.="A automaticly taking away of :".$mydids[3]." has been carry out of your acount \n\n";     
291 $mail_user_content.="Monthly Fixrate for DID :".$mydids[0]."\n\n";
292 $mail_user=true;
293 $mail_user_subject="DID notification";
294
295 use mail template
296 (maybe after the release :D not urgent)
297
298
299
300 #### Misc : spacer
301 ********************************************************************
302 we have : pixel.gif ; spacer.gif ; spacer.jpg
303
304
305 #### IMPORT FEATURE WITH INTERVAL & RANGE
306 ********************************************************************
307 Morten Isaksen <misak _at misak.dk>
308 http://misak.dk/download/a2billing/CC_ratecard_import_analyse.php.diff
309
310
311
312
313
314 #### BUGS
315 ********************************************************************
316 1. The notify user (send_reminder) when min_credit_2call is reached doesn't seem to work. I have made the changes in a2billing.conf but still no email is sent to user, how do i get this working?
317
318 2. Is it possible to have the reminder sent at a differnt value than the min_credit_2call?
319
320
321 Reason for this is, I would like a reminder to be sent when a user has £x credit left in their account but the user should still be able to use the account with the current balance. At the moment the only way to achieve this is to set the min_credit_2call=0 (this way the user gets to use every penny in their account) but by this time i think the reminder that is being sent when credit=0 is too late.
322
323
324
325
326
327
328
329 #### OnLine Payment
330 ********************************************************************
331 Checkout Google
332
333
334
335
336
337
338
339
340
341
342
343
344 #### BUG : DID BILLING
345 ********************************************************************
346 bug DID billing
347 we create a DID with no monthly cost for instance free or just dialout cost!!
348 When the use take the DID from the customer interface, it still have to pay for it
349 we dont check the billingtype of DID
350
351
352 #### BUG : DID  (not urgent)
353 ********************************************************************
354 I Create a Card when I dont have  any DID Group
355 and I Simply Go and Create DID Group
356 and Create a Destination and Bind it with a Card
357 Go to the Client Side You will see the Destination in the Card
358 but when you will go to edit the Destination you will see the DIDGroup List is Not Loaded
359
360
361
362 #### RIGHT MANAGEMENT
363 ********************************************************************
364 when u use this : "Add DID" and we assign a DID to a card
365 a check should be proceed, if the DID don't belong to the user's DID group then it should warn the user/admin
366
367
368
369
370
371 ######## CREDIT RESERVE - SIMULTANEOUS ACCESS
372 ********************************************************************
373
374 Wouldn't this mean on simultaneous access, callers could go negative in balance if subsequent calls were made while balance still exists?
375 http://forum.a2billing.net/viewtopic.php?t=1759&highlight=
376
377
378 Does the same account allow for simultaneous calls?
379 Yes. Here's how it works: Say you have a balance of ten (10) dollars. When your first call comes in, two hours worth of credit is temporarily frozen. So, if you are calling a destination that costs 2 cents a minute, that means $2.40 (2 cents/min x 120 minutes) has been frozen in your account. This leaves $7.60 available for another simultaneous call. When that second call comes in, more of your balance is frozen. You can keep making simultaneous calls so long as your effective balance is above zero. When calls are completed, the balance that was frozen is released and once again available for use. If you have a low balance, there's no sense in letting many simultaneous calls go through, only to have them all disconnect at the same time when your balance hits zero (what most carriers do).
380
381
382
383
384 #### DIVERS
385 ********************************************************************
386 Add new tables for reseller and callshop
387
388
389
390
391 #### FEATURE : OPTIMIZE AGI TO USE PL/SQL functions for all important functions
392 ******************************************************************************
393 ... not for now
394
395
396 #### FEATURE : ADD RANGE CARDNUMBER IN CARDGENERATOR
397 ********************************************************************
398 let's the user define a range of cardnumber (ie: 45000-46000)
399 + option to check if there is a cards already between this range (interval limit 10000)
400
401
402 #### FEATURE : SIGN-UP for tracking...
403 ********************************************************************
404 working out the source of a signup so that comission can be paid.
405 a link to the signup be created that enters the source of the link against
406 the customer, e.g. an agent name or website address?
407
408
409 #### FEATURE
410 ********************************************************************
411 thoughts to adding timezone to cc_card ? It's great that we've got language and currency so they can view items in their local currency. Why not have option for timezone so the CDR's are listed in their local times instead of where the switch is located?
412 I borrowed this idea from SER. I can get you their database table they use if you like. It makes it easy for user instead of asking for +/- GMT, has items such as:
413
414
415 #### FEATURE
416 ********************************************************************
417 Marcel
418
419 - invoices: keep an end of the month balance and send automatically invoices at the end of the month using an email template and attaching a html invoice report; fields in the template would include name, last month balance, current month payments, current month per minute charges, DIDs and other charges, etc.
420
421 - payment: send payment emails to customers when "Add Payment" is used; send an email out of a template saying something like "thank you for payment of XXX made on YYYY...."; maybe the ability to display the payment history on the customer web site to see if they paid the bill or not
422
423 "Add Payment" do not refill the account, you have to do refill manually.
424 - Adding a feature there to make an auto refill
425
426
427
428 #### FEATURE
429 ********************************************************************
430 some info report
431 http://www.vbulletin.com/forum/showthread.php?threadid=3477
432
433
434 #### FEATURE
435 ********************************************************************
436 ADD REPORTING PAGE TO VIEW :
437 - 20 users making the more call
438 - 20 more call destination
439
440 20 might be a parameters
441 we need to see the total time and sell made by this clause group
442 etc...
443
444
445 #### NOTE
446 ********************************************************************
447 Note to areski – should we be able to define international access prefixes? 00 UK & Europe,
448 011 USA , but 0099 for South Africa. See http://kropla.com/dialcode.htm IDD column
449
450 Note to Areski – why have free as an option, surely if I wanted free, I would set fixrate to 0?
451
452
453
454
455        
456 #### NEW TASK
457 ********************************************************************
458 Yep - having a separate figure for VAT would be useful
459 for VAT returns
460 however - UK VAT laws say that if a call originates outside of the EU, then no VAT is required on the call
461 however if a call starts within the EU, the VAT is payable
462
463
464
465
466 #### NEW TASK []
467 ********************************************************************
468 Card company can set default language and customer can change 1. English 2. Dutch, 3. French etc.
469 make it more easily customizable
470
471
472
473
474 #### BUG []
475 ********************************************************************
476
477         Line 382 in a2billing.php has:
478                                            if (substr($A2B->CallerID,0,1)=='0'){
479                                                    $A2B ->dnid = $A2B ->destination =
480         $caller_areacode.substr($A2B->CallerID,1);
481                                            }else{
482                                                    $A2B ->dnid = $A2B ->destination =
483         $caller_areacode.$A2B->CallerID;
484                                            }
485                                            $agi->verbose('line:'.__LINE__.' - '.'[destination:
486         - '.$A2B->destination.']');
487        
488         [a2billing-cid-callback]
489         exten => _X.,1,DeadAGI(a2billing.php|1|cid-callback|34) ;last
490         parameter is the callback area code
491         exten => _X.,2,Hangup
492        
493         As u see the last parameter is the area code and from instance :
494         if I am in Belgium and use a local DID for callback but my server are
495         in UK, the system will probably not know that it needs to call me back
496         over the prefix 32, that's why is needed.
497         So in this case my cell number 0473510969, a2b will be call me as 32473510969.
498         That s the meaning of the remaining zero and it makes sense to set a parameter
499         for the leading zero if you are
500         already in the local country.
501
502
503
504
505 #### []
506 ********************************************************************
507 Improve invoices system : let us store the generate invoice on the
508 server. Define rules to send invoice at scheduled period
509
510
511
512 #### []
513 ********************************************************************
514 Suggestion from Vahan
515         1. First of all I'd suggest to introduce one single yet simple config
516         option in a2billing.conf: silent=yes|no that allows to turn off all the
517         voice prompts in the case a2billing.php has successfully authenticated
518         the caller-id/card number and if the assosiated card number has enough
519         credit. Currently you have to disable several announce configs for this.
520
521         2. add an option to filter by first name / last name too in the card picker.
522
523         3. Please first name to the list to as a separate column or merged with
524         last name. It's difficult to track people by their lastnames only.
525         Areski : I propose more to get rid of lastname and include a new feature to
526         roll over the row and get more info. it will keep up a clear design
527
528
529
530
531 #### []
532 ********************************************************************
533 EXPORT CSV - REALLY CUSTOMIZABLE
534 EXPORT VOUCHER & EXPORT CARD
535 DEFINE CARD AND FIELD TO EXPORT ON FRAMEWORK
536
537
538 #### []
539 ********************************************************************
540 BATCH UPDATE
541
542
543
544 #### []
545 ********************************************************************
546 Edit card : date format
547
548
549 #### []
550 ********************************************************************
551 There are problems with multiple calls if the credit is running low.
552 The system should secure a certain amount from the credit once the
553 user is logged in.
554
555
556 #### []
557 ********************************************************************
558 2. auto-generation of both sip/iax accounts - think it cannot do
559 3. choice (in a2billing.conf) - friends in files or in asterisk realtime
560 4 - later - for realtime - link to existing users/peers (voiceone etc)
561
562
563
564 #### []
565 ********************************************************************
566 - INVOICES MODULES (STORE ON SERVER - PRECOFIGURE RULES TO CREATE THEM)
567
568 Upgrade of the invoices html2pdf
569 Store invoices on the server for different periode of time
570
571
572
573 #### []
574 ********************************************************************
575 Move all the a2billing conf into the DB
576
577
578
579
580
581 #### []
582 ********************************************************************
583 //// IMPORTANT
584 Ben Pintilie <ben@energyradio.co.uk>
585 Going to offer professional recording :D
586 - rework on the IVR text
587
588
589 #### [done-recheck]
590 ********************************************************************
591 //// IMPORTANT
592
593 Bug with DID in the customer interface
594 with mysql < 4 sub-select doesnt working
595 Replace the query
596
597 Database error: Invalid SQL: SELECT id, did, fixrate FROM cc_did WHERE id_cc_country=225 and id_cc_didgroup='1' and activated='1' and id NOT IN (select id_cc_did from cc_did_destination) ORDER BY did ASC
598 MySQL Error: 1064 (You have an error in your SQL syntax near 'select id_cc_did from cc_did_destination) ORDER BY did ASC' at line 1)
599
600
601
602
603 #### []
604 ********************************************************************
605 Feature requests :
606 Print Voucher(s) (PDF ?)
607 Print Anonymous Prepaid Card (PDF ?)
608 Print Personal Prepaid/PostPaid Card (PDF ?)
609 Print Rates/Ratecard (adminUI)
610 Export Rates->PDF (customerUI)
611 Printing with custom company logo.
612
613
614
615
616 #### []
617 ********************************************************************
618 e.) at the form of adding/changing SIP/IAX user there should be a possibilty to erase some parameters. like if there isn't any entry (example in canreinvite) that this also don't will be printed to the sip-config. Beause some parameter should be better to define in general without any possibility of overwriting
619
620 #### []
621 ********************************************************************
622
623 d) different SIP/IAX files for each administrator/account- so with this there would be a possibility for a better differnece of two persons which handle the system and don't overwrite any manual config or/and a better usefull possibility for special definitions for the caller if he want to change like the "callerid" or anything else
624
625 #### []
626 ********************************************************************
627 5.) BUG : if the debug level in /etc/asterisk/a2billing.conf will be activated to 1, 2 or 3 there sould be a DEBUG from the AGI-scripts to the log_file. But I've seen, that many debugging information will not be printed to the logfile.
628  
629 So the statments "if ($A2B->agiconfig['debug']>=1) " don't work even the debug is set (i printed out the debug and I've seen it that the entry is correct. Maybe there is a mistake in the $agi->verbose but I don't looked there because it isn't so urgent to fix it.
630  
631 Here is a example (the first line is from me and will printed out, the $A2B->agiconfig['debug'] = 2 but the two verbose don't will be printed to the log_file) :
632  
633 # diff /var/lib/asterisk/agi-bin/a2billing.php
634 122c124
635                                         $A2B -> write_log("[CREDIT STATUS : ".$A2B-> credit."]");
636                                         if ($A2B->agiconfig['debug']>=1) $agi->verbose("[CREDIT STATUS : ".$A2B-> credit."]");
637                                         if ($A2B->agiconfig['debug']>=1) $agi->verbose("[CREDIT MIN_CREDIT_2CALL : ".$A2B->agiconfig['min_credit_2call']."]");
638
639
640
641 #### []
642 ********************************************************************
643 //// IMPORTANT
644 Create a parameter in a2billing.conf format the number of decimal to display
645 in Misc.php -> number_format($var,2);
646
647 SWITCH ALL THE FLOAT IN MYSQL TO DECIMAL(12,6)
648 SWITCH ALL THE FLOAT IN POSTGRESQL TO NUMERIC(12,6)
649 ALTER TABLE cc_ratecard CHANGE buyrate buyrate DECIMAL( 12, 6 ) NOT NULL DEFAULT '0';
650
651
652
653 #### []
654 ********************************************************************
655 Petite question: je suis entrain de mettre en place des routes et ai
656 trouvé un truc que tu pourrais incorporer d'origine: un TRUNK nommé
657 NotAllowed (exemple), ProvideIP=NoProvider. Dans les scripts, lorsque tu
658 rencontres ce peer, soit tu ne fais rien et envois le message - le
659 numéro composé n'est pas disponible - ce qui est le cas actuellement
660 parceque * ne trouve pas ce host et renvoit un code erreur a A2Billing,
661 soit tu permets d'appeller une extension de type 100@default ou
662 Local/default/200 ou ... qui permettrait de personnaliser l'annonce/le
663 traitement.
664
665 Pourquoi je pense à ca? Prenons la FR comme ex: les routes vers les
666 numéros 8xx. sont compliquées: soit c'est gratuit (Freebox et consors)
667 soit c'est ultra-payant :-( Si je dois autoriser les rÚgles une à une,
668 ca se complique. Avec ce systÚme, j'interdis (donc TRUNK=NotAllowed) la
669 destination 338 puis je n'ouvre que les routes 338x que je veux ;-)
670
671
672
673 #### []
674 ********************************************************************
675
676 > Since you support simultaneous calls on the same acountcode, It would be
677 > nice if the CustomerUI displayed CallerID and also be able to search on and
678 > sort on that column. Would be nice.  This way we can segegrate within the
679 > same account.
680
681
682 #### CURRENCY BY RATECARD
683 ********************************************************************
684 Rates : it should be possible to enter rates in different currencies for each ratecard.
685 I have 3 providers : a danish who list prices in DKK, a english who lists prices in EUR, and a US who list prices in USD.
686
687
688
689 #### DID : answer with voice on unassigned did.
690 ********************************************************************
691 Needed DID improvement :
692 ;audio played when receiving call on DID with no assigned destination
693 did_not_assigned_snd=
694
695
696 #### FRIEND SIP/IAX - CHARGE CALLS
697 ********************************************************************
698 ability to charge a fixed amount eg: 5cents per minute. for sip to sip calls
699
700
701
702
703 /////////////////////////////////////////////////////
704
705
706 WIKI TO HAVE + SEVERAL A2B ON THE SAME BOX
707 ------------------------------------------------------------------
708
709 Yes, you can program in a2billing.conf several configurations but only
710 to set different behaviour for the "agi" not for the rest of the
711 system.
712
713 Well in your case if you want to make coexist 2+ a2billing platforms
714 on the same box,
715 you will have to trick a little bit. There is a file call
716 Class.A2Billing.php in each components (web, agi, web-cust) and at the
717 beginning of it there is the definition to select the conf files
718
719 define('AST_CONFIG_DIR', '/etc/asterisk/');
720 ...
721 define('DEFAULT_A2BILLING_CONFIG', AST_CONFIG_DIR . '/a2billing.conf');
722
723
724 so you can create a new db
725 duplicate the web interface in other directory and all files for the agi and
726 for instance copy those last in /var/lib/asterisk/agi-bin/namecustomer/
727
728 change the file
729 /var/lib/asterisk/agi-bin/namecustomer/libs_a2billing/Class.A2Billing.php
730
731 with for instance
732 define('DEFAULT_A2BILLING_CONFIG', AST_CONFIG_DIR .
733 '/a2billing.namecustomer.conf');
734
735 etc...
736
737 /////////////////////////////////////////////////////
738
739
740
741
742
743 ********************************************************************
744                    TODO LIST - GENERAL
745 ********************************************************************
746
747
748  
749 - MULTI CURRENCY FOR THE RECURRING SERVICE (maybe better to leave it like that)
750
751 - CUSTOM WELCOM MESSAGE
752
753 - CUSTOM ALL THE MESSAGE FROM WEB
754
755 - PASS PART OF THE CONFIGURATION ON THE DB
756
757 - CALLSHOP
758
759 - RESELLERS MODULE
760 http://www.voipswitch.com/reselleapplication.htm
761
762 - C MODULE (NON_AGI BASED) OR AEL
763
764 - CLASS_ENTITY
765
766 - KEEP TRACK OF THE COST - CALCULATE EARNING
767
768 - MAKE A GLOBAL VISUALISATION OF ASR - GLOBAL COST - EARNINGS (AGILE BILLING)
769   REPORT ASR
770  
771 - SUPPORT ARA
772
773 - EXPORT RATES
774
775 - WHOLESALES (http://admin.coreswitch.com)
776
777 - Flash Operator Panel integration of additional_a2billing_SIP/IAX.conf
778
779 - Cront Manager
780
781
782
783 2) In most billing systems identification of customer is not associated with
784 PIN code. Most usual and flexible way is to add the term of account.  The
785 account has associated with it PIN codes, CLIDs and other methods of
786 providing services. For example you have a corporative customer that is
787 company with 15 employees. These all people use PIN codes, their cell phones
788 callerids also used for access. They just call and call but money for calls
789 everytime taken from ONE account and they don't have to think about their
790 personal account balance, the company has one account for all PINs and
791 CLIDs. This is usual practise for most billing systems. This
792 company-customer can get the report in any time and look how many calls were
793 made by employees and how much money they spent from the account and how
794 many money were spent by all employees instead of looking the personal
795 accounts of all employees.
796
797 #### [work-in-progress]
798 ********************************************************************
799 //// IMPORTANT BUT WE WAIT FOR THE WIKI
800  - Review Documentation about installation ( many missing , errors ) ? ( or maybe not ... :-D ).
801
802 #### []
803 ********************************************************************
804
805  - Make a javascript wrappers to be sure that correct selections have been done for all script
806    where there's a search button . Also avoid or just warn to user when it select a Range but use
807    check out checkboxes from other selection i.ex :
808
809    Selection of the month ( selected ) but check out checkboxes from Selection of the day .
810
811 #### []
812 ********************************************************************
813
814  - Allow set timezone in a2billing
815
816 #### []
817 ********************************************************************
818  - Add a .htaccess with php options i.ex : register_globals off , etc ... ( and also to protect the site maybe ? ).
819
820 #### []
821 ********************************************************************
822  - Create a web base installation like many php projects do . ( no hurry at all ).
823
824 #### []
825 *******************************************************************
826 //// IMPORTANT
827  - Verify the design in IE , seems that doesn't like some CSS.
828
829 #### [done-check-postgresql]
830  - Need to check possible problems with differents versions of MYSQL , the inserts for timestamps has been
831  fixeds but not update and others.
832
833
834 #### []
835 *******************************************************************
836 //// IMPORTANT
837
838 Check Call Report.
839
840 #### []
841 *******************************************************************
842
843 Fix the generation of pdf avoid to use ob_* functions and generate the pdf to disk
844 so we avoid the problem of php memory exausting.
Note: See TracBrowser for help on using the browser.


Google