How to integrate QuickPage into your e-mail system:

Although some people think it's a bad idea, there are many ways to integrate QuickPage into your e-mail system. Running a QuickPage daemon on your mail server is not required, nor is making any changes to sendmail.cf. No matter which method you choose, I strongly recommend getting yourself a copy of the excellent Sendmail book by Bryan Costales & Eric Allman. It contains a wealth of information about sendmail and shows specific examples on how to modify the sendmail configuration file for programs such as QuickPage. If you can't get your hands on a book, you should at least read over the information at www.sendmail.org.

Some common methods of using QuickPage via e-mail are:

  1. Create aliases for each user, such as:
    user-page: "|/usr/local/bin/qpage -l 0 -m -p user"
    Sending messages to user-page will result in the message being forwarded to the user's pager.

  2. Install the procmail package from ftp.informatik.rwth-aachen.de. Procmail can either be installed as the sendmail local delivery agent (preferred) or simply executed from the user's .forward file. If you're using a recent version of sendmail, no user aliases are required. Versions of sendmail 8.7.x or later will accept usernames containing a plus sign and will deliver them as though the username were truncated at the plus sign (see the Sendmail book mentioned above for complete details). For example, sending a message to tomiii+page@qpage.org will result in the message going to my mailbox. Procmail can select messages based on the text after the plus sign and filter appropriate messages through qpage. If this doesn't work on your system, you will need to create aliases such as:
    user-page: user
    The following rule in /etc/procmailrc (or .procmailrc in the user's home directory) should work nicely with QuickPage:
    :0c * ^To: .*[+-]page@ |/usr/local/bin/qpage -l 0 -m -p $LOGNAME
    This procmail rule will check for a "To:" line that contains a username ending with -page or +page and will invoke qpage to handle such messages. The 'c' in the first line causes procmail to also deliver the e-mail message to the user's mailbox in case the user's pager is turned off. The "-l 0" option causes the QuickPage daemon to send an e-mail reply containing status information about the page to the original sender. Consult the procmail documentation for more information about filtering e-mail messages.

  3. QuickPage can also be installed as a sendmail delivery agent. To do this requires modifying /etc/sendmail.cf (or /etc/mail/sendmail.cf on some systems) and should not be attempted without understanding how sendmail works. Explaining the syntax requirements of sendmail.cf is beyond the scope of this document. For those of you who already understand the details of sendmail.cf, keep reading; otherwise, stop here and go get yourself a Sendmail book.

    If you intend to use QuickPage as a sendmail delivery agent, you'll need to create a new mailer definition in sendmail.cf. It would be wise to save a backup copy of your existing sendmail.cf before attempting any changes. Insert the following line somewhere near the local mailer definition (typically called Mlocal in most configuration files):

    Mqpage, P=/usr/local/bin/qpage, F=lmsDF, A=qpage -l0 -m -P$u
    Note that when using the 'm' flag in the F= portion of the mailer definition, you'll probably want to use -P instead of -p in the argument list so that any -a, -c, or -l options you specify will apply to all recipients. Make sure there are no spaces between -P and $u.

    Now you need to modify ruleset 0 to use this new mailer definition. The specifics are left for you to decide. This can be as simple or as complicated as you want to make it. One possibility would be to add rules such as:

    # send local pages to the QuickPage mailer R$+.page $#qpage $: $1 R$+.page<@$=w>$* $#qpage $: $1 R$+.page<@$=w.>$* $#qpage $: $1
    With these rules and the mailer definition above, a message sent to user.page or user.page@your.domain would cause sendmail to forward the message to the user's pager by executing the command:
    /usr/local/bin/qpage -l0 -m -Puser
I prefer using method #2 because I already have procmail installed on my system for filtering regular e-mail into separate folders. I'm sure there are lots of other ways to do this. One of these days I'll get around to making some m4 macros that can be used with the newer versions of the Berkeley sendmail.