6 $VERSION = '%%%VERSION%%%';
8 #find missing entries in this file with:
9 # for a in `ls *pm | cut -d. -f1`; do grep 'L<FS::'$a'>' ../FS.pm >/dev/null || echo "missing $a" ; done
16 FS - Freeside Perl modules
20 Freeside perl modules and CLI utilities.
22 =head2 Utility classes
24 L<FS::Schema> - Freeside database schema
26 L<FS::Setup> - Setup subroutines
28 L<FS::Upgrade> - Upgrade subroutines
30 L<FS::Conf> - Freeside configuration values
32 L<FS::ConfItem> - Freeside configuration option meta-data.
34 L<FS::ConfDefaults> - Freeside configuration default and available values
36 L<FS::UID> - User class (not yet OO)
38 L<FS::CurrentUser> - Package representing the current user
40 L<FS::CGI> - Non OO-subroutines for the web interface.
42 L<FS::Msgcat> - Message catalog
44 L<FS::SearchCache> - Search cache
46 L<FS::AccessRight> - Access control rights.
48 L<FS::Report> - Report data objects
50 L<FS::Report::Table> - Report data objects
52 L<FS::Report::Table::Monthly> - Report data objects
54 L<FS::XMLRPC> - Backend XML::RPC server
56 L<FS::Misc> - Miscellaneous subroutines
58 L<FS::payby> - Payment types
60 L<FS::ClientAPI_SessionCache> - ClientAPI session cache
64 L<FS::cust_main::Import> - Batch customer importing
66 =head2 Database record classes
68 L<FS::Record> - Database record base class
70 L<FS::m2m_Common> - Mixin class for classes in a many-to-many relationship
72 L<FS::m2name_Common> - Base class for tables with a related table listing names
74 L<FS::option_Common> - Base class for option sub-classes
76 L<FS::conf> - Configuration value class
78 L<FS::payinfo_Mixin> - Mixin class for records in tables that contain payinfo.
80 L<FS::access_user> - Employees / internal users
82 L<FS::access_user_pref> - Employee preferences
84 L<FS::access_group> - Employee groups
86 L<FS::access_usergroup> - Employee group membership
88 L<FS::access_groupagent> - Group reseller access
90 L<FS::access_right> - Access rights
92 L<FS::svc_acct_pop> - POP (Point of Presence, not Post
93 Office Protocol) class
95 L<FS::part_pop_local> - Local calling area class
97 L<FS::part_referral> - Referral class
99 L<FS::pkg_referral> - Package referral class
101 L<FS::cust_main_county> - Locale (tax rate) class
103 L<FS::cust_tax_exempt> - Tax exemption record class
105 L<FS::cust_tax_exempt_pkg> - Line-item specific tax exemption record class
107 L<FS::svc_Common> - Service base class
109 L<FS::svc_Parent_Mixin> - Mixin class for svc_ classes with a parent_svcnum field
111 L<FS::svc_acct> - Account (shell, RADIUS, POP3) class
113 L<FS::acct_snarf> - External mail account class
115 L<FS::acct_rt_transaction> - Time worked application to account class
117 L<FS::radius_usergroup> - RADIUS groups
119 L<FS::svc_domain> - Domain class
121 L<FS::domain_record> - DNS zone entries
123 L<FS::registrar> - Domain registrar class
125 L<FS::svc_forward> - Mail forwarding class
127 L<FS::svc_www> - Web virtual host class.
129 L<FS::svc_broadband> - DSL, wireless and other broadband class.
131 L<FS::addr_block> - Address block class
133 L<FS::router> - Router class
135 L<FS::part_virtual_field> - Broadband virtual field class
137 L<FS::svc_phone> - Phone service class
139 L<FS::phone_avail> - Phone number availability cache
141 L<FS::cdr> - Call Detail Record class
143 L<FS::cdr_calltype> - CDR calltype class
145 L<FS::cdr_carrier> - CDR carrier class
147 L<FS::cdr_upstream_rate> - CDR upstream rate class
149 L<FS::cdr_type> - CDR type class
151 L<FS::svc_external> - Externally tracked service class.
153 L<FS::inventory_class> - Inventory classes
155 L<FS::inventory_item> - Inventory items
157 L<FS::part_svc> - Service definition class
159 L<FS::part_svc_column> - Column constraint class
161 L<FS::export_svc> - Class linking service definitions (see L<FS::part_svc>)
162 with exports (see L<FS::part_export>)
164 L<FS::part_export> - External provisioning export class
166 L<FS::part_export_option> - Export option class
168 L<FS::pkg_category> - Package category class
170 L<FS::pkg_class> - Package class class
172 L<FS::part_pkg> - Package definition class
174 L<FS::part_pkg_link> - Package definition link class
176 L<FS::part_pkg_taxclass> - Tax class class
178 L<FS::part_pkg_option> - Package definition option class
180 L<FS::pkg_svc> - Class linking package definitions (see L<FS::part_pkg>) with
181 service definitions (see L<FS::part_svc>)
183 L<FS::reg_code> - One-time registration codes
185 L<FS::reg_code_pkg> - Class linking registration codes (see L<FS::reg_code>) with package definitions (see L<FS::part_pkg>)
187 L<FS::rate> - Rate plans for call billing
189 L<FS::rate_region> - Rate regions for call billing
191 L<FS::rate_prefix> - Rate region prefixes for call billing
193 L<FS::rate_detail> - Rate plan detail for call billing
195 L<FS::usage_class> - Usage class class
197 L<FS::agent> - Agent (reseller) class
199 L<FS::agent_type> - Agent type class
201 L<FS::type_pkgs> - Class linking agent types (see L<FS::agent_type>) with package definitions (see L<FS::part_pkg>)
203 L<FS::payment_gateway> - Payment gateway class
205 L<FS::payment_gateway_option> - Payment gateway option class
207 L<FS::agent_payment_gateway> - Agent payment gateway class
209 L<FS::cust_svc> - Service class
211 L<FS::cust_pkg> - Customer package class
213 L<FS::cust_pkg_option> - Customer package option class
215 L<FS::cust_pkg_detail> - Customer package details class
217 L<FS::reason_type> - Reason type class
219 L<FS::reason> - Reason class
221 L<FS::cust_pkg_reason> - Package reason class
223 L<FS::cust_main> - Customer class
225 L<FS::cust_main_location> - Customer location class
227 L<FS::cust_main_Mixin> - Mixin class for records that contain fields from cust_main
229 L<FS::cust_main_invoice> - Invoice destination class
231 L<FS::cust_main_note> - Customer note class
233 L<FS::banned_pay> - Banned payment information class
235 L<FS::cust_bill> - Invoice class
237 L<FS::cust_bill_pkg> - Invoice line item class
239 L<FS::cust_bill_pkg_detail> - Invoice line item detail class
241 L<FS::part_bill_event> - (Old) Invoice event definition class
243 L<FS::cust_bill_event> - (Old) Completed invoice event class
245 L<FS::part_event> - (New) Billing event definition class
247 L<FS::part_event_option> - (New) Billing event option class
249 L<FS::part_event::Condition> - (New) Billing event condition base class
251 L<FS::part_event::Action> - (New) Billing event action base class
253 L<FS::part_event_condition> - (New) Billing event condition class
255 L<FS::part_event_condition_option> - (New) Billing event condition option class
257 L<FS::part_event_condition_option_option> - (New) Billing event condition compound option class
259 L<FS::cust_event> - (New) Customer event class
261 L<FS::cust_bill_ApplicationCommon> - Base class for bill application classes
263 L<FS::cust_pay> - Payment class
265 L<FS::cust_pay_pending> - Pending payment class
267 L<FS::cust_pay_void> - Voided payment class
269 L<FS::cust_bill_pay> - Payment application class
271 L<FS::cust_bill_pay_pkg> - Line-item specific payment application class
273 L<FS::cust_bill_pay_batch> - Batch payment application class
275 L<FS::cust_credit> - Credit class
277 L<FS::cust_refund> - Refund class
279 L<FS::cust_credit_refund> - Refund application to credit class
281 L<FS::cust_credit_bill> - Credit application to invoice class
283 L<FS::cust_credit_bill_pkg> - Line-item specific credit application to invoice class
285 L<FS::cust_pay_refund> - Refund application to payment class
287 L<FS::pay_batch> - Credit card transaction queue class
289 L<FS::cust_pay_batch> - Credit card transaction member queue class
291 L<FS::prepay_credit> - Prepaid "calling card" credit class.
293 L<FS::nas> - Network Access Server class
295 L<FS::port> - NAS port class
297 L<FS::session> - User login session class
299 L<FS::queue> - Job queue
301 L<FS::queue_arg> - Job arguments
303 L<FS::queue_depend> - Job dependencies
305 L<FS::msgcat> - Message catalogs
307 L<FS::clientapi_session>
309 L<FS::clientapi_session_field>
311 =head2 Historical database record classes
313 L<FS::h_Common> - History table base class
315 L<FS::h_cust_pay> - Historical record of customer payment changes
317 L<FS::h_cust_credit> - Historical record of customer credit changes
319 L<FS::h_cust_bill> - Historical record of customer tax changes (old-style)
321 L<FS::h_cust_svc> - Object method for h_cust_svc objects
323 L<FS::h_cust_tax_exempt> - Historical record of customer tax changes (old-style)
325 L<FS::h_domain_record> - Historical DNS entry objects
327 L<FS::h_svc_acct> - Historical account objects
329 L<FS::h_svc_broadband> - Historical broadband connection objects
331 L<FS::h_svc_domain> - Historical domain objects
333 L<FS::h_svc_external> - Historical externally tracked service objects
335 L<FS::h_svc_forward> - Historical mail forwarding alias objects
337 L<FS::h_svc_phone> - Historical phone number objects
339 L<FS::h_svc_www> - Historical web virtual host objects
341 =head2 Remote API modules
343 L<FS::SelfService> - Self-service API
345 L<FS::SelfService::XMLRPC> - Self-service XML-RPC API
347 =head2 User Interface classes
349 L<FS::UI::Web> - Web user-interface class
351 L<FS::UI::bytecount> - Byte counter user-interface class
353 =head2 Command-line utilities
355 L<freeside-adduser> - Command line interface to add (freeside) users.
357 L<freeside-daily> - Run daily billing and collection events.
359 L<freeside-monthly> - Run monthly billing and invoice collection events.
361 L<freeside-dbdef-create> - Recreate database schema cache
363 L<freeside-deluser> - Command line interface to delete (freeside) users.
365 L<freeside-expiration-alerter> - Emails notifications of credit card expirations.
367 L<freeside-email> - Prints email addresses of all users on STDOUT
369 L<freeside-fetch> - Send a freeside page to a list of employees.
371 L<freeside-prepaidd> - Real-time daemon for prepaid packages
373 L<freeside-prune-applications> - Removes stray applications of credit, payment to bills, refunds, etc.
375 L<freeside-queued> - Job queue daemon
377 L<freeside-radgroup> - Command line utility to manipulate radius groups
379 L<freeside-reexport> - Command line tool to re-trigger export jobs for existing services
381 L<freeside-reset-fixed> - Command line tool to set the fixed columns for existing services
383 L<freeside-sqlradius-dedup-group> - Command line tool to eliminate duplicate usergroup entries from radius tables
385 L<freeside-sqlradius-radacctd> - Real-time radacct import daemon
387 L<freeside-sqlradius-reset> - Command line interface to reset and recreate RADIUS SQL tables
389 L<freeside-sqlradius-seconds> - Command line time-online tool
391 L<freeside-upgrade> - Upgrades database schema for new freeside verisons.
395 To quote perl(1), "If you're intending to read these straight through for the
396 first time, the suggested order will tend to reduce the number of forward
399 If you've never used OO modules before,
400 http://www.perl.com/doc/FMTEYEWTK/easy_objects.html might help you out.
404 Freeside is a billing and administration package for wired and wireless ISPs,
405 VoIP, hosting, service and content providers and other online businesses.
407 The Freeside home page is at <http://www.sisd.com/freeside>.
409 The main documentation is at <http://www.sisd.com/mediawiki>.
413 A mailing list for users is available. Send a blank message to
414 <freeside-users-subscribe@sisd.com> to subscribe.
416 A mailing list for developers is available. It is intended to be lower volume
417 and higher SNR than the users list. Send a blank message to
418 <freeside-devel-subscribe@sisd.com> to subscribe.
420 Commercial support is available; see
421 <http://www.sisd.com/freeside/commercial.html>.
425 Primarily Ivan Kohler, with help from many kind folks, including core
426 contributors Jeff Finucane, Kristian Hoffman, Jason Hall and Peter Bowen.
428 See the CREDITS file in the Freeside distribution for a (hopefully) complete
429 list and the individal files for details.
433 perl(1), main Freeside documentation at <http://www.sisd.com/mediawiki/>
437 Those modules which would be useful separately should be pulled out,
438 renamed appropriately and uploaded to CPAN. So far: DBIx::DBSchema, Net::SSH