Difference between revisions of "Freeside:1.9:Documentation:Developer/FS"
(import from POD) |
m (Edit via perl MediaWiki framework (1.13)) |
||
(5 intermediate revisions by the same user not shown) | |||
Line 9: | Line 9: | ||
[[Freeside:1.9:Documentation:Developer/FS/Setup|FS::Setup]] - Setup subroutines | [[Freeside:1.9:Documentation:Developer/FS/Setup|FS::Setup]] - Setup subroutines | ||
+ | |||
+ | [[Freeside:1.9:Documentation:Developer/FS/Upgrade|FS::Upgrade]] - Upgrade subroutines | ||
[[Freeside:1.9:Documentation:Developer/FS/Conf|FS::Conf]] - Freeside configuration values | [[Freeside:1.9:Documentation:Developer/FS/Conf|FS::Conf]] - Freeside configuration values | ||
Line 25: | Line 27: | ||
[[Freeside:1.9:Documentation:Developer/FS/SearchCache|FS::SearchCache]] - Search cache | [[Freeside:1.9:Documentation:Developer/FS/SearchCache|FS::SearchCache]] - Search cache | ||
− | |||
− | |||
[[Freeside:1.9:Documentation:Developer/FS/AccessRight|FS::AccessRight]] - Access control rights. | [[Freeside:1.9:Documentation:Developer/FS/AccessRight|FS::AccessRight]] - Access control rights. | ||
Line 34: | Line 34: | ||
[[Freeside:1.9:Documentation:Developer/FS/Report/Table|FS::Report::Table]] - Report data objects | [[Freeside:1.9:Documentation:Developer/FS/Report/Table|FS::Report::Table]] - Report data objects | ||
− | [[Freeside:1.9:Documentation:Developer/FS/Report/Monthly|FS::Report::Monthly]] - Report data objects | + | [[Freeside:1.9:Documentation:Developer/FS/Report/Table/Monthly|FS::Report::Table::Monthly]] - Report data objects |
[[Freeside:1.9:Documentation:Developer/FS/XMLRPC|FS::XMLRPC]] - Backend XML::RPC server | [[Freeside:1.9:Documentation:Developer/FS/XMLRPC|FS::XMLRPC]] - Backend XML::RPC server | ||
Line 41: | Line 41: | ||
[[Freeside:1.9:Documentation:Developer/FS/payby|FS::payby]] - Payment types | [[Freeside:1.9:Documentation:Developer/FS/payby|FS::payby]] - Payment types | ||
+ | |||
+ | [[Freeside:1.9:Documentation:Developer/FS/ClientAPI SessionCache|FS::ClientAPI_SessionCache]] - ClientAPI session cache | ||
[[Freeside:1.9:Documentation:Developer/FS/Pony|FS::Pony]] - A pony | [[Freeside:1.9:Documentation:Developer/FS/Pony|FS::Pony]] - A pony | ||
+ | |||
+ | [[Freeside:1.9:Documentation:Developer/FS/cust main/Import|FS::cust_main::Import]] - Batch customer importing | ||
===Database record classes=== | ===Database record classes=== | ||
Line 114: | Line 118: | ||
[[Freeside:1.9:Documentation:Developer/FS/svc phone|FS::svc_phone]] - Phone service class | [[Freeside:1.9:Documentation:Developer/FS/svc phone|FS::svc_phone]] - Phone service class | ||
+ | |||
+ | [[Freeside:1.9:Documentation:Developer/FS/phone avail|FS::phone_avail]] - Phone number availability cache | ||
[[Freeside:1.9:Documentation:Developer/FS/cdr|FS::cdr]] - Call Detail Record class | [[Freeside:1.9:Documentation:Developer/FS/cdr|FS::cdr]] - Call Detail Record class | ||
Line 140: | Line 146: | ||
[[Freeside:1.9:Documentation:Developer/FS/part export option|FS::part_export_option]] - Export option class | [[Freeside:1.9:Documentation:Developer/FS/part export option|FS::part_export_option]] - Export option class | ||
+ | |||
+ | [[Freeside:1.9:Documentation:Developer/FS/pkg category|FS::pkg_category]] - Package category class | ||
[[Freeside:1.9:Documentation:Developer/FS/pkg class|FS::pkg_class]] - Package class class | [[Freeside:1.9:Documentation:Developer/FS/pkg class|FS::pkg_class]] - Package class class | ||
[[Freeside:1.9:Documentation:Developer/FS/part pkg|FS::part_pkg]] - Package definition class | [[Freeside:1.9:Documentation:Developer/FS/part pkg|FS::part_pkg]] - Package definition class | ||
+ | |||
+ | [[Freeside:1.9:Documentation:Developer/FS/part pkg link|FS::part_pkg_link]] - Package definition link class | ||
+ | |||
+ | [[Freeside:1.9:Documentation:Developer/FS/part pkg taxclass|FS::part_pkg_taxclass]] - Tax class class | ||
[[Freeside:1.9:Documentation:Developer/FS/part pkg option|FS::part_pkg_option]] - Package definition option class | [[Freeside:1.9:Documentation:Developer/FS/part pkg option|FS::part_pkg_option]] - Package definition option class | ||
Line 160: | Line 172: | ||
[[Freeside:1.9:Documentation:Developer/FS/rate detail|FS::rate_detail]] - Rate plan detail for call billing | [[Freeside:1.9:Documentation:Developer/FS/rate detail|FS::rate_detail]] - Rate plan detail for call billing | ||
+ | |||
+ | [[Freeside:1.9:Documentation:Developer/FS/usage class|FS::usage_class]] - Usage class class | ||
[[Freeside:1.9:Documentation:Developer/FS/agent|FS::agent]] - Agent (reseller) class | [[Freeside:1.9:Documentation:Developer/FS/agent|FS::agent]] - Agent (reseller) class | ||
Line 178: | Line 192: | ||
[[Freeside:1.9:Documentation:Developer/FS/cust pkg option|FS::cust_pkg_option]] - Customer package option class | [[Freeside:1.9:Documentation:Developer/FS/cust pkg option|FS::cust_pkg_option]] - Customer package option class | ||
+ | |||
+ | [[Freeside:1.9:Documentation:Developer/FS/cust pkg detail|FS::cust_pkg_detail]] - Customer package details class | ||
[[Freeside:1.9:Documentation:Developer/FS/reason type|FS::reason_type]] - Reason type class | [[Freeside:1.9:Documentation:Developer/FS/reason type|FS::reason_type]] - Reason type class | ||
Line 186: | Line 202: | ||
[[Freeside:1.9:Documentation:Developer/FS/cust main|FS::cust_main]] - Customer class | [[Freeside:1.9:Documentation:Developer/FS/cust main|FS::cust_main]] - Customer class | ||
+ | |||
+ | [[Freeside:1.9:Documentation:Developer/FS/cust main location|FS::cust_main_location]] - Customer location class | ||
[[Freeside:1.9:Documentation:Developer/FS/cust main Mixin|FS::cust_main_Mixin]] - Mixin class for records that contain fields from cust_main | [[Freeside:1.9:Documentation:Developer/FS/cust main Mixin|FS::cust_main_Mixin]] - Mixin class for records that contain fields from cust_main | ||
Line 224: | Line 242: | ||
[[Freeside:1.9:Documentation:Developer/FS/cust pay|FS::cust_pay]] - Payment class | [[Freeside:1.9:Documentation:Developer/FS/cust pay|FS::cust_pay]] - Payment class | ||
+ | |||
+ | [[Freeside:1.9:Documentation:Developer/FS/cust pay pending|FS::cust_pay_pending]] - Pending payment class | ||
[[Freeside:1.9:Documentation:Developer/FS/cust pay void|FS::cust_pay_void]] - Voided payment class | [[Freeside:1.9:Documentation:Developer/FS/cust pay void|FS::cust_pay_void]] - Voided payment class | ||
Line 271: | Line 291: | ||
===Historical database record classes=== | ===Historical database record classes=== | ||
[[Freeside:1.9:Documentation:Developer/FS/h Common|FS::h_Common]] - History table base class | [[Freeside:1.9:Documentation:Developer/FS/h Common|FS::h_Common]] - History table base class | ||
+ | |||
+ | [[Freeside:1.9:Documentation:Developer/FS/h cust pay|FS::h_cust_pay]] - Historical record of customer payment changes | ||
+ | |||
+ | [[Freeside:1.9:Documentation:Developer/FS/h cust credit|FS::h_cust_credit]] - Historical record of customer credit changes | ||
[[Freeside:1.9:Documentation:Developer/FS/h cust bill|FS::h_cust_bill]] - Historical record of customer tax changes (old-style) | [[Freeside:1.9:Documentation:Developer/FS/h cust bill|FS::h_cust_bill]] - Historical record of customer tax changes (old-style) | ||
Line 294: | Line 318: | ||
[[Freeside:1.9:Documentation:Developer/FS/h svc www|FS::h_svc_www]] - Historical web virtual host objects | [[Freeside:1.9:Documentation:Developer/FS/h svc www|FS::h_svc_www]] - Historical web virtual host objects | ||
− | === | + | ===Remote API modules=== |
− | [[Freeside:1.9:Documentation:Developer/FS/ | + | [[Freeside:1.9:Documentation:Developer/FS/SelfService|FS::SelfService]] - Self-service API |
− | [[Freeside:1.9:Documentation:Developer/FS/ | + | [[Freeside:1.9:Documentation:Developer/FS/SelfService/XMLRPC|FS::SelfService::XMLRPC]] - Self-service XML-RPC API |
− | [[Freeside:1.9:Documentation:Developer/FS/ | + | ===User Interface classes=== |
+ | [[Freeside:1.9:Documentation:Developer/FS/UI/Web|FS::UI::Web]] - Web user-interface class | ||
− | [[Freeside:1.9:Documentation:Developer/FS/ | + | [[Freeside:1.9:Documentation:Developer/FS/UI/bytecount|FS::UI::bytecount]] - Byte counter user-interface class |
− | [[Freeside:1.9:Documentation:Developer/ | + | ===Command-line utilities=== |
+ | [[Freeside:1.9:Documentation:Developer/bin/freeside-adduser|freeside-adduser]] - Command line interface to add (freeside) users. | ||
− | [[Freeside:1.9:Documentation:Developer/ | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-daily|freeside-daily]] - Run daily billing and collection events. |
− | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-monthly|freeside-monthly]] - Run monthly billing and invoice collection events. | |
− | [[Freeside:1.9:Documentation:Developer/ | ||
− | [[Freeside:1.9:Documentation:Developer/ | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-dbdef-create|freeside-dbdef-create]] - Recreate database schema cache |
− | [[Freeside:1.9:Documentation:Developer/ | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-deluser|freeside-deluser]] - Command line interface to delete (freeside) users. |
− | [[Freeside:1.9:Documentation:Developer/ | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-expiration-alerter|freeside-expiration-alerter]] - Emails notifications of credit card expirations. |
− | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-email|freeside-email]] - Prints email addresses of all users on STDOUT | |
− | [[Freeside:1.9:Documentation:Developer/ | ||
− | [[Freeside:1.9:Documentation:Developer/ | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-fetch|freeside-fetch]] - Send a freeside page to a list of employees. |
− | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-prepaidd|freeside-prepaidd]] - Real-time daemon for prepaid packages | |
− | [[Freeside:1.9:Documentation:Developer/freeside- | ||
− | [[Freeside:1.9:Documentation:Developer/freeside- | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-prune-applications|freeside-prune-applications]] - Removes stray applications of credit, payment to bills, refunds, etc. |
− | [[Freeside:1.9:Documentation:Developer/freeside- | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-queued|freeside-queued]] - Job queue daemon |
− | [[Freeside:1.9:Documentation:Developer/freeside- | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-radgroup|freeside-radgroup]] - Command line utility to manipulate radius groups |
− | [[Freeside:1.9:Documentation:Developer/freeside- | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-reexport|freeside-reexport]] - Command line tool to re-trigger export jobs for existing services |
− | [[Freeside:1.9:Documentation:Developer/freeside- | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-reset-fixed|freeside-reset-fixed]] - Command line tool to set the fixed columns for existing services |
− | [[Freeside:1.9:Documentation:Developer/freeside- | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-sqlradius-dedup-group|freeside-sqlradius-dedup-group]] - Command line tool to eliminate duplicate usergroup entries from radius tables |
− | [[Freeside:1.9:Documentation:Developer/freeside- | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-sqlradius-radacctd|freeside-sqlradius-radacctd]] - Real-time radacct import daemon |
− | [[Freeside:1.9:Documentation:Developer/freeside- | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-sqlradius-reset|freeside-sqlradius-reset]] - Command line interface to reset and recreate RADIUS SQL tables |
− | [[Freeside:1.9:Documentation:Developer/freeside- | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-sqlradius-seconds|freeside-sqlradius-seconds]] - Command line time-online tool |
− | [[Freeside:1.9:Documentation:Developer/freeside- | + | [[Freeside:1.9:Documentation:Developer/bin/freeside-upgrade|freeside-upgrade]] - Upgrades database schema for new freeside verisons. |
==Notes== | ==Notes== |
Latest revision as of 18:11, 6 February 2009
Contents
NAME
FS - Freeside Perl modules
SYNOPSIS
Freeside perl modules and CLI utilities.
Utility classes
FS::Schema - Freeside database schema
FS::Setup - Setup subroutines
FS::Upgrade - Upgrade subroutines
FS::Conf - Freeside configuration values
FS::ConfItem - Freeside configuration option meta-data.
FS::ConfDefaults - Freeside configuration default and available values
FS::UID - User class (not yet OO)
FS::CurrentUser - Package representing the current user
FS::CGI - Non OO-subroutines for the web interface.
FS::Msgcat - Message catalog
FS::SearchCache - Search cache
FS::AccessRight - Access control rights.
FS::Report - Report data objects
FS::Report::Table - Report data objects
FS::Report::Table::Monthly - Report data objects
FS::XMLRPC - Backend XML::RPC server
FS::Misc - Miscellaneous subroutines
FS::payby - Payment types
FS::ClientAPI_SessionCache - ClientAPI session cache
FS::Pony - A pony
FS::cust_main::Import - Batch customer importing
Database record classes
FS::Record - Database record base class
FS::m2m_Common - Mixin class for classes in a many-to-many relationship
FS::m2name_Common - Base class for tables with a related table listing names
FS::option_Common - Base class for option sub-classes
FS::conf - Configuration value class
FS::payinfo_Mixin - Mixin class for records in tables that contain payinfo.
FS::access_user - Employees / internal users
FS::access_user_pref - Employee preferences
FS::access_group - Employee groups
FS::access_usergroup - Employee group membership
FS::access_groupagent - Group reseller access
FS::access_right - Access rights
FS::svc_acct_pop - POP (Point of Presence, not Post Office Protocol) class
FS::part_pop_local - Local calling area class
FS::part_referral - Referral class
FS::pkg_referral - Package referral class
FS::cust_main_county - Locale (tax rate) class
FS::cust_tax_exempt - Tax exemption record class
FS::cust_tax_exempt_pkg - Line-item specific tax exemption record class
FS::svc_Common - Service base class
FS::svc_Parent_Mixin - Mixin class for svc_ classes with a parent_svcnum field
FS::svc_acct - Account (shell, RADIUS, POP3) class
FS::acct_snarf - External mail account class
FS::acct_rt_transaction - Time worked application to account class
FS::radius_usergroup - RADIUS groups
FS::svc_domain - Domain class
FS::domain_record - DNS zone entries
FS::registrar - Domain registrar class
FS::svc_forward - Mail forwarding class
FS::svc_www - Web virtual host class.
FS::svc_broadband - DSL, wireless and other broadband class.
FS::addr_block - Address block class
FS::router - Router class
FS::part_virtual_field - Broadband virtual field class
FS::svc_phone - Phone service class
FS::phone_avail - Phone number availability cache
FS::cdr - Call Detail Record class
FS::cdr_calltype - CDR calltype class
FS::cdr_carrier - CDR carrier class
FS::cdr_upstream_rate - CDR upstream rate class
FS::cdr_type - CDR type class
FS::svc_external - Externally tracked service class.
FS::inventory_class - Inventory classes
FS::inventory_item - Inventory items
FS::part_svc - Service definition class
FS::part_svc_column - Column constraint class
FS::export_svc - Class linking service definitions (see FS::part_svc) with exports (see FS::part_export)
FS::part_export - External provisioning export class
FS::part_export_option - Export option class
FS::pkg_category - Package category class
FS::pkg_class - Package class class
FS::part_pkg - Package definition class
FS::part_pkg_link - Package definition link class
FS::part_pkg_taxclass - Tax class class
FS::part_pkg_option - Package definition option class
FS::pkg_svc - Class linking package definitions (see FS::part_pkg) with service definitions (see FS::part_svc)
FS::reg_code - One-time registration codes
FS::reg_code_pkg - Class linking registration codes (see FS::reg_code) with package definitions (see FS::part_pkg)
FS::rate - Rate plans for call billing
FS::rate_region - Rate regions for call billing
FS::rate_prefix - Rate region prefixes for call billing
FS::rate_detail - Rate plan detail for call billing
FS::usage_class - Usage class class
FS::agent - Agent (reseller) class
FS::agent_type - Agent type class
FS::type_pkgs - Class linking agent types (see FS::agent_type) with package definitions (see FS::part_pkg)
FS::payment_gateway - Payment gateway class
FS::payment_gateway_option - Payment gateway option class
FS::agent_payment_gateway - Agent payment gateway class
FS::cust_svc - Service class
FS::cust_pkg - Customer package class
FS::cust_pkg_option - Customer package option class
FS::cust_pkg_detail - Customer package details class
FS::reason_type - Reason type class
FS::reason - Reason class
FS::cust_pkg_reason - Package reason class
FS::cust_main - Customer class
FS::cust_main_location - Customer location class
FS::cust_main_Mixin - Mixin class for records that contain fields from cust_main
FS::cust_main_invoice - Invoice destination class
FS::cust_main_note - Customer note class
FS::banned_pay - Banned payment information class
FS::cust_bill - Invoice class
FS::cust_bill_pkg - Invoice line item class
FS::cust_bill_pkg_detail - Invoice line item detail class
FS::part_bill_event - (Old) Invoice event definition class
FS::cust_bill_event - (Old) Completed invoice event class
FS::part_event - (New) Billing event definition class
FS::part_event_option - (New) Billing event option class
FS::part_event::Condition - (New) Billing event condition base class
FS::part_event::Action - (New) Billing event action base class
FS::part_event_condition - (New) Billing event condition class
FS::part_event_condition_option - (New) Billing event condition option class
FS::part_event_condition_option_option - (New) Billing event condition compound option class
FS::cust_event - (New) Customer event class
FS::cust_bill_ApplicationCommon - Base class for bill application classes
FS::cust_pay - Payment class
FS::cust_pay_pending - Pending payment class
FS::cust_pay_void - Voided payment class
FS::cust_bill_pay - Payment application class
FS::cust_bill_pay_pkg - Line-item specific payment application class
FS::cust_bill_pay_batch - Batch payment application class
FS::cust_credit - Credit class
FS::cust_refund - Refund class
FS::cust_credit_refund - Refund application to credit class
FS::cust_credit_bill - Credit application to invoice class
FS::cust_credit_bill_pkg - Line-item specific credit application to invoice class
FS::cust_pay_refund - Refund application to payment class
FS::pay_batch - Credit card transaction queue class
FS::cust_pay_batch - Credit card transaction member queue class
FS::prepay_credit - Prepaid "calling card" credit class.
FS::nas - Network Access Server class
FS::port - NAS port class
FS::session - User login session class
FS::queue - Job queue
FS::queue_arg - Job arguments
FS::queue_depend - Job dependencies
FS::msgcat - Message catalogs
Historical database record classes
FS::h_Common - History table base class
FS::h_cust_pay - Historical record of customer payment changes
FS::h_cust_credit - Historical record of customer credit changes
FS::h_cust_bill - Historical record of customer tax changes (old-style)
FS::h_cust_svc - Object method for h_cust_svc objects
FS::h_cust_tax_exempt - Historical record of customer tax changes (old-style)
FS::h_domain_record - Historical DNS entry objects
FS::h_svc_acct - Historical account objects
FS::h_svc_broadband - Historical broadband connection objects
FS::h_svc_domain - Historical domain objects
FS::h_svc_external - Historical externally tracked service objects
FS::h_svc_forward - Historical mail forwarding alias objects
FS::h_svc_phone - Historical phone number objects
FS::h_svc_www - Historical web virtual host objects
Remote API modules
FS::SelfService - Self-service API
FS::SelfService::XMLRPC - Self-service XML-RPC API
User Interface classes
FS::UI::Web - Web user-interface class
FS::UI::bytecount - Byte counter user-interface class
Command-line utilities
freeside-adduser - Command line interface to add (freeside) users.
freeside-daily - Run daily billing and collection events.
freeside-monthly - Run monthly billing and invoice collection events.
freeside-dbdef-create - Recreate database schema cache
freeside-deluser - Command line interface to delete (freeside) users.
freeside-expiration-alerter - Emails notifications of credit card expirations.
freeside-email - Prints email addresses of all users on STDOUT
freeside-fetch - Send a freeside page to a list of employees.
freeside-prepaidd - Real-time daemon for prepaid packages
freeside-prune-applications - Removes stray applications of credit, payment to bills, refunds, etc.
freeside-queued - Job queue daemon
freeside-radgroup - Command line utility to manipulate radius groups
freeside-reexport - Command line tool to re-trigger export jobs for existing services
freeside-reset-fixed - Command line tool to set the fixed columns for existing services
freeside-sqlradius-dedup-group - Command line tool to eliminate duplicate usergroup entries from radius tables
freeside-sqlradius-radacctd - Real-time radacct import daemon
freeside-sqlradius-reset - Command line interface to reset and recreate RADIUS SQL tables
freeside-sqlradius-seconds - Command line time-online tool
freeside-upgrade - Upgrades database schema for new freeside verisons.
Notes
To quote perl(1), "If you're intending to read these straight through for the first time, the suggested order will tend to reduce the number of forward references."
If you've never used OO modules before, http://www.perl.com/doc/FMTEYEWTK/easy_objects.html might help you out.
DESCRIPTION
Freeside is a billing and administration package for wired and wireless ISPs, VoIP, hosting, service and content providers and other online businesses.
The Freeside home page is at <http://www.sisd.com/freeside>.
The main documentation is at <http://www.sisd.com/mediawiki>.
SUPPORT
A mailing list for users is available. Send a blank message to <freeside-users-subscribe@sisd.com> to subscribe.
A mailing list for developers is available. It is intended to be lower volume and higher SNR than the users list. Send a blank message to <freeside-devel-subscribe@sisd.com> to subscribe.
Commercial support is available; see <http://www.sisd.com/freeside/commercial.html>.
AUTHORS
Primarily Ivan Kohler, with help from many kind folks, including core contributors Jeff Finucane, Kristian Hoffman, Jason Hall and Peter Bowen.
See the CREDITS file in the Freeside distribution for a (hopefully) complete list and the individal files for details.
SEE ALSO
perl(1), main Freeside documentation at <http://www.sisd.com/mediawiki/>
BUGS
Those modules which would be useful separately should be pulled out, renamed appropriately and uploaded to CPAN. So far: DBIx::DBSchema, Net::SSH and Net::SCP...