small doc update
[freeside.git] / FS / FS.pm
1 package FS;
2
3 use strict;
4 use vars qw($VERSION);
5
6 $VERSION = '0.01';
7
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
10
11 1;
12 __END__
13
14 =head1 NAME
15
16 FS - Freeside Perl modules
17
18 =head1 SYNOPSIS
19
20 Freeside perl modules and CLI utilities.
21
22 =head2 Utility classes
23
24 L<FS::Conf> - Freeside configuration values
25
26 L<FS::ConfItem> - Freeside configuration option meta-data.
27
28 L<FS::UID> - User class (not yet OO)
29
30 L<FS::CGI> - Non OO-subroutines for the web interface.
31
32 L<FS::Msgcat> - Message catalog
33
34 L<FS::SearchCache> - Search cache
35
36 L<FS::raddb> - RADIUS dictionary
37
38 =head2 Database record classes
39
40 L<FS::Record> - Database record base class
41
42 L<FS::svc_acct_pop> - POP (Point of Presence, not Post
43 Office Protocol) class
44
45 L<FS::part_pop_local> - Local calling area class
46
47 L<FS::part_referral> - Referral class
48
49 L<FS::cust_main_county> - Locale (tax rate) class
50
51 L<FS::cust_tax_exempt> - Tax exemption record class
52
53 L<FS::svc_Common> - Service base class
54
55 L<FS::svc_acct> - Account (shell, RADIUS, POP3) class
56
57 L<FS::acct_snarf> - External mail account class
58
59 L<FS::radius_usergroup> - RADIUS groups
60
61 L<FS::svc_domain> - Domain class
62
63 L<FS::domain_record> - DNS zone entries
64
65 L<FS::svc_forward> - Mail forwarding class
66
67 L<FS::svc_www> - Web virtual host class.
68
69 L<FS::svc_broadband> - DSL, wireless and other broadband class.
70
71 L<FS::svc_external> - Externally tracked service class.
72
73 L<FS::part_svc> - Service definition class
74
75 L<FS::part_svc_column> - Column constraint class
76
77 L<FS::export_svc> - Class linking service definitions (see L<FS::part_svc>)
78 with exports (see L<FS::part_export>)
79
80 L<FS::part_export> - External provisioning export class
81
82 L<FS::part_export_option> - Export option class
83
84 L<FS::part_pkg> - Package (billing item) definition class
85
86 L<FS::pkg_svc> - Class linking package (billing item)
87 definitions (see L<FS::part_pkg>) with service definitions
88 (see L<FS::part_svc>)
89
90 L<FS::agent> - Agent (reseller) class
91
92 L<FS::agent_type> - Agent type class
93
94 L<FS::type_pkgs> - Class linking agent types (see
95 L<FS::agent_type>) with package (billing item) definitions
96 (see L<FS::part_pkg>)
97
98 L<FS::cust_svc> - Service class
99
100 L<FS::cust_pkg> - Package (billing item) class
101
102 L<FS::cust_main> - Customer class
103
104 L<FS::cust_main_invoice> - Invoice destination
105 class
106
107 L<FS::cust_bill> - Invoice class
108
109 L<FS::cust_bill_pkg> - Invoice line item class
110
111 L<FS::cust_bill_pkg_detail> - Invoice line item detail class
112
113 L<FS::part_bill_event> - Invoice event definition class
114
115 L<FS::cust_bill_event> - Completed invoice event class
116
117 L<FS::cust_pay> - Payment class
118
119 L<FS::cust_bill_pay> - Payment application class
120
121 L<FS::cust_credit> - Credit class
122
123 L<FS::cust_refund> - Refund class
124
125 L<FS::cust_credit_refund> - Refund application class
126
127 L<FS::cust_credit_bill> - Credit invoice application class
128
129 L<FS::cust_pay_batch> - Credit card transaction queue class
130
131 L<FS::prepay_credit> - Prepaid "calling card" credit class.
132
133 L<FS::nas> - Network Access Server class
134
135 L<FS::port> - NAS port class
136
137 L<FS::session> - User login session class
138
139 L<FS::queue> - Job queue
140
141 L<FS::queue_arg> - Job arguments
142
143 L<FS::queue_depend> - Job dependencies
144
145 L<FS::msgcat> - Message catalogs
146
147 =head1 Remote API modules
148
149 L<FS::SelfService>
150
151 L<FS::SignupClient>
152
153 L<FS::SessionClient>
154
155 L<FS::MailAdminServer> (deprecated in favor of the self-service server)
156
157 =head2 Command-line utilities
158
159 L<freeside-adduser>
160
161 L<freeside-queued>
162
163 L<freeside-daily>
164
165 L<freeside-expiration-alerter>
166
167 L<freeside-email>
168
169 L<freeside-cc-receipts-report>
170
171 L<freeside-credit-report>
172
173 L<freeside-receivables-report>
174
175 L<freeside-tax-report>
176
177 L<freeside-bill>
178
179 L<freeside-overdue>
180
181 =head2 User Interface classes (under (stalled) development; not yet usable)
182
183 L<FS::UI::Base> - User-interface base class
184
185 L<FS::UI::Gtk> - Gtk user-interface class
186
187 L<FS::UI::CGI> - CGI (HTML) user-interface class
188
189 L<FS::UI::agent> - agent table user-interface class
190
191 =head2 Notes
192
193 To quote perl(1), "If you're intending to read these straight through for the
194 first time, the suggested order will tend to reduce the number of forward
195 references."
196
197 If you've never used OO modules before,
198 http://www.perl.com/doc/FMTEYEWTK/easy_objects.html might help you out.
199
200 =head1 DESCRIPTION
201
202 Freeside is a billing and administration package for Internet Service
203 Providers.
204
205 The Freeside home page is at <http://www.sisd.com/freeside>.
206
207 The main documentation is in httemplate/docs.
208
209 =head1 SUPPORT
210
211 A mailing list for users is available.  Send a blank message to
212 <ivan-freeside-subscribe@sisd.com> to subscribe.
213
214 A mailing list for developers is available.  It is intended to be lower volume
215 and higher SNR than the users list.  Send a blank message to
216 <ivan-freeside-devel-subscribe@sisd.com> to subscribe.
217
218 Commercial support is available; see
219 <http://www.sisd.com/freeside/commercial.html>.
220
221 =head1 AUTHOR
222
223 Primarily Ivan Kohler <ivan@sisd.com>, with help from many kind folks.
224
225 See the CREDITS file in the Freeside distribution for a (hopefully) complete
226 list and the individal files for details.
227
228 =head1 SEE ALSO
229
230 perl(1), main Freeside documentation in htdocs/docs/
231
232 =head1 BUGS
233
234 Those modules which would be useful separately should be pulled out, 
235 renamed appropriately and uploaded to CPAN.  So far: DBIx::DBSchema, Net::SSH
236 and Net::SCP...
237
238 =cut
239