Php mysql tutorial
inFusion mail server from on-line data solutions: the extended mail server - product review
Once they've learned the basics of ColdFusion, one of the first applications many developers will write is an e-mail program. By using CFMAIL and CFPOP, it is easy to create a basic application that will send mail to an SMTP service and retrieve mail from a POP service.
This type of functionality can be limited, however, and the only communications the developer can perform with the mail server is to send and receive e-mail. If the user information is stored in an LDAP directory, it can be accessed programmatically, but that certainly adds another level of complexity. Not to mention all mail server administration, such as creating users and domains, can only be performed by an administrator--typically not a developer--using a tool provided by the maker of the mail server.
Architecture You Can Understand
inFusion Mail Server from On-Line Data Solutions (ODS) changes what you may know, or may not know, about mail servers. Typically, a mail server stores data, such as user accounts, messages, and address books, in a proprietary data store that cannot be accessed by scripting languages, such as ColdFusion. Even when you use CFPOP to read messages, certain information, such as whether or not the message has been read already, is not accessible.
Instead of inaccessible data stores, inFusion stores all information relating to the configuration and administration of the mail server in a database--MS Access, MS SQL Server, Oracle, Sybase, and MySQL are all supported. Even the messages themselves are stored in the database, making the interaction between ColdFusion and the mail server much more useful.
Unlike most mail servers, all of inFusion's functionality is handled with scripting templates, such as ColdFusion, PHP, inline HTML, or Active PERL. That means, in this case, that ColdFusion is required on the mail server to process messages and perform administrative tasks. Included C++ custom tags are used to communicate with the mail server as opposed to using CFMAIL and CFPOP. A GUI tool is also included to set some of the service configuration settings (see Figure 1).
[FIGURE 1 OMITTED]
Full Mail Server Functionality
inFusion is a full-fledged e-mail server that allows many different types of functionality such as:
* Assigning users to security groups, allowing them to perform only certain administrative tasks
* Creating several different domains using the same mail server
* Restricting the size of mailboxes within a particular domain
* Restricting the size of messages received within a particular domain
* Requiring optional LOGIN or CRAM-MD5 SMTP authentication
* Restricting Relay and SMTP services to specified IP addresses
* Returning delivery receipts for received messages
* A scheduler tool that allows templates to be run in intervals as short as every few seconds
* Indicating whether or not a message has already been read
It would be impossible to list the complete functionality of inFusion in this review, but suffice it to say it is highly flexible. There are, however, some functions that are not available with inFusion:
* Requesting delivery or read receipts for sent messages
* Returning read receipts for received messages
* Receiving message flags, such as priority, from received messages
Open Source Templates
When you purchase inFusion, you can download FusionMail, a complete e-mail server written using ColdFusion. FusionMail is freeware and the source code is not encrypted, making modifying the existing templates and creating your own quite easy. Since the existing templates are backwards compatible to ColdFusion version 2, you needn't worry about what version you are running.
If you are using ColdFusion as the scripting engine, FusionMail must be installed in order to get the full functionality of your inFusion services. FusionMail comes with several components, including installation, administration, and an e-mail application. The administration interface allows you to modify all of the service system settings that can also be performed with the GUI tool as well as perform tasks such as creating domains and users.
The e-mail application has a familiar interface (see Figure 2); a left-hand frame contains the available folders for the user and a link to the address book, one middle frame contains the contents of the selected folder, and another middle frame displays the current message. Messages that have not been read are bolded, and the current folder view can be filtered to view either read or unread messages or urgent or nonurgent messages. Existing messages can be selected and either marked urgent/nonurgent, moved to another folder, or deleted. The message display frame will display the details of the message, including all attachments associated with the message.
[FIGURE 2 OMITTED]
The address book allows individual users to create nicknames and e-mail addresses for their contacts as well as enter additional personal information such as name, address, and phone number. Users can also add additional folders to aid in managing their messages.
The message compose window contains fields for To, CC, BCC, subject, attachments, and the message body. The address book can be accessed from the compose window, and the selected contacts are copied to the appropriate fields using JavaScript. Multiple attachments can be sent with a single message and it is easy to remove an uploaded attachment before the message is sent. The message body field starts out as a standard textarea but can be changed to a WYSIWYG editor that allows you to create and view the message in HTML format.
The look and feel of FusionMail's applications are not very sophisticated. Many developers will want to modify the templates and their functionality, but the fact that you can do that far outweighs the limitations of the existing templates. The current e-mail application framework is not compatible with Netscape 4.7 and the WYSIWYG editor is compatible only with Internet Explorer.
Expanding the System
The true value of inFusion may not be what comes with it, but what you can add to it. Sometimes it is worth more to be able to create your own functionality than to purchase similar functionality that you cannot change.
For example, if you normally want to add the functionality of a list-serv to your application, you must purchase the server software at an additional cost. However, the cheaper the system, the less sophisticated the administration interface. inFusion's database comes equipped with the tables necessary to build your own list-serv functionality.
But why stop there? You can certainly add your own tables to the database and integrate your own applications such as scheduling. In fact, inFusion can easily be the backbone of an intranet or extranet application.
Flexible Pricing
Since your company's mail server needs may differ from the next company's, ODS offers a la carte pricing options so you don't have to pay for more functionality than you need. Pricing is based on the maximum number of simultaneous connections needed. The Small Office Home Office (SOHO) bundle can be purchased for $500 and supports up to 10 simultaneous connections. Larger companies can purchase the Enterprise edition that supports up to 1,024 simultaneous connections for $4,950. There is a free single-connection developer edition that makes development even easier. If you don't need the full bundle of services (SMTP, POST, POP, Relay), you can purchase just the components you need.
A Good Way to Go
When it comes to flexibility and expandability inFusion Mail Server is a hands-down winner. The ability to actually create mail server functionality using ColdFusion, as opposed to just a pretty way to read and send messages, is a life saver. inFusion comes with ample documentation to help walk you through the mail server itself and the open nature of FusionMail makes it easy to extend the included functionality. Combining the extendability with the flexible pricing, ODS ensures that inFusion is a great solution for almost anyone who is using ColdFusion and looking for a fully integrated mail server system.
RELATED ARTICLE: Vitals: inFusion mail server.
On-Line Data Solutions, Inc. 1919 Middle Country Road * Suite 204 Centereach, NY 11720 * Phone: 1-631-737-4668 Fax: 1-631-737-9539 * E-mail: info@coolfusion.com Web: www.coolfusion.com
Test Environment: HP Pavillon zt1180, 1.2GHz P-III, ColdFusion MX, 512MB RAM, Window XP Professional, MS SQL Server 2000
Pricing: inFusion pricing ranges from $250-$4,950 based on the components purchased and number of simultaneous connections required. Free developer editions are available.
PRODUCT SNAPSHOT
Target audience: Organizations that are looking for a configurable mail server that can be enhanced and administered using ColdFusion templates
Pros:
* Full mail server functionality
* Flexible pricing
* Extendable functionality
* Multi-database support
* Nonproprietary data stores
Cons: