adding acct_snarf
[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::part_svc> - Service definition class
70
71 L<FS::part_svc_column> - Column constraint class
72
73 L<FS::export_svc> - Class linking service definitions (see L<FS::part_svc>)
74 with exports (see L<FS::part_export>)
75
76 L<FS::part_export> - External provisioning export class
77
78 L<FS::part_export_option> - Export option class
79
80 L<FS::part_pkg> - Package (billing item) definition class
81
82 L<FS::pkg_svc> - Class linking package (billing item)
83 definitions (see L<FS::part_pkg>) with service definitions
84 (see L<FS::part_svc>)
85
86 L<FS::agent> - Agent (reseller) class
87
88 L<FS::agent_type> - Agent type class
89
90 L<FS::type_pkgs> - Class linking agent types (see
91 L<FS::agent_type>) with package (billing item) definitions
92 (see L<FS::part_pkg>)
93
94 L<FS::cust_svc> - Service class
95
96 L<FS::cust_pkg> - Package (billing item) class
97
98 L<FS::cust_main> - Customer class
99
100 L<FS::cust_main_invoice> - Invoice destination
101 class
102
103 L<FS::cust_bill> - Invoice class
104
105 L<FS::cust_bill_pkg> - Invoice line item class
106
107 L<FS::cust_bill_pkg_detail> - Invoice line item detail class
108
109 L<FS::part_bill_event> - Invoice event definition class
110
111 L<FS::cust_bill_event> - Completed invoice event class
112
113 L<FS::cust_pay> - Payment class
114
115 L<FS::cust_bill_pay> - Payment application class
116
117 L<FS::cust_credit> - Credit class
118
119 L<FS::cust_refund> - Refund class
120
121 L<FS::cust_credit_refund> - Refund application class
122
123 L<FS::cust_credit_bill> - Credit invoice application class
124
125 L<FS::cust_pay_batch> - Credit card transaction queue class
126
127 L<FS::prepay_credit> - Prepaid "calling card" credit class.
128
129 L<FS::nas> - Network Access Server class
130
131 L<FS::port> - NAS port class
132
133 L<FS::session> - User login session class
134
135 L<FS::queue> - Job queue
136
137 L<FS::queue_arg> - Job arguments
138
139 L<FS::queue_depend> - Job dependencies
140
141 L<FS::msgcat> - Message catalogs
142
143 =head1 Remote API modules
144
145 L<FS::SignupClient>
146
147 L<FS::SessionClient>
148
149 L<FS::MailAdminServer>
150
151 =head2 Command-line utilities
152
153 L<freeside-adduser>
154
155 L<freeside-queued>
156
157 L<freeside-daily>
158
159 L<freeside-expiration-alerter>
160
161 L<freeside-email>
162
163 L<freeside-cc-receipts-report>
164
165 L<freeside-credit-report>
166
167 L<freeside-receivables-report>
168
169 L<freeside-tax-report>
170
171 L<freeside-bill>
172
173 L<freeside-overdue>
174
175 =head2 User Interface classes (under (stalled) development; not yet usable)
176
177 L<FS::UI::Base> - User-interface base class
178
179 L<FS::UI::Gtk> - Gtk user-interface class
180
181 L<FS::UI::CGI> - CGI (HTML) user-interface class
182
183 L<FS::UI::agent> - agent table user-interface class
184
185 =head2 Notes
186
187 To quote perl(1), "If you're intending to read these straight through for the
188 first time, the suggested order will tend to reduce the number of forward
189 references."
190
191 If you've never used OO modules before,
192 http://www.perl.com/doc/FMTEYEWTK/easy_objects.html might help you out.
193
194 =head1 DESCRIPTION
195
196 Freeside is a billing and administration package for Internet Service
197 Providers.
198
199 The Freeside home page is at <http://www.sisd.com/freeside>.
200
201 The main documentation is in httemplate/docs.
202
203 =head1 SUPPORT
204
205 A mailing list for users is available.  Send a blank message to
206 <ivan-freeside-subscribe@sisd.com> to subscribe.
207
208 A mailing list for developers is available.  It is intended to be lower volume
209 and higher SNR than the users list.  Send a blank message to
210 <ivan-freeside-devel-subscribe@sisd.com> to subscribe.
211
212 Commercial support is available; see
213 <http://www.sisd.com/freeside/commercial.html>.
214
215 =head1 AUTHOR
216
217 Primarily Ivan Kohler <ivan@sisd.com>, with help from many kind folks.
218
219 See the CREDITS file in the Freeside distribution for a (hopefully) complete
220 list and the individal files for details.
221
222 =head1 SEE ALSO
223
224 perl(1), main Freeside documentation in htdocs/docs/
225
226 =head1 BUGS
227
228 Those modules which would be useful separately should be pulled out, 
229 renamed appropriately and uploaded to CPAN.  So far: DBIx::DBSchema, Net::SSH
230 and Net::SCP...
231
232 =cut
233