Welcome!

You will be redirected in 30 seconds or close now.

ColdFusion Authors: Yakov Fain, Jeremy Geelan, Maureen O'Gara, Nancy Y. Nee, Tad Anderson

Related Topics: ColdFusion

ColdFusion: Article

inFusion Mail Server from On-Line Data Solutions

inFusion Mail Server from On-Line Data Solutions

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).

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.

    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
    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 à 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.

    SIDEBAR

    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: [email protected]
    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:

  • Can only be administrated using a Web interface
  • Lacks a few common mail server functions

    Server OS: Windows platforms
    ColdFusion: Version 2.0 and above, including MX
    Database Support: MS SQL Server, Oracle, Sybase, MySQL, MS Access

  • More Stories By Selene Bainum

    Selene Bainum is a software architect at INPUT.  She has been a ColdFusion and SQL developer for over 10 years and runs www.webtricks.com.

    Comments (0)

    Share your thoughts on this story.

    Add your comment
    You must be signed in to add a comment. Sign-in | Register

    In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


    IoT & Smart Cities Stories
    If a machine can invent, does this mean the end of the patent system as we know it? The patent system, both in the US and Europe, allows companies to protect their inventions and helps foster innovation. However, Artificial Intelligence (AI) could be set to disrupt the patent system as we know it. This talk will examine how AI may change the patent landscape in the years to come. Furthermore, ways in which companies can best protect their AI related inventions will be examined from both a US and...
    The challenges of aggregating data from consumer-oriented devices, such as wearable technologies and smart thermostats, are fairly well-understood. However, there are a new set of challenges for IoT devices that generate megabytes or gigabytes of data per second. Certainly, the infrastructure will have to change, as those volumes of data will likely overwhelm the available bandwidth for aggregating the data into a central repository. Ochandarena discusses a whole new way to think about your next...
    Charles Araujo is an industry analyst, internationally recognized authority on the Digital Enterprise and author of The Quantum Age of IT: Why Everything You Know About IT is About to Change. As Principal Analyst with Intellyx, he writes, speaks and advises organizations on how to navigate through this time of disruption. He is also the founder of The Institute for Digital Transformation and a sought after keynote speaker. He has been a regular contributor to both InformationWeek and CIO Insight...
    Bill Schmarzo, Tech Chair of "Big Data | Analytics" of upcoming CloudEXPO | DXWorldEXPO New York (November 12-13, 2018, New York City) today announced the outline and schedule of the track. "The track has been designed in experience/degree order," said Schmarzo. "So, that folks who attend the entire track can leave the conference with some of the skills necessary to get their work done when they get back to their offices. It actually ties back to some work that I'm doing at the University of ...
    DXWorldEXPO LLC, the producer of the world's most influential technology conferences and trade shows has announced the 22nd International CloudEXPO | DXWorldEXPO "Early Bird Registration" is now open. Register for Full Conference "Gold Pass" ▸ Here (Expo Hall ▸ Here)
    @DevOpsSummit at Cloud Expo, taking place November 12-13 in New York City, NY, is co-located with 22nd international CloudEXPO | first international DXWorldEXPO and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is no time t...
    CloudEXPO New York 2018, colocated with DXWorldEXPO New York 2018 will be held November 11-13, 2018, in New York City and will bring together Cloud Computing, FinTech and Blockchain, Digital Transformation, Big Data, Internet of Things, DevOps, AI, Machine Learning and WebRTC to one location.
    The best way to leverage your Cloud Expo presence as a sponsor and exhibitor is to plan your news announcements around our events. The press covering Cloud Expo and @ThingsExpo will have access to these releases and will amplify your news announcements. More than two dozen Cloud companies either set deals at our shows or have announced their mergers and acquisitions at Cloud Expo. Product announcements during our show provide your company with the most reach through our targeted audiences.
    The Internet of Things will challenge the status quo of how IT and development organizations operate. Or will it? Certainly the fog layer of IoT requires special insights about data ontology, security and transactional integrity. But the developmental challenges are the same: People, Process and Platform and how we integrate our thinking to solve complicated problems. In his session at 19th Cloud Expo, Craig Sproule, CEO of Metavine, demonstrated how to move beyond today's coding paradigm and sh...
    What are the new priorities for the connected business? First: businesses need to think differently about the types of connections they will need to make – these span well beyond the traditional app to app into more modern forms of integration including SaaS integrations, mobile integrations, APIs, device integration and Big Data integration. It’s important these are unified together vs. doing them all piecemeal. Second, these types of connections need to be simple to design, adapt and configure...