0% found this document useful (0 votes)
319 views

Rightfax Integration Module Guide

Uploaded by

sriram
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
319 views

Rightfax Integration Module Guide

Uploaded by

sriram
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 228

Version 9.

4
Integration Module Guide
v. 1.0
September 17, 2008
RightFax 9.4 Integration Module Guide ii

Edition
Information in this document applies to version 9.4 of the RightFax Integration Module Guide.

Copyright Notice
©2008 All rights reserved. No part of this publication may be reproduced, transmitted, transcribed, stored in a retrieval system, or translated into any language in any form by any means without the written permission of Captaris.
The following are registered trademarks and trademarks of Captaris Inc. and its subsidiaries: Captaris, the Captaris logo, Alchemy®, Captaris WorkflowTM, RightDocsTM, RightFax®, RightFlowTM and RightStarTM in the
US and/or other jurisdictions. FaxPressTM is a registered trademark of Castelle. RecoStar, DOKuStar, DOKuStar Capture Suite, Single Click Entry, and Invoice CENTER are registered trademarks and trademarks of Captaris
Document Technologies GmbH. All other brand names and trademarks are the property of their respective owners.

For More Information


Captaris, Inc. is a leading provider of software products that automate document-centric business processes. Captaris specializes in document capture, recognition, routing, workflow and delivery. Captaris integrated solutions
provide interoperability with leading line of business applications and technology platforms. Captaris products include RightFax, Captaris Workflow, Alchemy, FaxPress, DOKuStar, RecoStar, Single Click Entry and IDStar which
are distributed through a global network of leading technology partners. Captaris customers include the entire Fortune 100 and the majority of Global 2000 companies. Headquartered in Bellevue, Washington, Captaris was
founded in 1982 and is publicly traded on the NASDAQ Global Market under the symbol CAPA. www.Captaris.com.
Contents

Chapter 1 Introduction.............................................................................. 7 Chapter 5 Using the Integration Setup Wizard ................................21


Using This Guide...............................................................................7
Other Resources for RightFax Users ...........................................8 Chapter 6 Configuring the Integration Module
Getting Help Online .........................................................................8 to Receive Data .....................................................................25
Captaris Training Services ..............................................................8 Creating an Input Device ..............................................................25
Customer Support ............................................................................9 Setting Up a Named Pipe Capture.............................................27
Setting Up Directory Scanning....................................................28
Chapter 2 Overview ................................................................................. 11 Setting Up a Serial Capture .........................................................29
Features of the Integration Module ............................................ 11 Setting Up a TCP/IP Port Capture.............................................31
Understanding Document Recognition .................................... 12 Setting Up an IBM WebSphere MQ Connection...................32
Understanding Document Distribution...................................... 12
Chapter 7 Testing a Connection and an Input Device ....................35
Chapter 3 Installing the RightFax Integration Module .................. 15 Testing a Named Pipe Connection .............................................35
Installing the Integration and Business Integration Modules15 Testing Directory Scanning ..........................................................35
Testing a Serial Connection ........................................................ 36
Chapter 4 Connecting to the RightFax Server ................................. 17 Testing a TCP/IP Port Connection ............................................ 36
Guidelines for Common Connection Methods ....................... 18 Testing an IBM WebSphere MQ Connection......................... 36

Chapter 8 Creating FCL Documents....................................................39


Understanding the Format of FCL Commands........................41
Example FCL Documents .............................................................41

iii
RightFax 9.4 Integration Module Guide iv

Chapter 9 Setting Defaults for FCL Documents .............................. 45 Chapter 14 Creating and Attaching Cover Sheets............................. 77
Opening the Integration Module Configuration Program .....45 Understanding Production Cover Sheets ................................78
Setting General Defaults ..............................................................45 Creating Cover Sheet Templates ...............................................78
Setting Defaults for FCL Processing .........................................47 Attaching a Cover Sheet to a Document with FCL ................82
RightFax Cover Sheet Logic .......................................................83
Chapter 10 Creating Filter Templates................................................... 49 Example Cover Sheet and Document ......................................84
Understanding Filter Templates.................................................. 49
Preparing to Create Filter Templates .........................................51 Chapter 15 Creating Lines, Boxes, and Other Shapes ..................... 87
Creating a New Filter Template ...................................................51 Understanding the Commands That Create Shapes.............87
Understanding the Field Types ................................................... 59 Using the Most Common Commands That Create Shapes.88
Troubleshooting...............................................................................63
Creating an Input Channel for Filter Documents.................... 64 Chapter 16 Setting Margins and Tabs...................................................93
Setting Margins...............................................................................93
Chapter 11 Specifying the Destination of the Document ............... 65 Starting a New Page With the Same Margins as the Previous
Sending One Document to a Single Fax Number...................65 Page ...............................................................................................94
Sending One Document to Many Recipients ........................ 66 Setting Tabs with FCL ..................................................................94
Sending One Document to Many Recipients With an Include
File.................................................................................................. 66 Chapter 17 Selecting and Configuring Fonts ..................................... 97
Creating Lists of Recipients for a Broadcast ...........................67 Understanding TrueType Fonts....................................................97
Using Cover Sheets in a Broadcast.......................................... 69 Understanding Support for Other Fonts ...................................97
Sending Documents to a Printer or File with FCL ..................70 Selecting Fonts ...............................................................................98
Changing the Appearance of Fonts ...........................................98
Chapter 12 Creating and Linking Background Forms...................... 71
Understanding Background Forms ............................................71 Chapter 18 Setting Page Orientation and Image Quality..............101
Creating Background Forms........................................................71 Setting Page Orientation ........................................................... 101
Linking Background Forms...........................................................72 Setting Fax Image Quality.......................................................... 102

Chapter 13 Including the Same Files and Commands in Many Chapter 19 Attaching and Embedding Files, Signatures, and
Documents ............................................................................. 73 Graphics ................................................................................105
Understanding Include Files.........................................................73 Attaching Files to Documents with FCL ................................ 105
Creating Include Files ....................................................................74 Embedding Signatures with FCL ............................................ 106
Linking Include Files.......................................................................75 Embedding Graphics with FCL................................................ 108
Chapter 20 Scheduling Document Transmission ............................ 109 Chapter 25 Programming for the RightFax API for Java................165
Installing the API for Java........................................................... 166
Chapter 21 Setting Up Notification Messages of Document Sending Outbound Documents .............................................. 167
Transmission ....................................................................... 111 Querying Documents.................................................................. 170
Creating Notification Messages with FCL............................. 111 Performing Actions on Documents.......................................... 172
Creating Notification Templates ............................................... 112 Using Debug Mode ......................................................................174
Creating Notification Channels ................................................ 118 Error and Status Codes for XML- and Java-Based Documents
Including the {{Notifyhost}} Command in Documents ........ 128 175

Chapter 22 Testing and Troubleshooting Notification Messages...... Chapter 26 Creating FCL Documents with InternetLink Commands
131 177
Testing That the Host Application Is Correctly Receiving System Requirements................................................................. 177
Notifications ............................................................................... 131 Activating the InternetLink Module .......................................... 177
Troubleshooting............................................................................ 132 Understanding the InternetLink FCL Commands ................ 178
Attaching Native Files to InternetLink Documents ............... 179
Chapter 23 Setting Up Actions on Document Transmission ........ 135 Sending Documents as E-mail if Faxes Fail........................... 181
Printing or Faxing a Copy of a Document That Was Receiving Notification When a Fax Fails and Is Sent as an
Transmitted................................................................................. 135 E-mail........................................................................................... 181
Printing or Faxing a Document That Cannot Be Transmitted .... Standard FCL Commands with InternetLink Options......... 181
137 InternetLink FCL Commands .................................................... 182
Performing Actions on Documents With Missing Data ......138
Appendix A Integration Module Programs187
Chapter 24 Programming for the RightFax XML Interface........... 141
Appendix B FCL Commands189
Introduction to the RightFax XML Interface........................... 141
Installing the XML Interface....................................................... 141 Index ...................................................................................................................221
XML Interface Functions ............................................................ 142
Transports...................................................................................... 143
Understanding Body and Cover Text ...................................... 147
The Schemas ................................................................................ 147
Sample Documents Based on the Schemas ........................ 157

Contents v
RightFax 9.4 Integration Module Guide vi
Chapter 1
Introduction

The RightFax Integration Module enables applications for The RightFax system can integrate with many applications. The
information exchange by integrating with applications on integration options are listed in the following table, along with the
mainframe, mid-range, and local area network host systems. RightFax documentation where you can refer for more information.
Together, the RightFax server and the Integration Module will send
any document created by these applications via fax, e-mail, or over Table 1a RightFax Integration Options
the Internet. Refer to these resources for
The RightFax Integration Module automates batch-oriented, Integration option information
repetitive processes. It is designed to support applications that Integration Module services Chapters 2-24 in this guide
produce output that traditionally is sent to a printer, printed on on the RightFax server with RightFax Administrator’s Guide
pre-printed forms, folded, stuffed in envelopes, and then mailed or Facsimile Command
manually faxed. These documents can include invoices, itineraries, Language (FCL)
purchase orders, statements, order confirmations, loan
RightFax XML Interface Chapter 24, “Programming for the
applications, bills of lading, change orders, financial reports, and
RightFax XML Interface” in this guide
material safety data sheets.
RightFax API for Java Chapter 25, “Programming for the
RightFax API for Java” in this guide
RightFax C, C++, and www.captaris.com/
Visual Basic API

Using This Guide


The RightFax Integration Module Guide contains an overview for
configuring and working with the RightFax Integration Module. It is
written for RightFax administrators. It is a reference guide, with

7
RightFax 9.4 Integration Module Guide 8

introductions to and overviews of technical topics. This guide is Getting Help Online
intended to be used with the RightFax Administrator’s Guide, and
it is supplemental to Captaris technical training classes. Most of the RightFax windows and dialog boxes include
context-sensitive help. Typically, this help describes each field and
option in a dialog box. This context-sensitive help can be launched
Document conventions
from the question mark icon in the title bar of a dialog box.
Notes and warnings in this guide provide instructions for special
circumstances, side effects and product interactions, and
important reminders. Click the
question mark icon
Notes include information that you may find useful but do not
affect the integrity of your computer hardware, software, or data.
Click this icon, and then click any option on the dialog box to view
Warnings always indicate that failure to proceed carefully may its definition.
result in loss of data or damage to hardware or software. Always
Or, press F1 to view a definition.
read and understand warnings before proceeding.
Online help for tasks or conceptual topics also is available. View
Because most RightFax products let you customize the install
this help by selecting the Help menu. You can browse the help for
location, paths are not presented as literal paths from the root
a topic or use the index to look up key words and terms.
folder. Instead, the install folder you selected at the time of
installation is assumed to precede folder names where applicable.
If the text in this guide contains user input (such command-line
commands with switches) that should be typed exactly as shown, Select the
the user input is bold. If the user input contains variables (such as Help menu
variable parameters in a command line), the variables are italicized
and then described in the subsequent paragraph.

The Captaris Web site offers the latest product information.


Other Resources for RightFax Users Updated documentation, a searchable customer support
knowledgebase, software downloads, and the latest product
Because your RightFax servers may support dozens, hundreds, or offerings are all online at www.captaris.com/.
even thousands of fax users, RightFax has designed its end-user
documentation to be thorough, easy-to-use, and easily accessible.
In addition to the user’s guides, Quick Reference Cards cards give Captaris Training Services
you quick and easy access to the most common fax management
features of the FaxUtil, Microsoft Outlook, and Lotus Notes. These RightFax training gives you the skills to optimize your RightFax
useful cards are compact and can be easily distributed throughout solution. Our comprehensive technical, administrative, and user
training programs produce full utilization and understanding of
even the largest organizations.
RightFax products. Regular classes are held, throughout the year.
Training materials and computer-based training tools are also
available. For more information on RightFax training, please visit our
Web site at www.captaris.com/training and let us help you develop
a customized training plan for your organization.

Customer Support
Your Customer Support Guide includes detailed information about
the support options available to RightFax customers. Please fill out
the RightFax Software Warranty & Registration Card and return it
immediately. If you have questions of a technical nature, contact
your organization’s RightFax administrator or network administrator
before calling the RightFax customer support department. On the
RightFax Web site, a database of customer support knowledge
contains a wealth of information on installing, configuring, and
maintaining RightFax software.
RightFax Customer Support:
Voice: (520) 320-7070
Captaris Web:
155 N Rosemont Blvd Suite 101 www.captaris.com/support/index.h
Tucson, Arizona 85711 USA tml
E-mail: [email protected]

5:00 A.M. to 5:00 P.M. Pacific time, Monday through Friday


7:00 A.M. to 3:00 P.M. Pacific time, Saturday

Chapter 1 Introduction 9
RightFax 9.4 Integration Module Guide 10
Chapter 2
Overview

This chapter provides an overview of the Integration Module Scheduling documents


services that can be implemented on the RightFax server with In addition to the scheduling control provided by the RightFax
Facsimile Command Language (FCL). It describes the features of server, the Integration Module can:
the Integration Module and the workflow and programs that
recognize data, assemble the data into documents, distribute Delay the sending of a document by minutes or schedule the
documents, and report the results. date and time for a document to be sent.
Prioritize a document for sending.
Hold a document for approval.
Features of the Integration Module Send documents in batches.
The Integration Module provides the following features. Broadcast faxes.

Formatting documents Attaching cover sheets and other attachments


The Integration Module can: When a document is processed by the Integration Module,
additional documents can be attached, including cover sheets.
Add lines, boxes, and other shapes to a document.
Information for the cover sheet can be provided by FCL codes.
Set fonts, margins, and tabs.
Add graphics to a document, such as a signature or a company Including data from a lookup table
logo.
A document from a host-based application may not include all the
Add a background form over which the document data is placed, information that is needed to send it, such as a fax number. You can
such as a purchase order form, bill of lading, or itinerary. create a table of data where the Integration Module can “look up”
the needed data.

11
RightFax 9.4 Integration Module Guide 12

Sending notification messages PostScript files


As a document is sent via the RightFax server, notification To process and transmit a PostScript file, the host application must
messages can be generated and sent back to the sender of the send a “false” first page with the PostScript document. This page
document, to a system administrator, to a central mailbox, to a file, must contain FCL codes in text form, which can be interpreted by
to a directory, or to a database on the host application. They can be the Integration Module. The Integration Module interprets the FCL,
e-mailed or faxed, or files can be transferred. removes the false first page, formats the document, and transmits
Notification messages can be customized to contain descriptive it. This may require custom programming.
information about the sent document, such as:
PCL files
Sender and recipient information, such as name, company name,
fax number, voice number, and e-mail address. To process and transmit a PCL file, the host application must send
a “false” first page with the PCL document. This page must contain
Document data such as the number of pages, transmission date
FCL codes in text form, which can be interpreted by the Integration
and time, image quality, and the duration of the fax call.
Module. The Integration Module interprets the FCL, removes the
Status of the fax from the fax board. false first page, formats the document, and transmits it. This may
Another form of notification is to fax or print documents that are require custom programming.
sent or documents that encounter errors in sending.

Understanding Document Distribution


Understanding Document Recognition The following figure shows how the Integration Module programs
The Integration Module can process ASCII text files, PostScript receive, process, recognize, and distribute data from the host
files, and print control language (PCL) files that are generated by application. This illustration shows the input channels that can be
an application. configured to receive and recognize data. Up to 70 channels can
be configured.
ASCII text files Example The executable Bufdir.exe scans a folder for files sent by
To process text files, you must do one of the following: the host application. Bufdir.exe retrieves the files and
sends them to Makedoc.exe, which begins the process
Include FCL commands in the document data. This may require of converting them to documents and transmitting them.
custom programming to add FCL to documents or to templates Notify.exe creates a notification that is sent to an
in the host application or to insert FCL in the data stream. This is application on the host system.
known as native mode.
Create “filter templates” that add FCL to the document data after
it is sent to the Integration Module for processing. A filter
template is a map of the document data that contains the FCL
that is required to create and send the document. This is known
as filter mode.
For a list of the programs that process and send documents, see “Figure 2.2: Integration Module Data Flow” shows how FCL
Appendix A, “Integration Module Programs”. documents are processed after the Integration Module receives the
data stream from a host application. It explains the programs, such
Figure 2.1 Flow of Documents in the Integration Module as Makedoc.exe, that are shown briefly in “Figure 2.1: Flow of
Documents in the Integration Module”.

Figure 2.2 Integration Module Data Flow

Chapter 2 Overview 13
RightFax 9.4 Integration Module Guide 14
Chapter 3
Installing the RightFax Integration Module

The RightFax Integration Module enables applications for Installing the Integration and Business
information exchange by integrating with applications on
mainframe, mid-range, and local area network host systems. To
Integration Modules
meet the needs of small, medium, and large enterprises, the The RightFax Integration Module and Business Integration Module
RightFax Integration Module comes in two versions: the Integration software are installed automatically during the RightFax server
Module which includes full functionality, and the Business installation. To enable the functionality of these modules, they must
Integration Module which includes a limited set of features for use be licensed and then simply enabled on the RightFax server. For
by smaller organizations. information on enabling or adding new components to a RightFax
server, refer to the RightFax Installation Guide.
Table 3a RightFax Integration Module types
Module Features To install the RightFax Enterprise Integration Module
RightFax Integration 70 input channels. 1. Install the RightFax server, as described in the RightFax
Module Output methods of fax, certified email, Installation Guide.
encrypted email, or print.
2. Configure the RightFax server, as described in the RightFax
Up to 70 filter templates.
Administrator’s Guide.
Up to 128 notification channels.
Unlimited notification messages. 3. If the Integration Module service does not appear in Enterprise
Fax Manager, you need to create the service. To do so, open
RightFax Business Two input channels. Windows Control Panel. Double-click the RightFax Integration
Integration Module One output method (fax or print) per applet. The Integration Module Configuration opens. Click
input channel. OK, and the service will be created.
Two fax channels for each fax output.
One filter template per input channel.
Unlimited notification messages.

15
RightFax 9.4 Integration Module Guide 16

4. Configure the Integration Module software, as described later in


this guide.
Chapter 4
Connecting to the RightFax Server

This chapter explains the most common methods for connecting a


host computer to the Integration Module computer for FCL-based
documents.
Because several methods can be used to connect a host computer
to the Integration Module on the RightFax server, you must
determine the best choice for the capabilities of the host system
environment and the distribution methods for documents and
notifications about sent documents.
Because of the wide range of host applications, environments, and
potential connection scenarios, this chapter does not provide
step-by-step connection procedures.
The following figures illustrate the most common connection
methods. Some connections require third-party software that

17
RightFax 9.4 Integration Module Guide 18

Captaris does not provide or support. Figure 4.2 Connections to Host Applications that Generate XML and Java Data

Figure 4.1 Connections to Applications that Generate FCL or ASCII Data

Guidelines for Common Connection Methods


The most common communication connection methods and basic
requirements are described in the following sections:
Line printer remote (LPR) connection on page 19
3270 emulation on page 19
TCP/IP socket connection on page 19
File Transfer Protocol (FTP) connection on page 19
5250 emulation on page 19
IBM® WebSphere MQ® client v6 for Microsoft Windows on
page 20
After the communication methods are established, you must In the event that connections are required from different regions or
configure the Integration Module to receive data via those different host computers, multiple sessions are supported up to the
methods, as described in Chapter 6, “Configuring the Integration limits of the adapter hardware and software. For example, a 3270
Module to Receive Data”. coaxial adapter typically will support five separate printer or
In general, the RightFax Integration Module is a printer connected terminal sessions to a single cluster controller.
to the host computer. The host application will print to the To send notification messages back to an application on the host
Integration Module. system, a separate connection method (known as a connection
channel) can be defined.
Line printer remote connection To configure the Integration Module to receive data via this method,
To use a line printer remote connection, set up the host system to see “Setting Up a Named Pipe Capture” on page 27.
print to the RightFax Integration Module as a remote Berkeley Style
Device (BSD) printer. In most cases, set the remote host name to TCP/IP socket connection
the host name of the Integration Module, and set the remote printer You can set up a direct socket connection via TCP/IP to and from
name to “hostfax”. (By default, the Integration Module installs a the RightFax server through any available port. This usually requires
printer called “hostfax”. This is usually the default printer.) that you acquire or create connection software for the host system.
The TCP/IP printing service or Print Services for Unix must be To configure the Integration Module to receive data via this method,
installed and started on the RightFax server. see “Setting Up a TCP/IP Port Capture” on page 31.
To configure the Integration Module to receive data via this method,
see “Setting Up a Named Pipe Capture” on page 27. File Transfer Protocol connection
The RightFax Integration Module can use FTP server services to
3270 emulation accept documents from the host computer. The Integration Module
You can set up a direct connection from the RightFax server to a also can use an FTP client to send notification messages back to
mainframe host with 3270 emulation software. The protocol an FTP server on the host system.
standard TN3270 using TCP/IP over an Ethernet network adapter For FTP connections, you must install and configure an FTP server
is the recommended method. Systems Network Architecture on the RightFax server computer.
(SNA) can be used. Coaxial cable with a 3270 coaxial adapter can
be used, but it is not recommended. To configure the Integration Module to receive data via this method,
see “Setting Up Directory Scanning” on page 28.
Emulation software often has difficulty with a coaxial cable
connection in a Windows environment. TN3270 is often a better
choice and is easier to configure if the mainframe has a TCP/IP 5250 emulation
connection. To send documents from the host computer to the Integration
Module, 5250 emulation software is recommended. A serial
connection with a protocol converter can be used, but it is not
recommended.

Chapter 4 Connecting to the RightFax Server 19


RightFax 9.4 Integration Module Guide 20

The protocol converter sends data to the RightFax server via a


serial cable connected between the converter and one of the COM
ports on the RightFax server. If this method is used, the Integration
Module must be configured to accept input on the serial port.
To send notification messages back to the host, SQL via ODBC is
recommended. Emulation software via 32-bit high level language
application programming interface (HLLAPI) or via a serial
connection also can be used.
To configure the Integration Module to receive data via this method,
see “Setting Up a Serial Capture” on page 29.

IBM WebSphere MQ client for Windows


The RightFax Integration Module can communicate with an IBM
WebSphere MQ 6 channel via TCP/IP. To configure the Integration
Module to receive data via this method, see “Setting Up an IBM
WebSphere MQ Connection” on page 32.
Chapter 5
Using the Integration Setup Wizard

The RightFax Integration Module includes a wizard that helps you 3. In the Service Name list, double-click RightFax Integration
to create configurations for many of the connection methods. Use Module. The Integration Module Configuration window
the wizard to: opens.
Configure the Integration Module service and set defaults for
Figure 5.1 The Integration Module Configuration Window
documents that are sent from the Integration Module.
Configure input channels from the host application to the
Integration Module.
Set notification actions and messages. You can choose to print
or fax copies of documents as they are transmitted. You also can
define messages with descriptive information about the
documents as they are transmitted.
Format documents with filter templates.
The Integration setup wizard is designed to guide you through each
step of configuring the Integration Module. Instructions in this
guide supplement the instructions in the wizard. Captaris
recommends that you review the topics in this guide before you
begin using the wizard.

To start the wizard

1. On the Start menu, select Programs > RightFax > Enterprise


Fax Manager. The Enterprise Fax Manager window opens.
2. In the Fax Servers list, click the name of the server where the
Integration Module is running.

21
RightFax 9.4 Integration Module Guide 22

4. Click Integration Setup Wizard. The wizard starts, and the These settings are also described in Chapter 9, “Setting Defaults
Integration Setup Wizard window appears. for FCL Documents”.

Figure 5.2 The Integration Setup Wizard


Define inputs for the host application
In this series of steps, you can define the settings for receiving data
from host applications via a named pipe, directory, TCP/IP, IBM
WebSphere, or a custom input type.
For each communication method, you will specify the
communications protocol and transmission method, port, directory,
or queue to monitor, and the configurations needed for each
protocol. You will:
1. Name the input.
2. Specify the input type.
3. Configure the input.
These settings are also described in Chapter 6, “Configuring the
Integration Module to Receive Data”.
This window is the starting point for the configuration. Select from
the configuration tasks, as described in the following sections. Set notification actions and messages
In this series of steps, you can define notification actions and
Configure the Integration Module service messages.
In this series of steps, you can define information that will appear Notification actions can:
on each fax that is sent from the Integration Module. Some of these Fax sent documents, whether successfully or not successfully
settings can be overridden with facsimile command language transmitted, to an internal fax number.
(FCL) in the documents that are sent.
Print or fax documents that cannot be successfully transmitted
You can make the following default settings for documents: because data is missing.
Name and fax number to appear on the cover sheet. Notification messages can:
File to send as the cover sheet. Notify users that a document was sent.
The default printer for documents sent from the Integration Notify an administrator of the status of documents.
Module.
Fax image quality.
Page length, page size, and reducing the image size to fit the
page.
Notification messages can provide descriptive information, such as
whether or not a document was transmitted, explanations of errors,
and transmission duration, dates, and times. These messages are
sent to a host application from the Integration Module when it
processes and sends documents.
These settings are also described in:
Chapter 21, “Setting Up Notification Messages of Document
Transmission”
Chapter 23, “Setting Up Actions on Document Transmission”

Format documents
In this series of steps, you can create filter templates for
documents with MapText. These settings are also described in
Chapter 10, “Creating Filter Templates”.

Chapter 5 Using the Integration Setup Wizard 23


RightFax 9.4 Integration Module Guide 24
Chapter 6
Configuring the Integration Module
to Receive Data

This chapter describes the procedures for configuring the RightFax 4. In the left pane of the Integration Module Configuration
Integration Module to receive data. You will create an input device window, click Inputs. The input settings appear.
for receiving or retrieving data by writing a command line for each
type of input needed in the system. Figure 6.1 The Inputs Settings

Note that command lines are case-sensitive.

Creating an Input Device


1. On the Start menu, select Programs > RightFax > Enterprise
Fax Manager. The Enterprise Fax Manager window opens.
2. In the Fax Servers list, click the name of the server where the
Integration Module is running.
3. In the Service Name list, double-click RightFax Integration
Module. The Integration Module Configuration window
opens.

25
RightFax 9.4 Integration Module Guide 26

5. Right-click Inputs, and select Add Input Device from the 7. Enter the settings for the type of data input, as described in the
shortcut menu. The Add Input Device dialog box appears. following sections:
“Setting Up a Named Pipe Capture” page 27
Figure 6.2 The Add Input Device Dialog Box
“Setting Up Directory Scanning” page 28
“Setting Up a Serial Capture” page 29
“Setting Up a TCP/IP Port Capture” page 31
“Setting Up an IBM WebSphere MQ Connection” page 32
To create the settings for an input, you will type a command line
or select options in the dialog box. When you select an option in
6. In the Input Type list, select the type of data input needed for the dialog box, the option appears in the command line. For
the communication method implemented for the host system. example, when you select the check box Display Verbose
When you select an option, the available settings for the input Output, -v appears in the Complete Command Line box.
appear in the Integration Module Configuration window.
Figure 6.3 The Integration Module Configuration Window

The
command
line appears
as you make
entries.
Setting Up a Named Pipe Capture 4. Complete the entries in the dialog box, as described in the
following table. These settings correspond to Nplisten.exe
This procedure creates an input device that receives data from a command line options.
host application via a named pipe. The program Nplisten.exe
creates a named pipe, scans it, and then executes a command on Table 6a Add Input Device Settings for a Named Pipe
data found in the pipe. Typically, this input type accommodates
Command line
data that is formatted for a line printer (LPR).
Setting option Description
To set up a named pipe capture Named Pipe to -p pipename The name of the named pipe
Create that Nplisten.exe will monitor
1. In the Input Type list, select Named Pipe (LPR). The named for files. You can enter any
pipe settings appear. name for the pipe in one of the
following formats:
Figure 6.4 Settings for a Named Pipe Input Device pipename
\\.\pipe\pipename
Execute on -c “makedoc $$” The command to execute on
Input (-c files received via the named
option) pipe. Makedoc.exe begins the
process of converting data
from the host application into a
fax.
The variable $$ indicates that
all files should be processed
with Makedoc.exe.

Example nplisten.exe -c “makedoc $$” -p hplpr


In this example, Nplisten.exe will run the command “makedoc” on
files received via the named pipe. The variable $$ indicates that all
files will be processed with Makedoc.exe. “Hplpr” is a name for an
LPR printer.

2. Select the check box Enable this Input device.


3. In the Name box, enter a descriptive name for this input device.

Chapter 6 Configuring the Integration Module to Receive Data 27


RightFax 9.4 Integration Module Guide 28

Setting Up Directory Scanning 4. Complete the entries in the dialog box, as described in the
following table. These settings correspond to Bufdir.exe
This procedure creates an input device that retrieves data by command line options.
scanning a folder for files. The program Bufdir.exe retrieves the
files, creates a subdirectory for each calling fax server then copies Table 6b Add Input Device Settings for Directory Scanning
the file into the subdirectory before they are processed. Thus,
Command
preventing duplication of faxes.
Setting line option Description
To set up directory scanning Pattern to use -p pattern Enter the file types for which
for Filename Bufdir.exe will scan, for example,
1. In the Input Type list, select Directory. The directory settings Search *.txt. The default is *.*.
appear. Don’t delete -d This setting is useful when testing
Input Files the connection to the host
Figure 6.5 Settings for a Directory Scanning Device
application. It determines whether
or not the files in the folder are
deleted after they are retrieved by
Bufdir.exe.
Files are deleted by default.
Exit Code -r code This setting determines that files
will not be deleted until the
program encounters a specified
exit code.
# of Threads -t threads Specifies the maximum number of
threads of Bufdir.exe to run
simultaneously. The default is 1.
Exit after one -o Quit after scanning the folder
pass through once.
Folder
Secs. to Loop -l seconds This setting is commonly used
with a shared folder on Windows.
Enter the interval in seconds that
Bufdir.exe will scan for files. The
2. Select the check box Enable this Input device. default is to scan the folder when
notified by Windows that a file
3. In the Name box, enter a descriptive name for this input device. has been placed in the folder.
Table 6b Add Input Device Settings for Directory Scanning (Continued) Setting Up a Serial Capture
Command This procedure creates an input device that retrieves data via a
Setting line option Description
serial port. The program Capture.exe retrieves the data.
Secs. to Age -w seconds This setting assures that the file is
up to date before it is processed. To set up a serial capture
If your network is slow, this setting
provides time for the completed 1. In the Input Type list, select Serial Capture. The serial capture
document to be delivered to the settings appear.
folder.
Enter the number of seconds to Figure 6.6 Settings for a Serial Capture Input Device
wait before retrieving the file.
Don’t check for -u This setting determines that
file in use Bufdir.exe will not check for files in
use before retrieving them.
Folder to Folder name Enter the name of or the path to
Monitor and path the folder to watch for
documents.
Execute on -c “makedoc The command to execute on files
Input (-c option) $$” received. Makedoc.exe begins the
process of converting data from
the host application into a fax.
The variable $$ indicates that all
files should be processed with
Makedoc.exe.

Example bufdir -c “makedoc $$” c:\program


files\rightfax\production\inbox
In this example, Bufdir.exe will run the command “makedoc” on files
in the specified directory. The variable $$ indicates that all files will 2. Select the check box Enable this Input device.
be processed with Makedoc.exe.
3. In the Name box, enter a descriptive name for this input device.

Chapter 6 Configuring the Integration Module to Receive Data 29


RightFax 9.4 Integration Module Guide 30

4. Complete the entries in the dialog box, as described in the Table 6c Add Input Device Settings for a Serial Capture (Continued)
following table. These settings correspond to Capture.exe Command
command line options. Input setting line option Description
Table 6c Add Input Device Settings for a Serial Capture Right Brace -R character Specify one or more characters
Char that form the right (closing)
Command delimiter for FCL commands in
Input setting line option Description documents that are received via
End Sequence -S sequence Specify the sequence of this serial port. Usually this is a
characters that will indicate the pair of right braces (}}).
end of each document that is Allow EOT or -E Select this check box to specify
received via this serial port. ETB to end that an end-of-text character
Handshaking -H Specify the handshaking method input (ASCII 4 or CTRL+D) or an
-x for the serial port. embedded
H = Hardware handshaking end-of-transmission-block (ETB)
character (ASCII 23 or
x = XON\XOFF (software) CTRL+W) will mark the end each
handshaking document that is received via this
Baud Rate -b baud rate The baud rate at which serial port.
Capture.exe will scan the serial Stop Bits -s stopbits Specify the bit (0 or 1) that will
port. indicate the end of each
Bits/Character -C size Specify the number of bits (7 or document that is received via this
8) per character. serial port.
ASCII Mode -a Select this check box to convert Parity -e Specify the parity for this serial
carriage returns in a document to -o port.
carriage return-line feed pairs. In -e establishes even parity.
other words, <CR> (carriage
-o establishes odd parity.
return) will be converted to
<CR><LF> (carriage return and
line feed).
Left Brace Char -L character Specify one or more characters
that form the left (opening)
delimiter for FCL commands in
documents that are received via
this serial port. Usually this is a
pair of left braces ({{).
Table 6c Add Input Device Settings for a Serial Capture (Continued) Setting Up a TCP/IP Port Capture
Command This procedure creates an input device that retrieves data via a
Input setting line option Description
TCP/IP port. The program Portlstn.exe retrieves the data.
COM1 or N/A Specify the COM port. The
COM2 default is COM1. To set up a TCP/IP port capture
Execute on -c “makedoc The command to execute on files
Input (-c option) $$” received. Makedoc.exe begins 1. In the Input Type list, select TCP/IP Port. The TCP/IP port
the process of converting data settings appear.
from the host application into a
Figure 6.7 Settings for a TCP/IP Port Input Device
fax.
The variable $$ indicates that all
files should be processed with
Makedoc.exe.

Example capture -b 9600 -c “makedoc $$” com1


In this example, Capture.exe will read input from the COM1 serial
port and then execute the command “makedoc” on the data. The
variable $$ indicates that all files will be processed with
Makedoc.exe.

2. Select the check box Enable this Input device.


3. In the Name box, enter a descriptive name for this input device.

Chapter 6 Configuring the Integration Module to Receive Data 31


RightFax 9.4 Integration Module Guide 32

4. Complete the entries in the dialog box, as described in the TCP/IP port. To configure the input, you specify the channel name,
following table. These settings correspond to Portlstn.exe the host name, the queue manager, and the queue to retrieve the
command line options. messages from.

Table 6d Add Input Device Settings for a TCP/IP Port Capture To set up an IBM WebSphere MQ connection
Command line
1. In the Input Type list, select Custom. The custom settings
Input setting option Description
appear.
TCP/IP Port # -p number Enter the number of the port to
monitor. Figure 6.8 Settings for a Custom Input Device
Execute on -c “makedoc $$” The command to execute on
Input (-c files received. Makedoc.exe
option) begins the process of
converting data from the host
application into a fax.
The variable $$ indicates that
all files should be processed
with Makedoc.exe.

Example portlstn -c “makedoc $$” -p 6250


In this example, Portlstn.exe will read input from TCP/IP port 6250
and then execute the command “makedoc” on the data. The
variable $$ indicates that all files will be processed with
Makedoc.exe.

Setting Up an IBM WebSphere MQ Connection


This procedure describes the configuration needed to
communicate with an IBM WebSphere MQ remote queue 2. Select the check box Enable this Input device.
manager to retrieve messages (outgoing documents).
3. In the Name box, enter a descriptive name for this input device.
The program mqget.exe utilizes the IBM WebSphere MQ client to
connect to the remote queue manager and retrieve messages from
the specified remote queue. The communication input device is a
4. In the Complete Command Line box, enter a command. The Example mqget -C RF_Chan -H qmmaster2 -M RightFax
Mqget.exe command line syntax and options are described in -Q RF_Queue -c ”makedoc $$” -p 1414 -1
the following section.
In this example, Mqget.exe will monitor the IBM WebSphere MQ
Syntax mqget -C channel -H hostname -M queuemanager channel RF_Chan in the domain named Qmmaster2. It will connect
-Q queue [options] to the queue manager RightFax and the queue named RF_Queue.
Data will be read via TCP/IP port 1414, and the command
Table 6e Mqget.exe Command Line Options
“makedoc” will be executed on the data. The variable $$ indicates
Option Description that all files will be processed with Makedoc.exe.
-C channel Name to use for this connection channel.
Setting the MQGet polling interval
-H hostname Fully qualified domain name of the IBM
WebSphere MQ queue manager. 1. Log on to the RightFax server as an administrator.
-M queue manager Queue manager for RightFax that is defined on 2. Open the Windows registry editor and browse to
the IBM WebSphere MQ server. HKLM\Software\RightFax\Production\MQSeries.
-Q queue Queue to retrieve messages from. The 3. Create a new Dword entry called
Integration Module will monitor and retrieve
MQ_Get_ConnectionTimeout
messages from this queue.
4. Set the data value to the interval for scanning the queue, in
-c “makedoc $$” The command to execute on files received.
seconds.
Makedoc.exe begins the process of converting
data from the host application into a fax. 5. Close Windows registry editor
The variable $$ indicates that all files should be
processed with Makedoc.exe.
-d Display debugging output. This is helpful if you
experience difficulty connecting to the server.
-p port TCP/IP port number to use for remote
connection. The default is 1414.
-1 Selects Version 1 of the WebSphere MQ
Application Programming Reference.
This option must be used because MQGet.exe
is not designed to work with the WebSphere
MQ API Version 2.
-tCCSID Specifies the codeset name for a language. A
list of the codeset IDs (CCSIDs) supported by
WebSphere MQ is available from IBM.

Chapter 6 Configuring the Integration Module to Receive Data 33


RightFax 9.4 Integration Module Guide 34
Chapter 7
Testing a Connection and an Input Device

This chapter describes methods for testing that the RightFax 6. Open and examine the test document.
server, Integration Module, and host application are connected and Documents that are created with filter templates (filter mode)
communicating. will be plain ASCII text.
Documents that are created in native mode will be FCL
documents—a combination of FCL commands and document
Testing a Named Pipe Connection data from the host application.
This procedure tests the connection from the host application to a PCL or PostScript documents will be in PCL or PostScript
print input device on the RightFax server, as described in “Setting format with FCL commands on the first “false” page.
Up a Named Pipe Capture” on page 27.
7. Change the printer port back to the named pipe.
To test the connection

1. Pause printing to the printer that was created for the named Testing Directory Scanning
pipe input. This procedure tests the connection from a host system to a folder
2. Temporarily change the printer port to File. that is scanned for files by the Bufdir.exe program, as described in
3. Send a test document from the host application to the printer.
“Setting Up Directory Scanning” on page 28.

4. Look in the print queue to verify that the test document has To test the connection
been sent to print.
5. Activate printing to the Integration Module printer, specifying the 1. Stop Bufdir.exe by stopping the Integration Module service in
file name for the document. Enterprise Fax Manager.
2. Send a test document from the host application to the folder
specified in the Bufdir.exe command line.
3. Look in the target folder on the Integration Module to verify that
the test document was received.

35
RightFax 9.4 Integration Module Guide 36

4. Start the Integration Module service in Enterprise Fax Manager. To test the connection

1. Stop Buffer.exe using one of the following methods:


Testing a Serial Connection Stop it from the Process tab in Windows Task Manager.
This procedure tests the connection from the host system to a Enter signal HFBufferStop at the command prompt.
serial port on the RightFax server, as described in “Setting Up a Enter kill /f buffer.exe at the command prompt (not
Serial Capture” on page 29. recommended).
2. Verify that Buffer.exe is stopped by looking in Windows Task
To test the connection Manager.
1. Stop Buffer.exe using one of the following methods: 3. Send a test document from the host application to the TCP/IP
port specified in the Portlstn.exe command line.
Stop it from the Process tab in Windows Task Manager.
4. In Windows Explorer, navigate to
Enter signal HFBufferStop at the command prompt.
RightFax\Production\Makedoc and verify that the test document
Enter kill /f buffer.exe at the command prompt (not was received.
recommended).
5. In Enterprise Fax Manager, start Buffer.exe by stopping and
2. Verify that Buffer.exe is stopped by looking in Windows Task starting the Integration Module service.
Manager.
3. Send a test document from the host application to the serial
port specified in the Capture.exe command line. Testing an IBM WebSphere MQ Connection
4. In Windows Explorer, navigate to This procedure tests the connection from the host system to an
RightFax\Production\Makedoc and verify that the test document IBM WebSphere MQ queue on the RightFax server, as described
was received. in “Setting Up an IBM WebSphere MQ Connection” on page 32.
5. In Enterprise Fax Manager, start Buffer.exe by stopping and
starting the Integration Module service. To test the connection

1. Open a command prompt window.


Testing a TCP/IP Port Connection 2. At the command prompt, enter the command line that was
written to create the IBM WebSphere MQ input, and then press
This procedure tests the connection from the host application to a ENTER.
TCP/IP port on the RightFax server, as described in “Setting Up a
TCP/IP Port Capture” on page 31
If the connection is successful, then you should see text similar to
that shown in the following example. If the input connection is not
successful, then you will see error messages.

Figure 7.1 Successful Test of IBM WebSphere MQ Connection

Chapter 7 Testing a Connection and an Input Device 37


RightFax 9.4 Integration Module Guide 38
Chapter 8
Creating FCL Documents

To create documents with FCL, you must insert FCL commands


into the data stream that comes from the host application. When
the Integration Module receives this data stream, it uses the FCL to
format and send the document.
Because of the range of host-based applications, system
environments, and document formats, specific instructions for
accessing and manipulating document data is beyond the scope of
this guide.
About 100 FCL commands are available. For a detailed list see
Appendix B, “FCL Commands”.

39
RightFax 9.4 Integration Module Guide 40

Each FCL document must have at least three commands: Table 8a Required FCL Commands (Continued)
{{begin}}, {{end}}, and a command that specifies the type of Command Description
transmission. An overview of these commands is provided in the
following table. {{fax}} Contains the fax number for the recipient
and specifies that the document will be
Table 8a Required FCL Commands sent via fax.
If you have licensed the InternetLink
Command Description
Module, then you can specify an e-mail
{{begin}} Indicates the beginning of a document. address rather than a fax number in order
The Integration Module will process all to e-mail documents.
the data that appears between a {{type certified}} Specifies that the document will be sent
{{begin}} and an {{end}} command as a as a RightFax SecureDocs certified
discreet document. Data that does not delivery e-mail message. To use this
appear between the {{begin}} and option, you must license and install the
{{end}} commands is ignored. RightFax SecureDocs Module.
This command must appear as the first
{{type e-mail}} Specifies that the document will be sent
command in each FCL document. This
as the body of an e-mail message. To use
command is required in every FCL
this option, you must license the
document. FCL documents may contain
RightFax InternetLink Module.
multiple {{begin}} and {{end}}
commands, but the FCL between each {{type file}} Specifies that the document will be
set of commands will be rendered as a {{file}} transferred to a folder.
separate page. {{list}}
{{end}} Indicates the end of a document. {{type mime}} Specifies that the document will be sent
The Integration Module will process all as an attachment to an e-mail message.
the data that appears between a This option requires the RightFax
{{begin}} and an {{end}} command as a InternetLink Module.
discreet document. Data that does not {{type print}} Specifies that the document will be sent
appear between the {{begin}} and to a printer.
{{end}} commands is ignored.
{{type SMS}} Specifies that a message will be sent to
This command must appear as the last {{smsmsg MessageText}} an SMS-compatible device.
command in each FCL document. FCL {{sms PhoneNum}}
documents may contain multiple
{{begin}} and {{end}} commands, but the
FCL between each set of commands will
be rendered as a separate page.
Understanding the Format of FCL Commands Figure 8.1 Other Files Can Be Added to the Document

The most important requirement for forming FCL commands is that 1


they begin with two left braces ({{) and end with two right braces {{begin}}
(}}). Unique delimiters can be defined for serial capture input. For {{lm 0.5}}
{{moveto 0.5 1.0}}

instructions, see “Setting Up a Serial Capture” on page 29. Fax Transmission


from Smith
2 {{cover sales.cov}} January Invoices

Hardware {{end}} Invoice #1: AAAAAAA


{{fax 503-555-1234}}
All FCL commands have the same format, and most of them can {{tm 4.0}}
{{lm 0.5}}
Invoice #2: BBBBBBB

include arguments and variables: {{font ariel10 10 14}} {{attach januaryinvoices.doc}} 3 Invoice #3: CCCCCCC

4 Invoice #4: DDDDDDD

{{command argument variable}} {{include februaryorders.inc}} Invoice #5: EEEEEEE

{{form purchorder.tif}}
Use one or more spaces to separate commands from arguments
and variables. Item SKU Qty Cost
5
Smith Hardware Co.
Purchase Order
Rail 16 1 294.99
You can list several FCL commands in a sequence. Do not type Clip 24 10 190.08
Pin 09 30 104.32
spaces between the commands in a line:
6 {{end}}
{{begin}}{{fax 503-555-1234}}{{onsuccess fax 555-6892}}
You can place FCL commands anywhere in a document, but
Captaris recommends that you place them at the end unless
Fax Transmission from Smith Hardware Co. January Invoices
otherwise specified for the FCL command (see Appendix B, “FCL Smith Hardware Purchase Order
Commands”). Invoice #1: AAAAAAA

Invoice #2: BBBBBBB


Item SKU Qty Cost
Rail 16 1 294.99 Invoice #3: CCCCCCC
Example FCL Documents Clip 24 10 190.08
Pin 09 30 104.32 Invoice #4: DDDDDDD
The following figure (“Figure 8.1: Other Files Can Be Added to the
Invoice #5: EEEEEEE
Document”) and the numbered paragraphs following it illustrate
how other documents—such as cover sheets, background forms,
and attachments—can be included in a document with the use of
FCL commands.

Chapter 8 Creating FCL Documents 41


RightFax 9.4 Integration Module Guide 42

1. The Integration Module receives the document data stream The following figure (“Figure 8.2: FCL Document for an Invoice
from the host. It contains the source document data and FCL from NW Distributors to Portland Trading Co.”) illustrates the
commands. In the example here, the original host data is shown FCL-encoded document for an invoice. The finished document is
in bold text. It will become part of a purchase order. The FCL illustrated in “Figure 8.3: Finished Invoice from NW Distributors to
commands precede and follow the host data. Portland Trading Co.”.
2. The {{cover}} command specifies that the file Sales.cov will be
Figure 8.2 FCL Document for an Invoice from NW Distributors to Portland Trading
used as the fax cover sheet. The example cover sheet creates a Co.
0.5-inch left margin ({{lm}}) and starts the text “Fax {{begin}}
Transmission from Smith Hardware” at the x- and y-coordinates {{fax 503 555 9182}}
1 {{form invoice.tif}}
0.5 and 1.0 inches from the top-left corner. The cover sheet is 2 {{attach ptc6mos.xls}}
{{tm 1.25}}
attached as the first page of the document. 3 {{lm 0.25}}
{{font “times new roman” 12}}
{{orient landscape}}
3. The {{attach}} command specifies that the file {{company Portland Trading Co.}}
4 {{contact Anne Paige}}
Januaryinvoices.doc will be attached. Januaryinvoices.doc will 5
{{owner John Bardolph}}
{{onerror fax 503-555-4592}}
be attached following the body of the fax. 6 {{notifyhost notifyinv notifyinv exchange}}
18277 8/8/01

4. The {{include}} command specifies that the file Anne Paige Portland Trading Co.
Februaryorders.inc will be referenced. The include file specifies Portland Trading Co.
11990 S.W. Capitol Hill Road
11990 S.W. Capitol Hill Road
Portland, OR 97034
the measurements for top and left margins ({{tm}} and {{lm}}) Portland, OR 97034 (503) 555-9182

and the font.


55222 13579 John Bardolph
5. The {{form}} command specifies that the file Purchorder.tif will 8/4/01 8/7/01 2% 10 days

be added as the background for the fax.


50 lb 13654 Beef Jerky $ 8.50/lb $ 425.00
6. The finished fax includes the background form and the 50 lb 13655 Smoked Salmon $ 12.00/lb $ 600.00

document data, as if the document has been printed on a


pre-printed form. $1,025.00 $75.00 $75.00 $1,175.00
{{end}}

7. The cover sheet, document, and attachment are faxed to


503-555-1234 in one transmission. 1. The {{form}} command specifies that the file Invoice.tif will be
added as the background for the fax. “Figure 8.3: Finished
Invoice from NW Distributors to Portland Trading Co.” shows
the finished document merged with the Invoice.tif background
form.
2. The {{attach}} command retrieves a file named Ptc6mos.xls.
This file is a six-month history of items purchased by Portland
Trading Company. It is a Microsoft® Excel spreadsheet that is
populated with data from a database. The spreadsheet will be
sent as an attachment.
3. These four commands format the document. {{Tm}} specifies a 6. The {{notifyhost}} command specifies that the sender will
top margin of 1.25 inches. {{Lm}} specifies a left margin of 0.25 receive a notification message when the document is sent.
inches. {{Font}} specifies a font of Times New Roman, 12-point.
{{Orient}} specifies that the document will be in landscape Figure 8.3 Finished Invoice from NW Distributors to Portland Trading Co.
orientation. ptc6mos.xls Page 1 of 4

4. These three commands will populate the variables in a Data Data Data Data Data Data Data Data

notification message that will notify the sender when the


document is sent. NW
5. The {{onerror}} command specifies that the Integration Module Distributors Invoice # Date
18277 8/8/01
take a particular action if a document fails to send properly. If an Sold to Ship to
error occurs in transmission, the document will be faxed to Anne Paige Portland Trading Co.
503-555-4592, which is a fax machine in the sender’s office. Portland Trading Co. 11990 S.W. Capitol Hill Road
11990 S.W. Capitol Hill Road Portland, OR 97034
Portland, OR 97034 (503) 555-9182

55222 Your order # 13579 Our order # John Bardolph Sales person
8/4/01 Date ordered 8/7/01 Date shipped 2% 10 days Terms

Qty Item Description Price Amount


50 lb 13654 Beef Jerky $ 8.50/lb $ 425.00
50 lb 13655 Smoked Salmon $ 12.00/lb $ 600.00

Subtotal Sales tax Shipping Total


$1,025.00 $75.00 $75.00 $1,175.00

Chapter 8 Creating FCL Documents 43


RightFax 9.4 Integration Module Guide 44
Chapter 9
Setting Defaults for FCL Documents

To set most default values, you must make configurations to the Setting General Defaults
Integration Module Configuration program. In many cases, you can
override the default in specific documents by including FCL 1. In the left pane, click General. The General settings appear in
commands in the document data from the host application. the right pane.
You can also set defaults for things like margins and fonts by Figure 9.1 General settings
inserting relevant FCL commands in a global include file. For
information on include files, see Chapter 13, “Including the Same
Files and Commands in Many Documents”.

Opening the Integration Module Configuration


Program
1. On the Start menu, select Programs > RightFax > Enterprise
Fax Manager. The Enterprise Fax Manager window appears.
2. In the Fax Servers list, click the name of the server on which the
Integration Module is running.
3. In the Service Name list, double-click RightFax Integration
Module. The Integration Module Configuration window
appears.

Chapter 9 Setting Defaults for FCL Documents 45


RightFax 9.4 Integration Module Guide 46

2. In the Company name box, enter a name to appear on the 7. In the Event Log Level box, select the level of reporting to the
cover sheet of each sent fax. Usually this is the company name. Windows Event Log.
This setting can be overridden for a document with the {{rti}} None records no errors
command. For more information on this command, see Terse records critical errors only
Appendix B, “FCL Commands”.
Normal records the most significant events only and is the
3. In the CSID box, enter a voice telephone number to appear on correct setting for normal use
the cover sheet of each sent fax. This is usually the telephone Verbose records all significant events and is the most useful
number for the company. for tracking and resolving problems
This setting can be overridden for a document with the {{csi}}
command. For more information on this command, see Caution If this value is set to verbose indefinitely, the event log can
Appendix B, “FCL Commands”. become full. This can prevent new events from being logged.

4. In the Default cover page box, enter the file name for a cover 8. In the Server name box, enter the name of the RightFax server.
sheet. Enter none for no cover sheet. For more information on 9. In the Protocol list, select the communication protocol for the
cover sheets, see Chapter 14, “Creating and Attaching Cover RightFax server.
Sheets”.
5. In the Default Printer box, specify the printer to use for printing
documents when an error is encountered or when printing a
document with the {{type print}} FCL command. Enter a printer
that has been defined in Enterprise Fax Manager.
This setting can be overridden for a document with the
{{printer}} command. For more information on this command,
see Appendix B, “FCL Commands”.
6. Under Transmission quality, specify the image quality for
faxes.
Fine is 200 x 200 dots-per-inch.
Standard is 200 x 100 dots-per-inch.
This setting can be overridden for a document with the
{{quality}} command. For more information on this command,
see Chapter 18, “Setting Page Orientation and Image Quality”.
Setting Defaults for FCL Processing 4. In the Page length box, enter the maximum page length for a
fax. For example, this setting prevents a legal-size page (11
1. In the left pane, click FCL Processes. The FCL Processor inches wide x 14 inches long) from being cut off at 11 inches.
settings appear in. the right pane. The unit of measurement is determined by the Units of
measure setting.
Figure 9.2 The FCL Processor Settings
5. In the Maximum attached pages box, specify the maximum
number of attached pages for each fax. The Integration Module
can attach up to 1024 pages to a fax.
6. A document attached to a fax that is 300 dots-per-inch will be
faxed as two pages. To reduce the image size and send the
image as one page, select the check box Shrink 300 DPI files
to fit page.
7. In the Minimum page length box, specify the minimum page
length for faxes. This setting ensures that a fax with very little
data is printed on a page that is long enough, so that it does not
get lost or discarded by the recipient. The unit of measurement
is determined by the Units of measure setting.
8. White space at the end of a fax is sent as data to the receiving
fax machine. You can speed up the transmission of the fax if this
data is not sent. To remove this data from the fax, select the
Trim trailing white space check box.

2. In the Units of measure box, specify the unit of measurement


that will be used for indentation, page length, and for FCL
commands. With FCL commands, his setting is used to specify
the x- and y-coordinates for placing data on a page. This setting
can be overridden for a document with the {{units}} command.
For more information on this command, see Appendix B, “FCL
Commands”.
3. In the Indentation box, specify the indentation of the fax image
on the left side of the page. The unit of measurement is
determined by the Units of measure setting.

Chapter 9 Setting Defaults for FCL Documents 47


RightFax 9.4 Integration Module Guide 48
Chapter 10
Creating Filter Templates

Understanding Filter Templates Filter templates provide the following features:

The RightFax Integration Module processes documents from the Data mapping provides sending information to the RightFax
host application by interpreting facsimile command language (FCL) Integration Module, such as the recipient name, fax number, and
and performing functions based on the commands. The Integration e-mail address. It also provides information from the source
Module can do this in one of two ways: native mode or filter mode. document for the fax cover sheet.
Data mapping provides information from the source document for
With native mode, you include FCL commands in the document
notification messages, such as the sender's name and e-mail
data that is sent from the host application. This may require
address. Combined with the RightFax Integration Module,
custom programming to add FCL to documents or to templates
notifications provide the status of the sent document to the
in the host application or to insert FCL in the data stream.
sender, to a system administrator, or another recipient.
With filter mode, you create “filter templates” that add FCL to the
Background forms can provide visual interest to the filter
document data after it is sent to the Integration Module for
template, with the features of a pre-printed form such as a
processing. A filter template is a map of the document data that
purchase order or stationery. Background forms are included by
contains the FCL that is required to create and send the
linking an image file to a filter template.
document.
Graphics can be added. Graphics are included by linking an
This chapter discusses the creation of filter templates that support image file to a filter template.
filter mode.
Data tables can be linked to the form so that information can be
added to a document before it is sent. This is useful for adding
data that is not sent from the host application with the document.
User-defined data fields and facsimile command language (FCL)
can further extend the filter template.

49
RightFax 9.4 Integration Module Guide 50

In the following example, the mapped data elements are the 4. The document data now contains FCL. The {{company}} and
company name and fax number. {{fax}} FCL commands are created by the mapped fields in the
1. An invoice document is sent from host application that does not filter template. The document can now be processed and sent
include FCL. by the Integration Module.

2. On the RightFax server, Filter.exe receives the document data Figure 10.1 Filter Mode Document Flow
and it retrieves a filter template. The filter template identifies
data in the document that is needed for addressing and sending
the document. In this filter template, the company name and fax
number are mapped.
3. The filter software extracts the content of the company name
and fax number fields and creates the {{company}} and {{fax}}
FCL commands.
Preparing to Create Filter Templates Create TCP/IP print queues in the Integration Module. This is
typically one print queue per filter.
Before you begin creating filter templates, prepare the following
information:
Assigning filter templates to documents
For each document that will be sent, obtain an ASCII text file that You have two options for assigning a filter template to a document:
includes the data that will be used to the send the document, to
send a notification message, or to be placed on cover sheets. Assign a template ID to each filter template. Data in the
This data might include the fax number, printer, voice telephone document from the host application is mapped to a field in the
number, and the sender’s name and address. Save the text files filter template that identifies the template (see “Understanding
in the folder RightFax\Production\Include. the Field Types” on page 59).
To capture a document from the host application data stream, Create up to 70 unique input channels for the documents to
send the document via an input channel on the Integration process with filter templates. One input channel can process
Module. The host data must be ASCII text with no extra documents for one filter template (see “Creating an Input
characters or encoding. This may mean that a customized script Channel for Filter Documents” on page 64).
must be written to prepare the data for the filter template. The file
format should not be PCL, PostScript, or Portable Document Maintaining the filter template
Format (PDF). Filter templates are designed to work with data that occurs in static
Identify each background form that should be included with each locations in the document data. If the document changes and a
document. Create the forms and save them in the appropriate data element is moved to a new location, then the filter template
folder on the RightFax server, as described in Chapter 12, must be revised to fit the change.
“Creating and Linking Background Forms”.
Identify each cover sheet that should be included with each
document. Create the cover sheets and save them in the Creating a New Filter Template
appropriate folder on the RightFax server, as described in
You use the MapText program to create filter templates.
Chapter 14, “Creating and Attaching Cover Sheets”.
Identify each graphic element, such as logos or signatures, to MapText includes a preview function, so that you can preview and
include in the filter template. Create the graphics and save them adjust each template as you create it.
in the appropriate folder on the RightFax server, as described in To create a filter template, complete the following steps:
Chapter 19, “Attaching and Embedding Files, Signatures, and
“Step 1: Overlay the sample data on a MapText document”
Graphics”.
(page 52)
Create include files, if needed. For more information, see Chapter
13, “Including the Same Files and Commands in Many “Step 2: Map the document data to MapText fields” (page 54)
Documents”. “Step 3: Establish page length, orientation, and background forms”
Create lookup tables, if needed. For more information, see the (page 57)
{{lookup}} FCL command in Appendix B, “FCL Commands”. “Step 4: Insert FCL” (page 57)

Chapter 10 Creating Filter Templates 51


RightFax 9.4 Integration Module Guide 52

“Step 5: Preview the filter” (page 58) Step 1: Overlay the sample data on a MapText document
The instructions in this chapter refer to sample files that are 1. On the RightFax server in Windows Explorer, navigate to
installed with the Integration Module. The files are described in the RightFax\Production\Bin and run MapText.exe. The MapText
following table. window opens with a blank document called MapText1.

Table 10a Sample Files Installed with Filter for Production Figure 10.2 The MapText Window

Sample file Location Description


SampleData.txt RightFax\Production An example of a document
\Include that a host application
might create. It is
formatted as a single print
stream capture that
contains two documents:
a three-page purchase
order and a one-page
purchase order.
SampleForm.tif RightFax\Production An example of a form onto
\Forms which you might print a
purchase order. MapText
will merge SampleData.txt
with SampleForm.tif to
create an image of the
document printed on a 2. On the Tools menu, click Overlay Data File.
pre-printed form.
3. Select your sample document or SampleData.txt, and then click Figure 10.3 Host Data Merged with a Blank MapText Document
Open. The following example illustrates that SampleData.txt is
placed in the blank MapText document. This image shows the
data that forms Metropolitan Inc. purchase orders. In this case,
the purchase order will go to Universal Suppliers.
This is the “bill to” address
and contact information.

This is the “ship to” address


and contact information.

This is the recipient of the purchase order.


Universal Suppliers will bill to the first
address and ship to the second address.

The horizontal and vertical rows of numbers at the left


and top borders are part of the sample file
SampleData.txt. They are provided to illustrate that
MapText filter templates are grids on which you create
fields at x- and y-coordinates.

Chapter 10 Creating Filter Templates 53


RightFax 9.4 Integration Module Guide 54

Step 2: Map the document data to MapText fields 1. Define the field in the document template that will contain the
In this step, you identify pieces of data in the document that name of the recipient company. Drag the mouse to select
RightFax will use to process and send the documents. You will: Universal Suppliers. The New Field dialog box appears.

Locate the data on the page (create a field for the data). In the following figure, the name of the company that will receive
the document (Universal Suppliers) is selected. It will be
Identify the type of data in the field.
defined as a field. Note that the field is longer than the text it
Map facsimile command language (FCL) to the field. contains. This provides space for long company names that
You can map host data to 25 FCL codes. The following steps map might appear in future documents.
three host data elements (company name, fax number, and
purchase order number) to three fields (company, fax, and Figure 10.4 Defining the Company Name as a Field
comment).
For a detailed description of each type of field, see “Understanding
the Field Types” on page 59.
2. In the New Field dialog box, in the Description box, enter a 5. Define the field in the document template that will contain the
description for the field, such as “Company Name.” purchase order number. Drag the mouse to select the purchase
order number. The New Field dialog box appears.
Figure 10.5 Assigning Attributes to the Field
In the following figure, the purchase order number (PO 13579)
Enter a descriptive name for is selected.
the field you’re creating.
Figure 10.6 Defining the Purchase Order Number as a Field
Select a field type.

(13,12) describes the x-


and y-coordinates for the
upper-left corner of the
field.

3. In the Field Type list, click Company.


4. Click OK.

6. In the Description box, enter a description for the field, such as


“PO Number.”

Chapter 10 Creating Filter Templates 55


RightFax 9.4 Integration Module Guide 56

7. In the Field Type list, click Comment. 9. Define the field in the document template that will contain the
One attribute of the Comment field type is that it starts a new fax number of the company that will receive this document. Drag
document when the data in the field changes. In this case, a the mouse to select the fax number. The New Field dialog box
new purchase order document will be created with each new appears.
purchase order number that is received. For detailed information In the following figure, the fax number (520-555-3282) is
on the Comment field type, see “Understanding the Field Types” selected.
on page 59.
Figure 10.8 Defining the Recipient Fax Number as a Field
Figure 10.7 Mapping the Purchase Order Field

8. Click OK.

10. In the New Field dialog box, in the Description box, enter a
description for the field, such as “Fax Number.”
11. In the Field Type list, click Fax.

Figure 10.9 Mapping the Fax Field Type


12. Click OK. 3. In the Page Length (lines) box, enter 56.
13. On the File menu, click Save. SampleData.txt includes an end-of-page symbol that indicates
14. Give the filter template a descriptive name. It will be saved as a the bottom of the second page. The page breaks at whichever
MapText document (.mtd) in the RightFax\Production\Include comes first: the number you enter in the Page Length (lines)
folder. box or an end-of-page symbol. In SampleData.txt, the
end-of-page symbol is a form feed symbol (^L, or ASCII-12).
In this example, you have:
If the data from the host application does not include an
Mapped the company name in purchase order documents to the end-of-page symbol, you must specify the page length. To do
“Company Name” field of the template. This created the FCL this in MapText, point the mouse at the last line on a page, and
command {{company Universal Suppliers}} that RightFax will use then look at the status area in the lower-right corner of the
to address the fax. MapText window. The following figure shows that
Mapped the purchase order number in purchase order SampleData.txt is 56 lines long.
documents to the “Purchase Order” field of the template. This
created the FCL command {{comment PO13579}}. Figure 10.10 The MapText Tray
Mapped the fax number in purchase order documents to the “Fax
Number” field of the template. This created the FCL command
The default page length for documents is 66 lines for portrait
{{fax 520 555 3282}} that RightFax will use to send the fax.
orientation and 33 lines for landscape orientation. You can test
Saved the purchase order template. the validity of the count in “Step 5: Preview the filter” on
When RightFax receives a document using this filter template, it will page 58.
extract data from the defined fields and use it to address and send 4. Select Portrait.
the fax. It will also begin a new document each time a new
purchase order number is encountered in the purchase order field. 5. In the Print copies in absence of fax number box, click 1.
When no fax number appears in the document from the host
application, this function sends the specified number of copies
Step 3: Establish page length, orientation, and
to the default printer specified for the Integration Module.
background forms
1. On the File menu, click Properties, or click the Properties Step 4: Insert FCL
button on the toolbar. The Properties dialog box appears.
You can extend the filter template by adding FCL commands. For a
2. In the Form list, select SampleForm.tif, or select a background description of the FCL commands, the proper syntax, and the
form that you have created. placement of the commands within documents, see Appendix B,
“FCL Commands”.

Chapter 10 Creating Filter Templates 57


RightFax 9.4 Integration Module Guide 58

To insert FCL 7. On the File menu, click Save, or click the Save icon on the
toolbar. The following example illustrates how FCL appears in
1. On the File menu, click Properties, or click the Properties the Properties dialog box after it is defined.
button on the toolbar. The Properties dialog box appears.
Figure 10.12 Custom FCL Added to the Filter
2. Click New. The Custom FCL dialog box appears.

Figure 10.11 The Custom FCL Dialog Box “01” indicates that this is the
first line of FCL code in this filter
template, and so on.

“BE” indicates that this line of


FCL will apply to the beginning
of every page of the document
that uses this filter template.

“BF” indicates that this line of


FCL will apply to the beginning
of the first page of the document
that uses this filter template.
3. Enter the FCL using the proper syntax and delimiters.
4. To specify that the commands will be inserted at the beginning Step 5: Preview the filter
of each document, select the Beginning of page check box.
To preview the filter, use the Generate Image function. Generate
5. Select one of the following options: Image displays the background form merged with the sample
To specify that the FCL should apply to every page of the document data and therefore helps you fine-tune the alignment. It
document, click Every page. does not test that the RightFax server can receive data from the
host application and process the data correctly with the filter.
To specify that the FCL should apply to only the first page of
the document, click First page.
To preview the filter
To specify that the FCL should apply to only the first page of
the document, click Last page. On the Tools menu, click Generate Image, or click the Generate
To specify the page number for the FCL, click Page #, and Image button on the toolbar. MapText generates the image, and
enter the page number. the default TIFF image viewer opens with the finished document.
6. Click OK. The MapText window appears. Examine all the pages of the finished document. If you are using a
background form, verify that it aligns with the document data.
In the following example, the form is not aligned with the document Understanding the Field Types
data. For help troubleshooting filter templates, see
“Troubleshooting” on page 63. The following table lists the field types and their uses.

Figure 10.13 Your First Attempt Might Yield Alignment Errors Table 10b MapText Field Types
Field Map the field type to
type Description this data element
Abort Cancels the creation of a This field type is
document when the commonly used for
specified text appears in testing purposes.
the field. Example
Corresponds to the For testing, you might
{{abort}} FCL code. create documents in a
large batch that contain
the word “test” in the
Abort field. The
documents would not be
sent.
Comment Starts a new document Map this field to data that
when text in this field is unique in each
changes. document.
Example
The purchase order
number is unique in each
document. When the
purchase order number
changes, a new
document is started.
See also the Page field
type. The Page field type
overrides the Comment
field type.

Chapter 10 Creating Filter Templates 59


RightFax 9.4 Integration Module Guide 60

Table 10b MapText Field Types (Continued) Table 10b MapText Field Types (Continued)
Field Map the field type to Field Map the field type to
type Description this data element type Description this data element
Company Specifies the recipient Map this field to the name Email Specifies the e-mail The e-mail address of the
company name. of the company that address to send. person or company who
Corresponds to the should receive the Notifications about the is sending this document
{{company}} FCL code. document. sent document to the host (used to send a
This information may be application. notification to the e-mail
placed on the cover sheet address).
The document via e-mail
or in a notification using the InternetLink The e-mail address of the
message. Module. person or company to
Corresponds to the which you are sending
Contact Specifies the recipient Map this field to the name
{{email}} FCL code. this document (requires
name. of the person who should
InternetLink).
Corresponds to the receive the document. For more information, see
{{contact}} FCL code. This information may be the InternetLink Module
placed on the cover sheet Guide.
or in a notification Fax Specifies the fax number. Map this field to the fax
message. number where the
Corresponds to the {{fax}}
Cover Specifies the cover sheet. Map this field to the cover FCL code. document should be sent.
Corresponds to the sheet file name.
{{cover}} FCL code. The cover sheet file must
be stored in the directory
RightFax\Production\Cov
ers. If the file is not found
in the directory when the
document is created, the
default cover sheet is
used.
Table 10b MapText Field Types (Continued) Table 10b MapText Field Types (Continued)
Field Map the field type to Field Map the field type to
type Description this data element type Description this data element
Graphic File name of a graphic. Map this field to the Lookup Specifies the file name of a The text in the mapped
graphic file name. The file Lookup2 - lookup table. field of the document will
name must match the text Lookup9 Corresponds to the be compared to the first
in the mapped field. For {{lookup}} FCL code. column in the specified
example, Mark Jones' lookup table. When a
A lookup table can provide
signature file must be match is found, the
information that is not
named MarkJones.tif. associated data in the
contained in the document
The graphic file format row will be used to send
that is sent from the host
must be .tif. The file must the document, included
application, such as the
be stored in the directory on the cover sheet, or
recipient company name
RightFax\Production\For included in a notification
and fax number.
ms. If the file is not found message.
in the directory when the When you create a
document is created, Lookup field, you can
then the image will not create or edit a lookup
appear in the document. file. To do this, click Edit
Example lookup file.
An image such as a The lookup table must be
signature or a company stored in the
logo can be inserted. RightFax\Production\Incl
ude directory.
Include Specifies the file name of Map this field to the
an include file. include file name. Example
The mapped field may
Corresponds to the The file must be stored in
contain a vendor ID. In
{{include}} FCL code. the directory
the lookup table, vendor
An “include” file can RightFax\Production\Incl
ID data includes the
contain commands and ude. If the file is not found
company name and fax
data that are common to in the directory when the
number. The company
many documents. document is created,
name will be printed on
then an error will occur
the cover sheet, and the
and the document will not
fax number will be used
be processed.
to send the document.

Chapter 10 Creating Filter Templates 61


RightFax 9.4 Integration Module Guide 62

Table 10b MapText Field Types (Continued) Table 10b MapText Field Types (Continued)
Field Map the field type to Field Map the field type to
type Description this data element type Description this data element
Owner Specifies the sender's Map this field to the TemplateI Specifies the filter template Map this field to text that
name. sender's name. D to use to format the describes the document
Corresponds to the The name can appear on document. or indicates the
{{owner}} FCL code. the cover sheet or in document type. For
notification messages. example, the words
“Purchase Order” may
Page Starts a new document Map this field to the page indicate that the
when the number 1 number. Purchase Order template
appears in this field See also the Comment be used to format the
field type. The Page field document.
type overrides the When text in the mapped
Comment field type. field matches the text
SendFax Use this field to print a Map this field to the fax specified, the specified
document rather than fax it number. template will be used to
or send it through another This field type is used format the document.
method. when not all recipients User1 Specifies user-defined Map this field to text that
The document will be have a fax number or User 2 information. you want to appear on
printed if N, a space, or null other address for Corresponds to the the cover sheet or in a
User3
characters are found in this transmission. Such user-defined {{user1}}, notification message.
field. documents would be {{user2}}, and {{user3}}
printed so that they could FCL commands.
be mailed.
Voice Specifies the telephone Map this field to the
number for the recipient. phone number of the
person who will be
receiving the document.
The number can appear
on the cover sheet or in
notification messages.
Troubleshooting Document data does not match the background form
After correctly formatting documents for a period of time, the filter
This section provides troubleshooting tips for building filter
template unexpectedly does not match the document data. For
templates.
example the background form does not line up correctly with the
data.
The background form is not aligned with data
In previewing a document that combines a background form with Possible cause
document data, the data does not align with the background form.
Data from the host application may have changed, and the filter
Table 10c Background Form Does Not Align with Data template must be updated. For example, a carriage return or a new
Possible cause Solution
data element may be added.

The margins for the data are Add or edit the FCL commands for Solution
not set correctly. This causes the left and top margins. For
the data to be too far from or instructions, see “Step 4: Insert Review the data that is sent from the host application and the filter.
too close to the left or top of FCL” on page 57. If the data has changed, then you must change the filter template to
the page. accommodate it. For instructions, see “Step 1: Overlay the sample
The fonts are not set correctly. Add or edit the FCL commands for data on a MapText document” on page 52.
This causes the data to be the font. For instructions, see “Step
aligned correctly in some 4: Insert FCL” on page 57. Extra files are not included
places but not in others.
A cover page, signature, background form, or other attached file is
The number of lines on each Set the correct number of lines for missing or is incorrect.
page is not correct. This can each page of the document. For
cause the first page to align instructions, see “Step 3: Establish Possible cause
correctly, but the data on the page length, orientation, and
second page is one line too background forms” on page 57. The file name or path name for the attachment is not correct.
low or high, the data on the
third page is two lines too low Solution
or high, and so on.
The sample data from your Remove the PCL from the data Verify that the file name or path to the file is correct and that the file
host application may include stream that is sent from the host is stored in the correct directory. For instructions, see “Preparing to
print control language (PCL) in application. For instructions, see Create Filter Templates” on page 51.
the first line. If so, the data on “Preparing to Create Filter
the first page will appear one Templates” on page 51.
line below the top margin, and
the other pages will be aligned
correctly.

Chapter 10 Creating Filter Templates 63


RightFax 9.4 Integration Module Guide 64

Documents are not addressed or are not sent correctly The command line for the input channel must specify the filter
Documents are incompletely addressed, the destination fax template. The following table describes the command line options
number is incomplete, or other information appears truncated in the to use.
document.
Table 10d Add Input Device Settings for a Named Pipe
Possible cause Command line
option Description
The fields for the data elements are not long enough.
-c “filter | The option -c specifies one or more commands
makedoc” to execute on files received via the channel.
Solution
Filter.exe extracts the document data using
Re-size the fields. the filter template.
Makedoc.exe begins the process of
converting document data from the host
application into a fax.
Creating an Input Channel for Filter Documents
The pipe symbol (|) separates the two
You can create up to 70 unique input channels for the documents commands in the command line. The
that must be processed with filter templates. One input channel commands must be enclosed in quotation
can process documents for one filter template. The most common marks.
input channels are: -i filename.mtd The option -i specifies that the specified
Named pipe capture (page 27) MapText document (filename.mtd) should be
Directory scanning (page 28) included with the incoming data.
Serial capture (page 29) -f Identifies filename.mtd as a file.
TCP/IP port capture (page 31)
Example nplisten.exe -c “filter -i invoice.mtd -f $$
| makedoc” -p hplpr
In this example, Nplisten.exe will run the “filter” command against
the data file (represented by $$) received on the named pipe. Filter
will add FCL commands as designated by the invoice.mtd template
and pipe the result to “makedoc” for processing.
Chapter 11
Specifying the Destination of the Document

A document can be sent to a fax number, an e-mail address, an Table 11a Destination FCL Commands (Continued)
SMS number, a printer, or a file. Use the following FCL commands Code Description
to specify the destination for documents.
{{type file}} Sends the documents as files to a
Table 11a Destination FCL Commands {{file}} specified folder.
{{list}}
Code Description
{{type mime}} Sends the document as an attachment to
{{fax}} Sends documents to a fax number. an e-mail message. This option requires
If you have the InternetLink Module, then the RightFax InternetLink Module.
you can use an e-mail address with the
{{type print}} Sends documents to a specified printer.
{{fax}} command and send documents
via e-mail. For more information, see the {{type SMS}} Specifies that a message will be sent to
RightFax InternetLink Module Guide. {{smsmsg MessageText}} an SMS-compatible device.
The {{altfax}} command provides an {{sms PhoneNum}}
alternative fax number that is used if the
number provided with the {{fax}}
command fails. Sending One Document to a Single Fax Number
{{type certified}} Sends the document as a certified e-mail To address a document to a single recipient, add the {{fax}}
message. This option requires the command to the FCL. The following example shows an FCL
RightFax SecureDocs Module. document that is addressed to 503-555-4489.
{{type email}} Sends the document as the body of an {{begin}}
e-mail message. This option requires the {{fax 503-555-4489}}
RightFax InternetLink Module. Body of the document to be sent.
{{end}}

65
RightFax 9.4 Integration Module Guide 66

You can insert the {{altfax}} command as a backup fax number if the fax number, and the Integration Module makes links between
primary number fails: documents to keep disk usage at a minimum. An {{end}} command
{{begin}} completes the loop for the final fax number.
{{fax 503-555-4489}} The following example shows a single-page document to be
{{altfax 503-555-5240}} broadcast to three recipients.
Body of the document to be sent. {{begin}} Dear customer,
{{end}} Our office will be closed on Friday, March 25 for inventory. We will
If you have purchased the RightFax InternetLink Module, you have be open again as usual on Monday.
more backup options. With the InternetLink Module you can specify Thanks,
a recipient fax number and e-mail address. If the fax number fails, International Finance Corporation
the Integration Module can e-mail the document and notify you of {{fax 555-3374}}{{company Salem Publishing Co.}}{{contact Juan
the alternate sending method. For more information on this option Garcia}} {{fax 206-555-6530}}{{company Oswego
and others provided by the InternetLink Module, see the RightFax Boats}}{{contact Gabriella Navarro}} {{fax
InternetLink Module Guide. 503-555-0905}}{{company West Coast Shippers}}{{contact Andy
For detailed information on the {{fax}} and {{altfax}} commands, Wells}}
including syntax and examples, see Appendix B, “FCL {{end}}
Commands”.

Sending One Document to Many Recipients With


Sending One Document to Many Recipients an Include File
Sending the same document to more than one recipient is called A list of fax numbers can be associated with a document by using
broadcasting. Broadcasting with FCL is accomplished by including an include file. An include file can contain a list of FCL commands
additional {{fax}} commands just before the end of the FCL or data, and it is linked to a document with the {{include}}
document. Captaris recommends that each {{fax}} command be command.
followed by a {{company}} command for tracking purposes. Each
broadcast document is issued its own document number and is
treated as a separate entity for tracking and retry purposes.

Note Some restrictions exist for using cover sheets when you send
documents to multiple recipients. For more information, see “Using cover
sheets with broadcasts” on page 78.

When the Integration Module encounters a second fax number in a


document, it determines that the document is complete, writes the
current page to the disk and schedules it to be sent to the
preceding fax number. This process continues for each subsequent
“Figure 11.1: Broadcast Documents with an {{Include}} In “Figure 11.1: Broadcast Documents with an {{Include}}
Command” shows the same broadcast document with an Command”, the data from WestCoastCustomers.inc would replace
{{include}} command that inserts multiple addresses, instead of the the {{include}} command in the original data. Thus, you need to
addresses themselves. insert only one command to address a document to multiple
recipients. By having multiple broadcast include files stored on the
Figure 11.1 Broadcast Documents with an {{Include}} Command Integration Module, you can easily broadcast a document to
{{begin}} whatever group of numbers you choose.
Dear customer,
Our office will be closed on
Friday, March 25 for inventory. We
Note Include files can do much more than store broadcast data. For
will be open again as usual on information on different uses, how to create them, and where to save
Monday. them, see Chapter 13, “Including the Same Files and Commands in Many
Thanks, Documents”. The following section deals with broadcast lists, just one
International Finance Corporation This is the file named
{{include WestCoastCustomers.inc}} WestCoastCustomers.inc
form of include files.
{{end}}
{{fax 555-3374}}
{{company Salem Publishing Co.}}
{{contact Juan Garcia}}
{{fax 206-555-6530}}
Creating Lists of Recipients for a Broadcast
{{company Oswego Boats}}
{{contact Gabriella Navarro}} Use the following guidelines to create a list of recipients for a
{{fax 503-555-0905}} broadcast transmission.
{{company West Coast Shippers}}
{{contact Andy Wells}} Place the {{fax}} command first in each command on each line in an
FCL document.
Correct {{fax 503-555-3829}}{{company Acura of Salem}}
Incorrect {{company Acura of Salem}}{{fax 503-555-3829}}
{{begin}}
Dear customer, Do not insert any characters, such as spaces, between FCL
Our office will be closed on
Friday, March 25 for inventory. We commands that are listed in a line.
will be open again as usual on
Monday.
Correct {{fax 503-555-3829}}{{company Acura of Salem}}
Thanks,
International Finance Corporation
Incorrect {{fax 503-555-3829}} {{company Acura of Salem}}
{{fax 555-3374}}
{{company Salem Publishing Co.}}
{{contact Juan Garcia}}
{{fax 206-555-6530}}
{{company Oswego Boats}}
{{contact Gabriella Navarro}}
{{fax 503-555-0905}}
{{company West Coast Shippers}}
{{contact Andy Wells}}
{{end}}

Chapter 11 Specifying the Destination of the Document 67


RightFax 9.4 Integration Module Guide 68

To create broadcast lists from a mainframe, server, or The Integration Module creates a file (specified with the filename
other host application variable) in the RightFax\Production\Include folder. The content of
this file is the data between {{list filename}} and {{end}} FCL
1. Include the {{list filename}} command in any document that codes.
contains a potential broadcast list.
Example If you were to send the following document to the
For examples and usage information on this command, see Integration Module, it would create a file called
Appendix B, “FCL Commands”. Dealers.inc in RightFax\Production\Include.
Note The {{file}} command has capabilities that are similar to the {{begin}}{{list dealers.inc}}
{{list}} command, although {{list}} is preferable for creating broadcast {{fax 503-555-0912}}{{company ABSOLUTE
lists because it removes all white space, blank lines, etc. from the WHOLESALE}}
input file, while {{file}} does not. To determine which command will {{fax 503-555-7609}}{{company ACURA OF SALEM}}
work best for your needs, you should compare the two. See Appendix {{fax 555-8985}}{{company ACURA OF PORTLAND}}
B, “FCL Commands”. {{fax 541-555-8160}}{{company ACURA OF
EUGENE}}
2. Send the document from the host application to the Integration
{{fax 503-555-4911}}{{company HUTCHISON CO.}}
Module.
{{end}}
Dealers.inc would contain the following information:
{{fax 503-555-0912}}{{company ABSOLUTE
WHOLESALE}}
{{fax 503-555-7609}}{{company ACURA OF SALEM}}
{{fax 555-8985}}{{company ACURA OF PORTLAND}}
{{fax 541-555-8160}}{{company ACURA OF
EUGENE}}
{{fax 503-555-4911}}{{company HUTCHISON CO.}}

To change broadcast lists created from a mainframe,


server, or other host

1. Change the original document, as necessary.


2. Send the document, including the {{list filename}} command,
from the host application to the Integration Module.
The existing file will be over-written with the new information,
unless you change the name of the specified file.
To creating broadcast lists from a terminal, client, or other Table 11b Cover Sheet Keyword Equivalents (Continued)
desktop computer
.pcl or .doc
1. Using a text editor, word processor, spreadsheet, or database .cov keyword keyword Notes
program that can produce plain text, type the required FCL covertext notetext 21 lines, each with each
commands in a text file. containing 69 characters
maximum.
2. Save the file with an .inc extension to the
RightFax\Production\Include folder on the Integration Module. csi from_phone 31 characters maximum.
fax to_faxnum 31 characters maximum.
Warning If you do not change the extension of the file to .inc when
Can contain alphabetical
you store it in the \Include folder, errors will occur.
characters for macros.
onerror delete faxflag_autodeleteall Deletes successful
Using Cover Sheets in a Broadcast documents.
onsuccess faxflag_autodelete
Cover sheets in the Integration Module are known as “production”
delete
cover sheets. They are saved as .cov files. Production cover sheets
cannot be used when broadcasting. owner from_name 59 characters maximum.
To broadcast a fax with a cover sheet, use a .pcl or .doc cover priority ucPriority Can be low (0), medium
sheet and keywords. For information and instructions on .pcl and or normal (1), or high (2)
.doc cover sheets, see the RightFax Administrator’s Guide. priority. The default is low.

If you are an upgrade customer who is familiar only with FCL quality finemode
commands, a list of equivalents is provided in the following table. voice to_contactnum 31 characters maximum.
winsecid owner_id The RightFax user ID of
Table 11b Cover Sheet Keyword Equivalents
the originator of the fax.
.pcl or .doc
.cov keyword keyword Notes The cover sheet is not cleared between broadcast fax numbers, so
billing billinfo1 15 characters maximum. one {{cover}} command carries forward from document to
document. You can turn on or off individual cover sheets inside the
billing2 billinfo2 15 characters maximum.
broadcast by using the {{cover none}} command.
comment to_citystate 59 characters maximum.
company to_company 59 characters maximum.
contact to_name 59 characters maximum.

Chapter 11 Specifying the Destination of the Document 69


RightFax 9.4 Integration Module Guide 70

Sending Documents to a Printer or File with FCL You can also specify a full path to another folder:
{{begin}}
Sending documents to a printer {{list c:\Marketing Files\Reports\MyDocument}}
Body of the document to be sent.
To send a document to a printer, add the {{type print}} command to
{{end}}
the FCL. The document will print at the default printer specified in
the Integration Module Configuration program. You can change the For more information on the {{file}} and {{list}} commands,
printer with the {{lp}} command. The following example shows an including syntax and examples see Appendix B, “FCL Commands”.
FCL document that will be printed.
{{begin}}
{{type print}}
Body of the document to be sent.
{{end}}

Sending documents to a file


The Integration Module can print documents to two different kinds
of files: plain text (ASCII) files or .tif files. The {{type file}} command
creates a .tif image of the host document and stores it in a folder
that you specify. In the following example, the file MyDocument.tif
would be saved in the RightFax\Production folder.
{{begin}}
{{type file RightFax\Production\MyDocument}}
Body of the document to be sent.
{{end}}
The {{file}} and {{list}} commands creates a plain text (ASCII) file
with an .inc extension in the RightFax\Production\Include folder.
{{List}} strips all leading white space and blank lines, but {{file}}
does not. In the following example, the file MyDocument.inc would
be saved in the RightFax\Production\Include folder.
{{begin}}
{{file MyDocument}}
Body of the document to be sent.
{{end}}
Chapter 12
Creating and Linking Background Forms

This chapter explains background forms—the graphic files that are The following figure shows a simple example of how the Integration
merged with a document from the host application to create a Module merges the data from the host application with a
finished document that looks like it was printed on a preprinted background form.
form. Linking a background form to a host document is different
from inserting or attaching a graphic file. Figure 12.1 Host data Merged with a Background Form
{{begin}} Smith Hardware Co. Smith Hardware Co.
{{fax 503-555-1234}} Purchase Order Purchase Order
{{form purchorder.tif}}

Understanding Background Forms


Item SKU Qty Cost Item SKU Qty Cost
Typically, background forms are used to replace documents that Rail
Clip
16
24
1
10
294.99
190.08
+ = Rail
Clip
16
24
1
10
294.99
190.08
would normally be printed on preprinted forms and then mailed or Pin 09 30 104.32 Pin 09 30 104.32

manually faxed. The Integration Module merges an electronic {{end}}

background form with the host data and then sends the finished
document per your specifications.
Host data and FCL Background form Host data and background
(purchorder.tif) form merged into final
document

Creating Background Forms


You can create background forms by scanning an existing paper
form, or you can use a drawing application to create a form.
All background forms must be in class F, group 3 or 4 TIF format.

71
RightFax 9.4 Integration Module Guide 72

Creating forms with a drawing program For detailed information on the {{form}} command, including syntax
You can use any application on any platform to create a and examples see Appendix B, “FCL Commands”.
background form. The file must be class F, group 3 or 4 TIF, which
is the standard format for faxes.

Scanning paper forms


If you have a paper form that you want to duplicate, scan the form
at 200 dpi.

Storing background forms


Save background forms with any descriptive name as a class F,
group 3 or 4 TIF file in the RightFax\Production\Forms folder.

Linking Background Forms


Use the {{form}} FCL command to link a background form to a
document.
Example
{{begin}}
{{fax 503-555-9023}}
{{form invoice.tif}}
Host data.
{{end}}
This example would merge the host data with a background form
called invoice.tif, which resides in the RightFax\Production\Forms
folder.
In this example, the {{form invoice.tif}} command could also be
{{form invoice}} (without the .tif extension). The extension .tif is the
default.
Chapter 13
Including the Same Files and Commands in Many Documents

To include the same files and commands in many documents, you The following example shows how a standard include file is used to
can create an include file. An include file contains information that create and send a document.
will be duplicated in multiple documents. For example, an include
file can contain a list of fax numbers, so that the same documents Figure 13.1 Host Data Merged With an Include File
can be addressed and sent to multiple recipients.
{{include OfficeClosed.inc}} {{font “Times New Roman” 12}}
{{place Logo.tif 0.5 0.5}} Interiors
Dear Customer,
This note is to let you know that Dear Customer,
our offices will be closed this This note is to let you know

Understanding Include Files


coming Monday.
Thanks,
Your friends at Oswego Interiors
+ = that our offices will be
closed this coming Monday.
Thanks,
You have two options for creating and using include files: {{end}} Your friends at Oswego
Interiors
Global include files are provided in the
RightFax\Production\Include folder when you install the
Integration Module software. The files are empty. By default,
Host data and FCL Include file Finished document
global include files are linked to all documents but have no (OfficeClosed.inc)
function unless you put information into them. Typically, global
include files are used to establish default attributes for all In this example, the include file specifies a top margin ({{tm}}), a left
documents. margin ({{lm}}), and a font. It also specifies that the file Logo.tif be
Standard include files. You can create standard include files and placed at specific coordinates.
link them to documents with the {{include}} FCL command.
Typically, standard include files are used to change an attribute in Understanding the content of include files
a large batch of documents, for example, to override a default
You can place FCL commands in include files to reduce the
attribute for a group of documents.
programming necessary to place commands in documents. You
Example You can use a global include file to set the default font can use any FCL command.
for all documents to Arial 11-point. To send a batch of
documents using a different font, use a standard include
file to change the font to Times 12-point.

73
RightFax 9.4 Integration Module Guide 74

Also, you can place sentences, paragraphs, entire letters, and even Global.beg and global.end are used for general FCL commands
multi-page documents in include files. Because include files are that are used only once per FCL document. Usually, these are FCL
plain text (ASCII) documents, you must format the text with FCL commands that are carried over from one document to the next
commands. Any text will appear in the body of the finished when broadcasting, such as {{winsecid}}. {{Winsecid}} is not reset
document at the point where the {{include}} command or global automatically in broadcast documents, so placing it in Global.beg
include file appears. causes it to become a default, setting a RightFax mailbox to be
used by all production documents.
Understanding the placement of global include files Global.def and Global.inc are more commonly used than
If the global include files contain content, the content will be Global.beg and Global.end.
inserted at default locations in all documents, as described in the Because of its placement in the FCL (after every fax number),
following table. Global.def can be overridden if there are conflicting FCL
commands in the data sent from the host.
Table 13a Placement of Data from Global Include Files
Example If you insert {{priority low}} in Global.def, all documents
File name Default location in the FCL documents will be sent at that priority except when a different
Global.beg Beginning of document. {{priority}} command is included in the FCL coming from
the host for that particular recipient.
Global.end End of document.
Global.def Immediately after every fax number. Because of its placement in the FCL (before every fax number and
at the end, before Global.end), Global.inc overrides any conflicting
Global.inc Immediately before every fax number and at the FCL.
end (before global.end).
Example If you insert {{priority low}} in Global.inc, all documents
will use that priority, ignoring any conflicting {{priority}}
The following table illustrates the default placement of information commands that are included in the FCL coming from the
from these global include files. host.
Table 13b Example FCL Document with Global Include Files
FCL document Placement of data Creating Include Files
{{BEGIN}} {{BEGIN}}Global.beg
{{Company Test}} {{Company Test}} Creating standard include files
{{FAX 968-9601}} {{FAX 968-9601}}Global.def
{{Contact Jay Doe}} {{Contact Jay Doe}} You can use any word processor that will produce plain text
{{FAX 968-9602}} Global.inc{{FAX 968-9602}}Global.def (ASCII), such as Microsoft Notepad, to create an include file. Insert
{{Contact Sid Brea}} {{Contact Sid Brea}} any FCL or other text that you want to appear in multiple
Body of the Body of the document to be sent. documents. Save the include file with an .inc extension in the
document to be sent. Global.inc Global.end{{end}} RightFax\Production\Include folder.
{{END}}
Inserting content into global include files {{begin}}
To open any of the global include files in the {{fax 503-555-9023}}
RightFax\Production\Include folder, double-click the file. In the {{include OfficeClosed.inc}}
Open With dialog box, select Notepad. Host data.
{{end}}
Insert any FCL or other text that you want to appear in multiple
documents. This example would replace the {{include}} command with the
content of the file called OfficeClosed.inc, which resides in the
Warning Putting incorrect FCL into a global include file can cause RightFax\Production\Include folder.
system-wide errors. For example, if you put {{include file.inc}} in an
include file called File.inc, then the file will attempt to insert itself in the Note In this example, the {{include OfficeClosed.inc}} command could
FCL document. The resulting infinite loop will cause RightFax to stop also be {{include OfficeClosed}} (without the .inc extension). The .inc
responding. extension is assumed when an include file is identified as part of an
{{include}} command. Thus, you can insert it or omit it. Accordingly, if you
Every document sent through the Integration Module will use the create and attempt to link an include file that is not saved with an .inc
information that you add to a global include file. You must extension, then errors will occur.
understand the function of any FCL you insert in these files,
including the different effects of a given command depending on For detailed information on the {{include}} command, including
where it appears in a document. (These effects will dictate into syntax and examples, see Chapter 9 “Setting Defaults for FCL
which global include file you should insert certain commands.) Documents”.

Storing include files Linking global include files


Save include files with any descriptive name with an .inc extension The global include files are linked by default to every document that
in the RightFax\Production\Include folder. the Integration Module processes. You do not need to link the
global include files to documents.
Because every document is linked to all the global include files, you
Linking Include Files must use caution when inserting commands and other text into a
global include file. Inserting incorrect FCL into a global include file
can cause system-wide errors.
Linking standard include files with the {{include}}
command
Use the {{include}} command to link an include file (one that you
have created and saved with an .inc extension in the
RightFax\Production\Include folder) with a document.

Chapter 13 Including the Same Files and Commands in Many Documents 75


RightFax 9.4 Integration Module Guide 76
Chapter 14
Creating and Attaching Cover Sheets

A cover sheet is the first page of a faxed document. It usually The RightFax system supports two kinds of cover sheets:
includes information about the fax, such as the recipient’s name Production cover sheets can contain FCL codes, text, and
and fax number, the sender’s name and telephone number, and the keywords. These cover sheets are attached to documents by
total number of pages in the fax. RightFax cover sheets are inserting the {{cover}} command in the documents. The files are
templates with placeholders for the information. The placeholders named with the extension .cov, and they are stored in the folder
are filled with data and attached to a document when it is RightFax\Production\Covers. The Integration Module generates
processed for faxing. these cover sheets.
Attaching a cover sheet to a document is different from attaching Enterprise cover sheets can contain embedded codes, text, and
and embedding files. For more information on attaching other kinds keywords. These cover sheets are attached to documents by a
of files, see Chapter 19, “Attaching and Embedding Files, user when the fax is created or by default settings for the user or
Signatures, and Graphics”. the enterprise. The file format can be print control language (.pcl)
or Microsoft Word (.doc), and they are stored in the folder
RightFax\FCS. The RightFax server generates these cover
sheets. You can use .pcl and .doc cover sheets with FCL
documents. For details on .pcl and .doc cover sheets, see the
RightFax Administrator’s Guide.
This chapter describes production cover sheets.

77
RightFax 9.4 Integration Module Guide 78

Understanding Production Cover Sheets Creating Cover Sheet Templates


The following example illustrates how the Integration Module
generates a simple cover sheet and then attaches it as the first Using default cover sheet templates
page of a fax. The Integration Module includes a cover sheet called Auto.cov.
This file is the default cover sheet, unless you specify a different
Figure 14.1 Sample Cover Sheet one with the Integration Module Configuration program. For
information on establishing a default cover sheet, “Setting General
Defaults” on page 45.
Auto.cov contains generic information such as the company,
contact, owner, fax number, and total pages in the fax. It is located
in the folder RightFax\Production\Covers.
If the {{cover}} command is included in the document data, but a
cover sheet name is not specified, then Auto.cov will be used.

Creating a basic cover sheet template


1. Open Microsoft Notepad or another word processing
application that will produce plain text.
In this example, the command {{cover GeneralUse.cov}} retrieves 2. Type text, FCL, or keywords in the template.
the template file GeneralUse.cov from the To extract blocks of text from the document data to the cover
RightFax\Production\Covers folder. GeneralUse.cov contains text sheet, “Adding blocks of text to a cover sheet from the
and keywords, which the Integration Module populates with document data” on page 79.
information from the document data from the host application.
To use FCL codes, “FCL for cover sheets” on page 81.
Notice that “To ^company” in GeneralUse.cov becomes “To Tigard
To use keywords, “Keywords for cover sheets”on page 79.
Outfitters” in the finished cover sheet. That is because the
^company keyword maps to the content of the {{company}} FCL 3. Type {{end}} in the last line of the cover sheet.
command. 4. Save the file with the extension .cov in the folder
RightFax\Production\Covers.
Using cover sheets with broadcasts
Production cover sheets cannot be used when broadcasting. For
more information, “Using Cover Sheets in a Broadcast” on
page 69.
Adding blocks of text to a cover sheet from the document 1. On the RightFax server, open the Windows registry and browse
data to HKLM\Software\RightFax\Production.
In addition to typing text in a cover sheet template, you can use text 2. Create a new DWORD value called
from the document data to populate a cover sheet. This is useful CoverSheetWordWrapMax.
when a block of text on a cover sheet must be unique in each 3. Edit this value to contain a decimal number that represents the
document. maximum number of characters per line. When finished, click
Use the {{covertext}} and {{endcovertext}} commands in the OK.
document data and the ^covertext keyword in the cover sheet 4. Close the Windows registry.
template. The following figure shows the relationship between the
{{covertext}} command and the ^covertext keyword.
Keywords for cover sheets
Note Coversheets provide a maximum of 75 characters, per line. The following table lists keywords you can use in production cover
sheets. Each keyword is populated with the content from the FCL
Figure 14.2 How the Integration Module Uses the {{Covertext}} Command code that is included with the document data. In the cover sheet
template, each keyword must begin with the carat symbol (^).
For information on the FCL commands, see Appendix B, “FCL
Commands”.

Table 14a Cover Sheet Keywords and FCL Equivalents


Keyword FCL equivalent Notes
^altfax {{altfax}}
^billing {{billing}}
^billing2 {{billing2}}
^comment {{comment}}

For detailed information on the {{covertext}} and {{endcovertext}} ^company {{company}}


commands see Appendix B, “FCL Commands”. ^contact {{contact}}
For more information on the ^covertext keyword, “Keywords for
cover sheets” on page 79.

Word-wrapping cover sheet note text


By default, text entered in the notes field of a cover sheet will wrap
at 70 characters. Use the steps below to customize this setting.

Chapter 14 Creating and Attaching Cover Sheets 79


RightFax 9.4 Integration Module Guide 80

Table 14a Cover Sheet Keywords and FCL Equivalents (Continued) Table 14a Cover Sheet Keywords and FCL Equivalents (Continued)
Keyword FCL equivalent Notes Keyword FCL equivalent Notes
^covertext n {{covertext}} Text specified by the {{covertext}} ^empid {{empid}}
{{endcovertext}} and {{endcovertext}} commands
^fax {{fax}}
in the document data.
Multiple blocks of text can be ^file {{type file}} The file name for {{type file}}
used on a single cover sheet. documents.
Specify the index number of the ^from {{email}} The {{from}} command can be
text block. Valid index numbers {{from}} used if you have licensed the
are 0-9, and the index number is InternetLink Module.
not optional. If only a single text
^localfax N/A Replaced with the local fax
block is to be used on a cover
number set in the Integration
sheet, use 0 as the index number.
Module Configuration program.
^csi {{csi}} If no caller subscriber information
^oecopies {{onerror print}} When {{onerror}} action is set to
(csi) is specified, the ^csi
print, ^oecopies is replaced with
variable will use the default fax
the number of copies to be
number set in the Integration
printed.
Module Configuration program.
Changes are global; you can ^onerror {{onerror}} Replaced with the {{onerror}}
change CSI on a per-document action specified for this
basis, but not on the banner line. document, or if none is specified,
the default set in the Integration
^date {{date}} If no {{date}} is specified, the
Module Configuration program.
current date will be used.
^onsuccess {{onsuccess}} The {{onsuccess}} action
^dept {{dept}}
specified for this document. If
^docnum N/A The document number assigned none is specified, the default set
by the RightFax Integration in the Integration Module
Module. Configuration program will be
^email {{email}} This command can be used if you used.
have licensed the InternetLink ^owner {{owner}}
Module. The recipient’s e-mail
^pages N/A The number of attachments in the
address.
fax.
^emailcc {{email}} This command can be used if you The number of pages in an
have licensed the InternetLink attached file are not counted.
Module. The e-mail address for
an additional recipient. ^phone {{fax}}
Table 14a Cover Sheet Keywords and FCL Equivalents (Continued) For more detailed information on each of the following commands,
Keyword FCL equivalent Notes including syntax and examples see Appendix B, “FCL Commands”.

^quality {{quality}} Table 14b Cover Sheet FCL Commands


^rti {{rti}} If no {{rti}} string is specified, the Command Description
^rti variable will use the default
set in the Integration Module {{comment}} Stores any user-defined message specific to the
Configuration program. document.
This command is sometimes also used to populate
^subject {{comment}} The {{subject}} command can be
variables in notifications.
{{subject}} used if you have licensed the
InternetLink Module. {{company}} Stores a company name for the current document.
^termid {{termid}} This command is sometimes also used to populate
variables in notifications.
^time {{time}} If no {{time}} is specified, the
current time will be used. {{contact}} Stores the contact name for the current document.
This command is sometimes also used to populate
^tranid {{tranid}}
variables in notifications.
^type {{type}}
{{CSI}} Associates called-subscriber information (CSI) with
^unique_id {{unique_id}} Maps to the unique_id field in the the document. This is usually the general fax
RightFax database. number for the enterprise.
^user1 {{user1}} You can set a default CSI in the Integration Module
^user2 {{user2}} Configuration program. For more information, see
Chapter 9, “Setting Defaults for FCL Documents”.
^user3 {{user3}}
{{email}} Stores the return sender’s return e-mail address of
^voice {{voice}} the document. This command is sometimes also
^winsecid {{winsecid}} The RightFax user ID of the used to populate variables in notifications.
originator of the fax. {{empid}} Specifies the employee ID of the fax owner.
This command is most often used to populated
FCL for cover sheets variables in notifications, but is sometimes also
Several informational FCL commands are designed specifically for used with cover sheets.
cover sheets. {{owner}} Specifies the document owner’s name.
The following table lists the commands and gives a brief This command is sometimes also used to populate
explanation. For a comparison of the commands listed here and the variables in notifications.
keywords that you can use in cover sheets, see “Table 14a: Cover
Sheet Keywords and FCL Equivalents”.

Chapter 14 Creating and Attaching Cover Sheets 81


RightFax 9.4 Integration Module Guide 82

Table 14b Cover Sheet FCL Commands (Continued) Table 14b Cover Sheet FCL Commands (Continued)
Command Description Command Description
{{replyto}} Specifies a recipient for a notification. You can {{user1}}, Include one or more of these commands in the host
request that an HTTP post be sent back to the host {{user2}}, document so that the originator (person, group,
as a notification when you use the RightFax XML {{user3}} etc.) of the document can be identified and
Interface. ReplyTo is the field in the submit post that correctly sent the notification.
the XML Interface populates to determine where to
{{userID}} Identifies the creator of this document.
send the notification.
This command is most often used to populated
{{RTI}} Specifies the remote terminal identification from variables in notifications, but is sometimes also
which the document originated. This is typically the used with cover sheets.
sending company’s name.
{{voice}} Sets the voice number to be associated with the
You can set a default name for the sending
document.
company in the Integration Module Configuration
program. For more information, see Chapter 9, This command is most often used to populated
“Setting Defaults for FCL Documents”. variables in notifications, but is sometimes also
used with cover sheets.
{{termID}} Specifies the terminal identification from which the
document originated.
This command is most often used to populated
variables in notifications, but is sometimes also
used with cover sheets.
Attaching a Cover Sheet to a Document with FCL
{{tranID}} Sets the identification of the transaction that
produced the document. Use the {{cover}} command to attach a production cover sheet to a
document.
This command is most often used to populated
variables in notifications, but is sometimes also {{begin}}
used with cover sheets. {{fax 503-555-9023}}
{{uniqueID}} Sets an identification number for each destination {{cover FaxCoverPage.cov}}
(fax number) within the document. Host data.
{{end}}
This command is used most often for tracking. The
Integration Module will generate a UniqueID unless
you specify one in your FCL. Then, you can track
the document in FaxUtil based on the UniqueID.
Secondarily, this command is sometimes used in
cover sheets and with notifications.
In this example, the Integration Module would retrieve the file called For detailed information on the {{cover}} command, see Appendix
FaxCoverPage.cov from the RightFax\Production\Covers folder B, “FCL Commands”.
and attach it as the first page of the document.

Note In this example, the {{cover FaxCoverPage.cov}} command could


also be {{cover FaxCoverPage}} (without the .cov extension). The .cov
RightFax Cover Sheet Logic
extension is assumed when a cover sheet is identified as part of a Because you can set a default cover sheet in the Integration
{{cover}} command. Thus, you can insert it or omit it. Accordingly, if you Module Configuration program, set a default cover sheet for a
create and attempt to attach a production cover sheet that is not saved RightFax user, and specify a cover sheet with the {{cover}} FCL
with a .cov extension, then errors will occur. command, the following table will help clarify which cover sheet will
be used in different scenarios.

Table 14c Cover Sheet Logic


With these configuration settings This cover sheet will be used
RightFax user default Integration Module The specified file The Integ. No cover
cover sheet default cover sheet FCL in document name The user default Module default sheet
None set “none” “cover” (.pcl, .doc, or .cov) X
None set “none” “none” X
None set “none” “rfdefault” X
None set “none” No command X
None set Cover.cov “cover” (.pcl, .doc, or .cov) X
None set Cover.cov “none” X
None set Cover.cov “rfdefault” X
None set Cover.cov No command X
Cover.pcl “none” “cover” (.pcl, .doc, or .cov) X
Cover.pcl “none” “none” X
Cover.pcl “none” “rfdefault” X
Cover.pcl “none” No command X
Cover.pcl Cover.cov “cover” (.pcl, .doc, or .cov) X
Cover.pcl Cover.cov “none” X
Cover.pcl Cover.cov “rfdefault” X

Chapter 14 Creating and Attaching Cover Sheets 83


RightFax 9.4 Integration Module Guide 84

Table 14c Cover Sheet Logic (Continued)


With these configuration settings This cover sheet will be used
RightFax user default Integration Module The specified file The Integ. No cover
cover sheet default cover sheet FCL in document name The user default Module default sheet
Cover.pcl Cover.cov No command X
Cover.pcl “rfdefault” “cover” (.pcl, .doc, or .cov) X
Cover.pcl “rfdefault” “none” X
Cover.pcl “rfdefault” “rfdefault” X
Cover.pcl “rfdefault” No command X

Example Cover Sheet and Document Host document data that contains FCL
{{begin}}{{cover faxcover.cov}}{{owner Adam Guenther}}
Cover sheet FCL and text {{comment Purchase Order}}{{covertext 0}}
Let me know if you have questions!{{endcovertext}}
{{place logo.tif 5 1}}{{lm 0.5}}{{moveto .5 1.5}}Palatine Hill
{{moveto 0 .5}}
Association
Purchase Order
0615 S.W. Palatine Hill Road
{{linewidth 4}}{{lineto 8.5,y}}{{lm 1.0}}
Portland, Oregon 97219
{{lm 1.0}}{{moveto 1 3.5}}FAX TRANSMISSION ITEM PRICE QUANTITY TOTAL
11023 $21.00 2 $42.00
Date: ^date
======
Page: 1 of ^pages
$42.00
To: ^contact {{company Troutdale Imports}}{{contact Jack Dundee}}
Company: ^company {{fax 555-465-0987}}
Date: ^date {{end}}
From: ^owner
Company: Palatine Hill Association
Fax: ^csi
Subject: ^comment
Notes:
^covertext 0
{{end}}
Finished cover sheet and document

Figure 14.3 The Cover Sheet is Attached as the First Page of the Document
Purchase Order

ITEM PRICE QUANTITY TOTAL


11023 $21.00 2 $42.00
======
$42.00

Palatine Hill

Palatine Hill Association


0615 S.W. Palatine Hill Road
Portland, Oregon 97219

FAX TRANSMISSION
Date: 08/31/01
Page: 1 of 2

To: Jack Dundee


Company: Troutdale Imports
Date: 08/31/01

From: Adam Guenther


Company: Palatine Hill Association
Fax: 503.968.9601

Subject: Purchase Order

Notes:

Let me know if you have questions!

Chapter 14 Creating and Attaching Cover Sheets 85


RightFax 9.4 Integration Module Guide 86
Chapter 15
Creating Lines, Boxes, and Other Shapes

A series of FCL commands can be used to create graphical Table 15a FCL Commands that Create Shapes (Continued)
shapes to appear in documents. Creating and configuring these Command Description
shapes can supplement or replace background forms or graphics.
{{FillBox}} Same as the {{box}} command. The box can be filled
For information on background forms, see Chapter 12, “Creating with white or black. This is frequently used to hide
and Linking Background Forms”. For information on graphics, see information that cannot be removed easily from the
Chapter 19, “Attaching and Embedding Files, Signatures, and data stream coming from host application. You
Graphics”. cannot place text inside the box.
{{Line}} Draws a line whose starting and ending points are
specified by coordinates that you supply.
Understanding the Commands That Create
{{LineTo}} Draws a line whose starting point is the current
Shapes cursor location and whose ending point is specified
The following table lists the FCL commands for drawing shapes by coordinates that you supply.
and provides a brief description. For detailed information on each {{LineWidth}} Lets you specify the width, in points, of the lines that
command, including syntax and examples, see Appendix B, “FCL you draw with other commands.
Commands”.
{{RBox}} Same as {{box}}, but the coordinates for size and
location are established relative to the current cursor
Table 15a FCL Commands that Create Shapes
location. In contrast, the coordinates for the {{box}}
Command Description command are measured from the upper-left corner
of the document.
{{Box}} Draws a box whose size and location at specified
coordinates. You can also place text inside the box. {{RFillBox}} Same as {{fillbox}}, but the coordinates for size and
location are established relative to the current cursor
{{EndPoly}} Ends a polygon that is started with the {{startpoly}}
location. In contrast, the coordinates for {{fillbox}}
command.
are measured from the upper-left corner of the
document.

87
RightFax 9.4 Integration Module Guide 88

Table 15a FCL Commands that Create Shapes (Continued) Box


Command Description The box command creates a box at specified coordinates and
places text in it. You supply coordinates for the upper-left and
{{RLine}} Same as {{line}}, but the coordinates that you supply
to determine length and location are established lower-right corners. In the following example, (2, 2) is the
relative to the current cursor location. In contrast, coordinate for the upper-left corner of the box, and (4, 4) is the
the coordinates you give with {{line}} are measured coordinate for the lower-right corner of the box.
from the upper-left corner of the document.
Figure 15.1 Box Command
{{RLineTo}} Same as {{lineto}}, but the coordinates that you
supply to determine length and location are
established relative to the current cursor location. In
contrast, the coordinates you give with {{line}} are
measured from the upper-left corner of the
document.
{{RStartPoly}} Same as {{startpoly}}, but the coordinates that you {{begin}}
{{fax 503-555-1234}}
supply to determine the starting point are
This is a test document.
established relative to the current cursor location. In {{box (2, 2) (4, 4) “Example”}}
contrast, the coordinates you give with {{startpoly}} {{end}}
are measured from the upper-left corner of the
document.
{{StartPoly}} Starts a polygon at a point that you specify by
supplying coordinates. The polygon is completed
with a series of {{lineto}} commands and finished
with the {{endpoly}} command.

Using the Most Common Commands That Create


Shapes
This section lists the most common commands and provides
examples for creating shapes, such as a line or a box, with FCL.
Example FCL code and finished documents are provided. The
sample documents have horizontal and vertical numbers at the top
and left margins to indicate the grid for the x- and y-coordinates for
the placement of the shapes. The numbers will not appear in the
finished document.
Fillbox Line
The fillbox command is the same as {{box}}, except that you can fill The line command draws a line between specified coordinates. The
it with black or white. You might use a white-filled box to cover part following example shows three {{line}} commands. In the first, (1, 1)
of a document that should not appear in the finished document. are the x- and y-coordinates for the beginning of the line, and (5, 1)
are the coordinates for the end of the line.
Figure 15.2 Fillbox Command
Figure 15.3 Line Command

{{begin}}
{{begin}}
{{fax 503-555-1234}}
{{fax 503-555-1234}}
This is a test document.
This is a test document.
{{fillbox (2, 2) (4, 4) black}}
{{line (1, 1) (5, 1)}}
{{end}}
{{line (3, 1) (3, 3)}}
{{line (2.5, 3) (8, 3)}}
{{end}}

Lineto
The lineto command draws a line between the current cursor
location and specified coordinates. The current cursor location is
often where the FCL command appears in a document but not
always. The two examples in this section show different options for
this command.

Chapter 15 Creating Lines, Boxes, and Other Shapes 89


RightFax 9.4 Integration Module Guide 90

The first example begins the line at the current location when the and n units below the starting point (where n is the current
Integration Module finds the {{lineto}} command. In this case, the position; thus, the position does not move down). Then, the
location is immediately after “This is a”. The line ends at the remainder of the text appears.
coordinates (4, 4). Then, the remainder of the text appears.
Figure 15.5 Lineto Command
Figure 15.4 Lineto Command

{{begin}}
{{fax 503-555-1234}}
This is a {{lineto (4, n)}}test
document.
{{end}}

The second example starts the line at the current location when the Rbox
Integration Module finds the {{lineto}} command. In this case, the The rbox command draws a box with a starting point that is relative
location is immediately after “This is a”. The line ends at the to the current cursor location. In contrast, the coordinates you
coordinates (4, y), which is 4 units to the right of the starting point, specify with the {{box}} command are measured from the upper-left
corner of the document.
The current cursor location is often where the FCL command
appears in a document but not always. The two examples in this
section show different options for this command.
The first example starts the box at (2, 2) from the current location This example shows grid numbers for the (1, 8) position. The
when the Integration Module finds the {{rbox}} command. In this arrows in the example document indicate that the box starts (2, 2)
case, the location is immediately after “This is a”. The box ends at from the current cursor location. These arrows would not appear in
the coordinates (3, 3) from the current location. Then, the the finished document.
remainder of the text appears.
Figure 15.7 Rbox Command
The following example does not show grid numbers, because the
position of the box is relative to a point that can move from
document to document. The arrows in the example document
indicate that the box starts (2, 2) from the current cursor location.
These arrows would not appear in the finished document.

Figure 15.6 Rbox Command


{{begin}}
{{fax 503-555-1234}}
This is a test document.
{{moveto (1,8)}}
{{rbox (2,2) (3,3)}}
{{end}}

{{begin}}
{{fax 503-555-1234}}
This is a {{rbox (2,2) (3,3)}}test
document.
{{end}}

The next example starts the box at (2, 2) from the current location
when the Integration Module finds the {{rbox}} command. In this
case, the location has been changed with the {{moveto}} command
to (1, 8). Thus, the box starts (2, 2) from (1, 8), or (3, 10). The box
ends at (3, 3) from (1, 8), or (4, 11).

Chapter 15 Creating Lines, Boxes, and Other Shapes 91


RightFax 9.4 Integration Module Guide 92

{{begin}}
{{fax 503-555-1234}}
This is a {{lineto (4, 4)}}test document.
{{end}}
Chapter 16
Setting Margins and Tabs

This chapter describes the FCL commands that you can use to set Commands in Many Documents”.) Any document that contains a
margins and tabs in documents. You can set default margins for all margin command will not use the defaults established in the global
documents, and then create single documents (or a group of include file.
documents) that override the defaults, as necessary. Example You use a global include file to establish one-inch
margins for all documents. Later, you need to send a
batch of 100 documents with two-inch margins. To
Setting Margins accomplish this, you include the relevant margin
You can set margins for individual documents or default margins commands in the FCL for those 100 documents. The
that apply to all documents. Three FCL commands control margins: 100 documents are processed with two-inch margins
and all others use the default margins.
{{bm}} bottom margin
{{lm}} left margin Setting margins for individual documents
{{tm}} top margin To set margins for a document, insert the relevant margin
To set margins for a single document, insert one or more of the commands into the FCL document.
margin commands into the FCL document. The following example shows an FCL document with left, top, and
To set default margins for all documents, insert one or more of the bottom margins that are all one unit.
margin commands into a global include file. (For information on {{begin}}
include files, see Chapter 13, “Including the Same Files and {{lm 1.0}}
{{tm 1.0}}
{{bm 1.0}}
{{fax 503-555-4489}}
Body of the document to be sent.
{{end}}

93
RightFax 9.4 Integration Module Guide 94

The number you insert in the margin command reflects current Starting a New Page With the Same Margins as
units, so 1.0 could mean one inch, one centimeter, one point, or
one pixel. This depends on the default units you have established.
the Previous Page
You establish defaults, including default units, with the Integration Use the {{ff}} (form feed) command to begin a new page with the
Module Configuration program or by inserting certain FCL same left and top margins as the previous page. Use this command
commands into a global include file. For more information on in individual documents only, not in a global include file to create a
establishing default values, see Chapter 9, “Setting Defaults for default setting.
FCL Documents”. To start a new page, insert the {{ff}} command into the FCL.
For detailed information on the margin commands, including syntax Example The following example shows that a new page will start
and examples see Appendix B, “FCL Commands”. between the words “document” and “to.” The new page
will retain the existing one-unit margins and not revert to
Setting default margins for all documents the default margins.
To set default margins for all documents, insert the relevant margin {{begin}}
commands into the global include file called Global.beg. {{lm 1.0}}
The following example shows default margin information. By {{tm 1.0}}
inserting these commands into the Global.beg include file, every {{bm 1.0}}
document that the Integration Module processes will have one-inch {{fax 503-555-4489}}
margins. Body of the document {{ff}} to be sent.
{{end}}
{{lm 1.0}}
{{tm 1.0}}
{{bm 1.0}} Setting Tabs with FCL
Default margins are zero until you establish a different default value.
You can set tabs for individual documents or as defaults that will
For information on using global include files, see Chapter 13, govern all documents. Three FCL commands control tabs:
“Including the Same Files and Commands in Many Documents”.
{{cleartabs}} removes all tab stops from a document.
For detailed information on the margin commands, including syntax
{{settab}} creates a tab stop that functions globally throughout a
and examples, see Appendix B, “FCL Commands”.
document.
{{tab}} creates a single tab stop; can be generic (based on a
preset tab stop) or can identify one of the tab stops created with
the {{settab}} command.
To set tabs for a single document requires that you insert one or
more of the three tab commands into the FCL.
To set default tabs for all documents, insert one or more instance of Setting tabs for individual documents
the {{settab}} command into a global include file. (For information To set tabs for a document, insert the relevant commands into the
on include files, see Chapter 13, “Including the Same Files and FCL.
Commands in Many Documents”.) Any document that contains a
tab command will not use the defaults established in the global Example The following example shows an FCL document with the
include file. {{settab}} command creating two different tab stops.
The first is labelled 0 and sets a tab stop 1.5 units from
Example You use a global include file to establish tab stops at one the left margin. The second is labelled 1 and sets a tab
inch, two inches, and three inches for all of the stop 2.5 units from the left margin. The two {{tab}}
documents. Later, you need to send a batch of 100 commands identify tab stops 0 and 1, and move the
documents with a half-inch tab stop. To accomplish this, enclosed text accordingly.
you include the relevant tab commands in the FCL for
those 100 documents. The 100 documents include a Figure 16.1 Settab Command
half-inch tab stop, and all others revert back to the
Body of the document to be
default.
sent, paragraph 1.
1.5 Body of the document to be
sent, paragraph 2.
2.5 Body of the document {{begin}}
to be sent, paragraph 3. {{fax 503-555-4489}}
{{settab 0 1.5 L}}
{{settab 1 2.5 L}}
Body of the document to be
sent, paragraph 1.
{{tab 0 Body of the document
to be sent, paragraph 2.}}
{{tab 1 Body of the document
to be sent, paragraph 3.}}
{{end}}

Chapter 16 Setting Margins and Tabs 95


RightFax 9.4 Integration Module Guide 96

Setting default tabs for all documents


1. Insert any {{settab}} command into the into the global include
file called Global.beg.
2. Insert corresponding {{tab}} commands into the FCL for any
host document.
The host document will use the tab stops described in the
corresponding {{settab}} command.
For information on using global include files, see Chapter 13,
“Including the Same Files and Commands in Many Documents”.
For detailed information on the tab commands, including syntax
and examples, see Appendix B, “FCL Commands”.
Chapter 17
Selecting and Configuring Fonts

This chapter explains the fonts you can use with the Integration Understanding TrueType Fonts
Module and explains how to manipulate fonts.
The Integration Module can use any TrueType font that is supported
All of the installed fonts are bitmap display format (BDF) fonts. by Microsoft Windows. TrueType font support provides flexible,
BDF fonts are not easily resized or manipulated. However, the customized manipulation of characters. This includes:
Integration Module supports for vector fonts (such as TrueType
fonts), which can be manipulated. Font size
Fonts are proportional or non-proportional. In a proportional font Leading (vertical space)
family, the characters vary in width. For example, the letter I is Pitch (horizontal space)
narrower than the letter W. In a non-proportional font family, all the Weight
letters are the same width. This is apparent when text must align in Strikethrough
vertical columns.
Italics
When it is necessary for letter alignment, use a non-proportional
Font properties are controlled by the {{font}} command. For more
font. The following installed fonts are non-proportional:
information on this command, including syntax and examples, see
Block Appendix B, “FCL Commands”.
Courier
Computer Modern Teletype
Lucida Typewriter Understanding Support for Other Fonts
The default font is Courier bold 12-point (courb12). The Integration Module also supports any fonts that are supported
by Microsoft Windows.
The Integration Module software renders Windows fonts differently
than the installed or TrueType fonts, and the clarity of these fonts
might suffer, depending on the font. Thus, Captaris recommends
that you use the installed fonts or TrueType fonts.

97
RightFax 9.4 Integration Module Guide 98

The Integration Module does not support double-byte fonts (such Selecting a default font for all documents
as fonts used for Chinese and Japanese). To change the default font for all documents, use the {{font}}
command in the global include file called Global.beg.
Example The following example shows an FCL command that will
Selecting Fonts establish a default font. By inserting this command into
You can establish a font for an individual document or a default font the Global.beg include file, every document that the
for all documents. Integration Module processes will use the font Times
New Roman, 12-point.
To set the font for a single document:
Use the {{font}} FCL command in the FCL document. {{font “times new roman” size=12}}
Use the {{font}} command in a standard include file, as described For information on using global include files, see Chapter 13,
in Chapter 13, “Including the Same Files and Commands in “Including the Same Files and Commands in Many Documents”.
Many Documents”. For detailed information on the {{font}} command, including syntax
To change the default font for all documents, use the {{font}} and examples, see Appendix B, “FCL Commands”.
command in a global include file (as described in Chapter 13,
“Including the Same Files and Commands in Many Documents”.)
Documents that contains a font command will not use the defaults Changing the Appearance of Fonts
established in the global include file. The default font for the You can change the appearance of fonts, such as the weight or
Integration Module is Courier bold 12-point (courb12). pitch for TrueType and Windows fonts with the {{font}} command.
For the installed BDF fonts, you can configure only the pitch and
Selecting fonts for individual documents leading.
To set the font for a document, use the {{font}} FCL command in
You can underline any font with the {{underline}} command or draw
the FCL document.
a line through any text with the {{font}} with the strikeout option.
For detailed information on the {{font}} command, including syntax
and examples, see Appendix B, “FCL Commands”.
Example The following example shows an FCL document with the
font Times New Roman, 24-point, extra-bold, and italic.
The {{font}} command controls all text until another
{{font}} command or the end of the document.
{{begin}}
{{font “times new roman” size=24 extrabold italic}}
{{fax 503-555-4489}}
Body of the document to be sent.
{{end}}
For detailed information on the {{font}} and {{underline}}
commands, including syntax and examples, see Appendix B, “FCL
Commands”.
Example The following example shows the FCL commands that
would change the appearance of the same font and
what the finished document would look like.

Figure 17.1 Changing the Look of Fonts with FCL

Body text, paragraph 1.


{{begin}}
Body text, paragraph 2. {{fax 503-555-8823}}
{{font “times new roman” size=12
Body text, paragraph 3. pitch=15 extrabold italic strikeout}}
Body text in Lucida Sans, Body text, paragraph 1.
{{underline on}}
12-point, italic. This is an Body text, paragraph 2.
installed font. {{underline off}}
{{font “times new roman” size=12
regular}}
Body text, paragraph 3.
{{font luis12}}
Body text in Lucida Sans, 12-point,
italic. This is an installed font.
{{end}}

Chapter 17 Selecting and Configuring Fonts 99


RightFax 9.4 Integration Module Guide 100
Chapter 18
Setting Page Orientation and Image Quality

This chapter explains how to set page orientation (landscape or You can change orientation multiple times in a document, so that,
portrait) and image quality (standard or fine) using the Integration for example, the odd pages are portrait and the even pages
Module Configuration program or FCL. landscape. You can do this with a new {{orient}} command at the
beginning of each page (you can start a new page with the {{ff}}
command, as described on page 197).
Setting Page Orientation
Setting page orientation for individual documents
To determine the page orientation for individual documents or the
default for all documents, use the {{orient}} FCL command. To set orientation for a document, insert either {{orient portrait}} or
{{orient landscape}} into the FCL document.
To set the default orientation for all documents, insert the {{orient}}
command in a global include file (see Chapter 13, “Including the The following example shows an FCL document with portrait
Same Files and Commands in Many Documents”). orientation.
Individual documents that contain the {{orient}} command will {{begin}}
override the default in the global include file. {{orient portrait}}
{{fax 503-555-4489}}
Example You use a global include file to establish landscape
Body of the document to be sent.
orientation for all documents (overriding the Integration {{end}}
Module default of portrait orientation). Later, you need to
send a batch of 100 documents that must have portrait For detailed information on the {{orient}} command, including
orientation. To accomplish this, you include the {{orient syntax and examples, see Appendix B, “FCL Commands”.
portrait}} command in the FCL for those 100
documents. The 100 documents are processed with Setting default orientation for all documents
portrait orientation, and all others revert back to the The default page orientation for all documents is portrait. To
default. change this default, insert the {{orient landscape}} command into
the global include file called Global.beg.

101
RightFax 9.4 Integration Module Guide 102

For information on using global include files, see Chapter 13, file). Thus, to create a single document in portrait orientation, you
“Including the Same Files and Commands in Many Documents”. must override the landscape default by inserting the {{orient
For detailed information on the {{orient}} command, including portrait}} command in the FCL for the document.
syntax and examples, see Appendix B, “FCL Commands”.
Figure 18.2 Changing to Portrait Orientation
For more information on establishing default values, see Chapter 9, Body of the document to be
“Setting Defaults for FCL Documents”. sent.

Examples
This section shows two examples of how different FCL documents
yield different orientation in their finished documents. {{begin}}
{{orient portrait}}
The following example shows a single document being changed
{{fax 503-555-4489}}
from the default of portrait orientation to landscape orientation. Body of the document to be sent
{{end}}
Figure 18.1 Changing to Landscape Orientation
Body of the document to be sent.

{{begin}}
{{orient landscape}}
{{fax 503-555-4489}}
Body of the document
to be sent.
{{end}}
Setting Fax Image Quality
You can set the resolution of the fax image to fine or standard.
Standard resolution is 204 x 98 dots per inch (dpi).
Fine resolution is 204 x 196 dpi.
The following example assumes that you have previously changed You can set image quality for individual documents or as defaults
the default orientation to landscape by inserting the {{orient that will govern all documents.
landscape}} command into the Global.beg file (a global include
To set image quality for a single document, insert the {{quality}}
command into the FCL document.
To set the default image quality for all documents, see Chapter 9,
“Setting Defaults for FCL Documents”.
Any document that contains the {{quality}} command will override
the default established with the Integration Module Configuration
program.
Example You use the Integration Module Configuration program
to establish standard image quality for all documents.
Later, you need to send a batch of 100 documents that
must have fine quality. To accomplish this, you include
the {{quality fine}} command in the FCL for those 100
documents. The 100 documents are processed with fine
quality, and all others use the default.

Setting image quality for individual documents


To set image quality for a document, insert either {{quality fine}} or
{{quality standard}} into the FCL.
The following example shows an FCL document with fine quality.
{{begin}}
{{quality fine}}
{{fax 503-555-4489}}
Body of the document to be sent.
{{end}}
For information on the {{quality}} command, including syntax and
examples, see Chapter 9, “Setting Defaults for FCL Documents”.

Chapter 18 Setting Page Orientation and Image Quality 103


RightFax 9.4 Integration Module Guide 104
Chapter 19
Attaching and Embedding Files, Signatures, and Graphics

The Integration Module provides several methods for attaching and To attach a library document, use the {{libdoc}} command.
embedding files, signatures, and graphics. To embed text in a {{Libdoc}} has the same functionality as {{attach}}. For information
document, see Chapter 13, “Including the Same Files and on library documents, see the RightFax Administrator’s Guide.
Commands in Many Documents”.
You can set defaults for how the Integration Module processes Converting attached files
attached graphics. See the options for Image Cropping in the FCL Attached files are converted to fax format (.tif) in one of two ways:
Processor settings of the Integration Module Configuration server-side application (SSA) file conversions and INSO
program Chapter 9, “Setting Defaults for FCL Documents”. conversions.
To convert a file to fax format with SSA, the source application that
created the attachment must be SSA-compatible (see the RightFax
Attaching Files to Documents with FCL Administrator’s Guide for a list of SSA-compatible applications)
The options described here are for files that are converted to fax and the source application must be installed on the RightFax server
format (TIF images) before being attached and sent. If you want to computer.
attach files in their native format, you can purchase the InternetLink INSO conversions are used for files that cannot be converted with
Module to send documents via e-mail. For example, fax format SSA. The RightFax software attempts SSA conversions for all
cannot adequately represent the content of an audio file. For attachments. If the attachment’s file type is not SSA-compatible, or
instructions, see the RightFax InternetLink Module Guide. if the attachment’s source application is not installed on the
To attach a file to a document, use the {{attach}} command. You RightFax server computer, then an INSO conversion is used.
can attach multiple documents by inserting multiple {{attach}} For more information on file conversions, see the RightFax
commands. The {{attach}} command ends the page, so the Administrator’s Guide.
attachment always begins on its own page. The {{attach}}
command cannot be used in {{type email}} documents.

105
RightFax 9.4 Integration Module Guide 106

Storing attachments Figure 19.1 Attaching the File Named AugustInvoice.doc


For every attached file, you must either provide a path to the file in More of the main document.
the {{attach}} command, or save the file in the
RightFax\Production\Forms folder. If you provide a path, it should AUGUST INVOICES
Data Data Data Data
be a full path. If you provide a path that is not a full path, then it {{begin}}
Body of Data Data
the main Data
document. Data
must be relative to RightFax\Production\Forms. Data Data Data Data {{fax 503-555-0016}}
Data Data Data Data Body of the main document
Example The following example shows an FCL document that Data Data Data Data {{attach AugustInvoice.doc}
would attach a file called AugustInvoice.doc. The Data Data Data Data More of the main document
attachment would be converted to fax format, attached Data Data Data Data {{end}}
Data Data Data Data
to the body of the main document at the start of a new Data Data Data Data
page, and sent to (503) 555-0016. Data Data Data Data
Data Data Data Data
For this example document to function properly, Data Data Data Data
Microsoft Word must be installed on the RightFax server Data Data Data Data
computer (to use SSA to convert AugustInvoice.doc) Data Data Data Data
Data Data Data Data
and AugustInvoice.doc must already be saved in the Data Data Data Data
RightFax\Production\Forms folder. Data Data Data Data
Data Data Data Data

For detailed information on the {{attach}} command, including


syntax and examples, see Appendix B, “FCL Commands”.

Embedding Signatures with FCL

Creating signatures
You must create any signature files and save them as Class F TIF
images. The Integration Module does not provide a method for
creating these files, and neither Captaris Implementation Services
nor Captaris Customer Support can assist you in this process. The
most common method is to scan a signature. Regardless of
method, the signature must be saved as a Class F TIF file.
Storing signatures Example One-hundred sales people need to send a letter to
For every embedded signature file, you must either provide a path 10,000 customers—each sales person must send the
to the file in the {{signature}} command, or save the file in the letter to 100 customers. The {{signature}} command can
RightFax\Production\Forms folder. If you provide a path, it should identify each sales person’s signature that will appear at
be a full path. If you provide a path that is not a full path, then it the bottom of his or her letters.
must be relative to RightFax\Production\Forms. For detailed information on the {{signature}}, {{sign}}, {{signed}}, or
{{@}} commands, including syntax and examples, see Appendix B,
Embedding a signature “FCL Commands”.
1. Insert the {{signature}} command into the FCL to define the When you are able to manipulate the body of an FCL document,
signature file. embedding a signature file might be easier when you use one of
2. Insert {{sign}}, {{signed}}, or {{@}} (they are identical) at the
the {{place}} commands, which requires only one FCL command
point where you want the signature to appear. instead of two and offers more exact placement options. For more
information, see “Embedding Graphics with FCL” on page 108.
Example In the following example, the {{signature}} command
establishes that DoctorRobertCribbs.tif will be the
signature used in this document. The {{@}} command
places this signature below the text that forms the body
of the document, at the current cursor location.
For this example document to function properly,
DoctorRobertCribbs.tif must already be saved as a
Class F TIF in the RightFax\Production\Forms folder.
{{begin}}{{signature DoctorRobertCribbs.tif}}
{{fax 503-555-0016}}
Body of the document to be sent.
Sincerely,
{{@}}
{{end}}
Because it identifies, rather than places, a signature file,
the {{signature}} command is often useful in situations
where you can manipulate the header of an FCL
document, but not the body.

Chapter 19 Attaching and Embedding Files, Signatures, and Graphics 107


RightFax 9.4 Integration Module Guide 108

Embedding Graphics with FCL


To embed graphics in the body of a document, use one or more of
the {{place}} commands.
{{place}} positions the specified Class F TIF image. You can
specify a full path to the graphic file. If you do not specify a path,
then the default is RightFax\Production\Forms. The upper-left
corner of the graphic is placed at the current cursor location,
unless you specify x- and y-coordinates.
{{placeall}} places the image on the current and all subsequent
FCL pages (but not on file attachments).
{{placelast}} places the image on the last page only. You can use
multiple {{placelast}} commands to embed multiple images on
the last page (such as multiple signatures, something you cannot
do with the signature commands).
{{placexy}} specifies the location on the page of the images
defined in subsequent {{place}} commands. You can specify
horizontal values of left, center, and right, and vertical values of
top, center, and bottom. For example, {{placexy center center}}
would align the horizontal and vertical centers of the image at the
location specified in a subsequent {{place}} command.
Embedding a signature file (page 106) is essentially the same as
embedding any other graphic. The signature commands have no
functional differences from the place commands—both let you
embed a graphic file in the body of a document. However, the
{{place}} commands require less programming and let you locate
the embedded graphic more precisely in the document.
Chapter 20
Scheduling Document Transmission

This chapter explains the FCL commands that schedule when the Table 20a The Scheduling Commands (Continued)
Integration Module sends documents. Unless you specify Command Description
otherwise with one of these commands, the Integration Module
sends documents when it receives them from the host application. {{priority}} Specifies a sending status of high, medium (or
normal), or low priority for a document. When high
The following table lists the scheduling commands and gives a brief priority documents exist, low and medium priority
description. documents are held so that the high priority
For detailed information on these commands, including syntax and document can be sent. The default is low priority.
examples, see Appendix B, “FCL Commands”. Priority only has an effect on sending time when
certain variables, such as document traffic or
Table 20a The Scheduling Commands processing time (for complex documents with
many graphics, attachments, etc.), are sufficiently
Command Description
high. “Sufficiently high” depends on multiple
{{approval}} Holds a document in the FaxUtil mailbox until it is variables also, such as the number of RightFax
approved. servers or channels in the system.
{{batch}} Holds a document so that it can be sent with other The {{batch}} command is a common variable that
documents in a batch. affects the sequence in which documents are sent,
as does the priority that you establish for {{batch}}
{{date}} Specifies a future date to send a document.
documents.
Combine this command with {{time}}.
For example, if you batch several documents and
{{delay}} Delays sending by a specified number of minutes.. assign them all high priority, they will not be sent
{{preview}} Holds the document for preview in the FaxUtil until the batch is complete. In this instance, low
mailbox. priority documents can be sent before the high
priority batch documents are sent.

109
RightFax 9.4 Integration Module Guide 110

Table 20a The Scheduling Commands (Continued)


Command Description
{{time}} Specifies a future time to send a document.
Combine this command with {{date}} to send a
document at a particular time on a future day.
The {{time}} command only considers the time
remaining in the same day. Thus, a document is
sent immediately if the time specified in the
{{time}} command is in the past.
For example, if you send a document to the
Integration Module at 21:00 (9:00 p.m.) and you
insert the command {{time 20:45}}, the document
will be sent immediately because 20:45 (8:45
p.m.) of the current day is in the past.
{{UTC}} Specifies a future date and time to send a
document in universal coordinated time.
Chapter 21
Setting Up Notification Messages of Document Transmission

This chapter explains how to configure the Integration Module to Notification messages are not generated by the Integration Module
send notification messages when a document has been sent or has for incomplete faxes. Usually, these are faxes that are missing
errors in transmission. You have multiple options for configuring information that is required for sending (such as the fax number).
notification messages—the content they contain, how the You have the following options to set up notifications of faxes with
Integration Module sends them, and how they are received. incomplete information:
Notification messages are informative—they can describe whether Use Enterprise Fax Manager and FaxUtil to set up notifications
or not a document was transmitted, any transmission errors, the and to monitor the system for faxes with incomplete information
date and time of transmission, the owner of the document, and (described in the RightFax Administrator’s Guide).
more. Another form of notification is to print or fax a copy of the Use the RightFax COM Module or the RightFax API to create
document to another recipient such as a system administrator. For custom notifications. Refer to the RightFax COM Module Guide
more information on this option, see Chapter 23, “Setting Up for more information.
Actions on Document Transmission”.
“Figure 21.1: The Notification Process” on page 112 illustrates the
FCL notification process using the following notification channel
command line:
Creating Notification Messages with FCL
FAX2MAPI -t $o -u “MS Exchange Settings” -f $$
To send notification messages, the FCL command {{notifyhost}}
must be included in documents sent from the host application or
added to include file that is linked to the documents.
When a document is received, generated, and transmitted from the
RightFax server, notification messages are generated by the
program Notify.exe in the Integration Module. The notification
messages are sent to the host application via “notification
channels” that you set up in the Integration Module.

111
RightFax 9.4 Integration Module Guide 112

Figure 21.1 The Notification Process Creating notifications for FCL documents requires these basic
steps:
Document containing
{{notifyhost exchsucc 1. Create a template for the notification message (described on
exchfail exchange}}
Integration Module
arrives at Integration Module page 112). Notification templates determine the format and
notify.exe
content of the notification message.
2. Create a notification channel (described on page 118). Use the
The document is transmitted successfully, so notify.exe
retrieves the "success" notification template "exchsucc.inc" Integration Module Configuration program to create notification
channels, which include command lines that determine how the
Fax Notification
Document # ^docnum^ This is "exchsucc.inc."
Integration Module will send notifications.
sent to ^fax^. It contains the
Final return code: ^retcode^. keywords "docnum," 3. Include the {{notifyhost}} FCL command in the document that is
"fax," and "retcode."
sent from the host application to the Integration Module
(described on page 128). The {{notifyhost}} command specifies
Notify.exe replaces keywords in exchsucc.inc with data. the notification template for the message and the notification
channel to use.
Fax Notification
"Exchsucc.inc"
Document #8765
becomes "8765.tmp."
sent to (555) 729-5403.
The Enterprise Server
Final return code: success.
generates the final
return code.
Creating Notification Templates
Notify.exe retrieves the notification command
The content and format of the notification message is defined in
line that you created in the Integration Module Configuration program text-based template file that you create. The template is a collection
fax2mapi -t $o -u "MS Exchange Settings" -f $$ of text and keyword variables which are replaced with data about
the sent document in the notification message.
Notify.exe replaces variables in your command line with data.
Template file keywords are surrounded by carat symbols (^) and
fax2mapi -t Ted Rose -u "MS Exchange Settings" -f 8765.tmp
contain an identifier and an optional field length. For example, the
keyword ^company^ would be replaced with the entire name of
The notification is delivered to the host according to the requirements in the command line.
In this case, the notification is an e-mail to "Ted Rose" delivered via MAPI to an Exchange server.
the company to which the document was sent, regardless of the
number of characters. The keyword ^company 12^ would be
replaced with the first 12 characters only of the company name.
Notification recipient
For an example, refer to “Figure 21.1: The Notification Process” on For example, ^altfax^ is replaced by the information included in the
page 112. The template file in this example is a simple text {{altfax}} FCL command in the sent document. If an FCL document
document that contains three keywords: contains {{altfax 503-555-3287}}, then 503-555-3287 will appear
^docnum^ is replaced with the document number assigned by where the ^altfax^ keyword appears in the notification template.
the Integration Module.
Table 21a Notification Keywords and FCL Equivalents
^fax^ is replaced by the fax number of the person or company
receiving the document. Keyword FCL equivalent Description
^retcode^ is replaced with the text of the code returned from the ^altfax^ {{altfax}} The alternate fax number.
fax board after transmission. This will either be the word ^billing^ {{billing}} Billing code 1.
“success” or a specific error code.
^billinfo2^ {{billing2}} Billing code 2.
To create and save a notification template ^comment^ {{comment}} The {{subject}} command can be
{{subject}} used if you have licensed the
1. Open Notepad or another text editing application that will InternetLink Module. The subject
produce ASCII text files. appears in the subject field of the
e-mail message. If no subject
2. Enter the text and keywords of the notification message you
appears in the document, the default
want to receive. For a description of all of the available
subject is “Success Notification” or
keywords for notification templates, see “Template file
“Error Notification.”
keywords” on page 113.
^company^ {{company}} The destination company name.
3. Save the file with the extension .inc in the
RightFax\Production\Include folder. Make note of the file name ^contact^ {{contact}} The recipient name.
as you will need it later when you include the {{notifyhost}} ^csi^ {{csi}} If no CSID (call subscriber ID) is
command in FCL documents from the host application. specified, the default set in the
RightFax Integration Module
Caution Do not save the template file with a .txt extension or any Configuration program will be used.
extension other than .inc. The Integration Module will only recognize
files with this extension as notification templates. ^date^ {{date}} If no date is specified, the default is
the date the fax was submitted.
Template file keywords ^dept^ {{dept}} The destination department number.
The following table lists the keywords you can add to notification ^docnum^ N/A The document number assigned by
template files. The keywords are shown with FCL equivalents. FCL the Integration Module.
commands in the sent document will populate the corresponding ^duration^ N/A The duration of the fax call in
keyword in the notification message. seconds.

Chapter 21 Setting Up Notification Messages of Document Transmission 113


RightFax 9.4 Integration Module Guide 114

Table 21a Notification Keywords and FCL Equivalents (Continued) Table 21a Notification Keywords and FCL Equivalents (Continued)
Keyword FCL equivalent Description Keyword FCL equivalent Description
^email^ or {{email}} These commands can be used if you ^numretry^ N/A The total number of fax attempts.
^emailto^ {{to}} have licensed the RightFax
^owner^ {{owner}} If no {{owner}} command appears in
InternetLink Module. The keyword
the sent document, the default is the
^email^ is the recipient address.
RightFax user name of the owner of
With other notifications, ^email^ is
the fax.
typically the e-mail address of the
originator of the document. ^ownerid^ {{owner}} The RightFax use ID of the owner of
the fax
^emailfrom^ {{from}} The e-mail address of the originator
of the document. If no e-mail address ^pages^ N/A Total pages of the document, not
appears in the document, the default including the cover sheet.
is postmaster@domain. This ^pagessent^ N/A Total pages that were successfully
command can be used if you have transmitted.
licensed the InternetLink Module.
^printer^ N/A The name of the currently selected
^emailcc^ {{cc}} The e-mail address where a copy of printer.
the message should be sent. This
command can be used if you have ^quality^ {{quality}} The fax resolution.
licensed the InternetLink Module. ^replyto^ or {{replyto}} The reply-to name.
^emailsubject^ {{subject}} The e-mail subject. This command ^reply_to^
can be used if you have licensed the ^retcode^ N/A The text of the code returned from
InternetLink Module. the fax board after transmission. Will
^empid^ {{empid}} The recipient employee ID. be either “success” or a specific
error message.
^fax^ {{fax}} The recipient fax number. Same as
^phone^. ^rti^ {{rti}} If no RTI string appears in the sent
document, the default is the RTI set
^phone^ {{fax}} Same as ^fax^.. in the Integration Module
^faxcard^ N/A The number of the fax board used for Configuration program.
transmission. ^statusstring^ N/A Fax status as listed in FaxUtil (see the
^faxstatus^ N/A Numeric status code; see “The RightFax Administrator’s Guide).
^faxstatus^ and ^statustype^ ^statustype^ N/A Numeric return code; “^Statustype^
keywords” on page 115. Codes” on page 116.
^humantranstime^ N/A The date and time the fax was ^termid^ {{termid}} The termination code.
transmitted in human-readable
format.
Table 21a Notification Keywords and FCL Equivalents (Continued) The ^faxstatus^ and ^statustype^ keywords
Keyword FCL equivalent Description The ^faxstatus^ and ^statustype^ keywords describe the status
of the sent document in the notification message. The following
^time^ {{time}} If no time is specified, the default is
the time the fax was submitted. numeric codes will appear in the notification message.

^tranid^ {{tranid}} The transmission ID generated by Table 21b ^Faxstatus^ Codes


the RightFax server.
Code Notes
^transtime^ N/A The date and time that the fax was
transmitted. To specify the format for 0 Fax is not yet created.
the date and time, “The ^transtime^ 1 Fax needs cover sheet.
keyword” on page 116.
2 Fax needs conversion.
^type^ {{type}} The document transmission type (fax,
3 Fax needs to be sent.
e-mail, certified, etc.). This keyword is
the method through which you can 4 Fax is in conversion.
be notified when a document that 5 Fax needs to be sent.
should have been sent as a fax failed
and was sent as an e-mail or certified 6 Fax is done sending or receiving.
e-mail instead. These options require 7 Fax uses a manual fax cover sheet.
the InternetLink Module (for e-mail or
mime documents) or the 8 Fax is scheduled to be sent.
SecureDocs module (for certified 9 Fax is done sending or receiving. Errors were encountered.
e-mail documents). Will not be retried.
^unique_id^ {{unique_id}} The unique ID for the fax assigned by 10 Fax is a duplicate of another fax.
the RightFax server.
11 Error encountered. Fax will be retried.
^user1^ {{user1}} User-defined data code 1.
12 Sent or received fax needs user’s attention. Required data
^user2^ {{user2}} User-defined data code 2. may be missing.
^user3^ {{user3}} User-defined data code 3. 13 Fax needs attachment.
^userid^ {{userid}} RightFax user ID. 14 Fax is held for preview.
^voice^ {{voice}} The recipient’s phone number. 15 Fax is in OCR conversion.
^winsecid^ {{winsecid}} The RightFax user ID of the originator 16 Fax is printing.
of the fax.
17 Fax is queued for printing.
18 Fax is queued for OCR conversion.

Chapter 21 Setting Up Notification Messages of Document Transmission 115


RightFax 9.4 Integration Module Guide 116

Table 21b ^Faxstatus^ Codes The following table lists the variables that can be used with the
Code Notes ^transtime^ keyword.

19 Fax is being validated. Table 21e ^Transtime^ Variables


20 Fax is held for approval. Variable Description
%a Abbreviated weekday name.
Table 21c ^Statustype^ Codes
%A Full weekday name.
Code Status
%b Abbreviated month name.
0 Fail
%B Full month name.
2 OK
%c Date and time representation appropriate for
The ^transtime^ keyword locale.

The ^transtime^ keyword and variables provide the date and time %d Day of month as a digit (01-31).
that the document was transmitted in the notification message. %H Hour in 24-hour format (00-23).
You can specify the format of the date and time. The following table %I Hour in 12-hour format (01-12).
shows some possible formats for the transmit time 2:23 P.M. on
%j Day of year as a digit (001-366).
November 6, 2001.
%m Month as a digit (01-12).
Table 21d Example ^Transtime^ Variables with Results %M Minute as a digit (00-59)
Command and variable Result %p Current locale’s A.M./P.M. indicator for 12-hour
^transtime %m/%d/%y^ 11/06/01 clock.
^transtime %H:%M^ 14:23 %S Second as a digit (00-59).
^transtime %H%M%d%Y^ 14:2311062001 %T Local TZD.
^transtime %B %d, %Y^ November 6, 2001 %U Week of year as a digit, with Sunday as first day of
week (00-51). If ^transtime^ begins with %U, the
time displayed is UTC (page 218) rather than local.
%w Weekday as a digit (0-6; Sunday is 0).
%W Week of year as decimal number, with Monday as
first day of week (00-51)
%x Date representation for current locale
%X Time representation for current locale.
Table 21e ^Transtime^ Variables (Continued) Sample notification templates
Variable Description “Table 21f: Example Notification Templates” shows some typical
notification template files and the resulting notification messages.
%y Year without century, as a digit (00-99).
%Y Year with century, as a digit.
The following FCL document includes the {{notifyhost}} command:

%z Time-zone name or abbreviation; no characters if


{{begin}}
time zone is unknown. {{fax 503-555-1234}}
{{notifyhost notifysuccess.inc notifyfail.inc 1}}
%Z Time-zone name or abbreviation; no characters if {{company Acme Steel Company}}
time zone is unknown. {{contact John Smith}}
%% Percent. {{comment Inv. # 12345}}
{{user1 JB1234KU-6789DJJS}}
# Prefixes formatting code to modify as follows:
{{owner William Murray}}
%#c — long date and time
%#x — long date Body of the document to be sent.
%#d, %#H, %#I, %#j, %#m, %#M, %#S, %#U, {{end}}
%#w, %#W, %#y, %#Y — remove any leading
zeros. Table 21f Example Notification Templates
Resulting notification
Template file with keywords message
Duration ^duration 4^ Duration 34
Date ^transtime %m/%d/%y^ Date 05/22/2001
Comment ^comment 40^ Comment Inv. #12345
Time ^transtime %H:%M^ Time 08:37
Fax ^phone 40^ Fax 503-555-1234
Page ^pagessent 02^/^pages 02^ Page 02/02
Return Code ^retcode 20^ Return code success

Chapter 21 Setting Up Notification Messages of Document Transmission 117


RightFax 9.4 Integration Module Guide 118

Table 21f Example Notification Templates This command line defines how the notification will be sent. In this
Resulting notification case, the program fax2mapi.exe will send the notification message
Template file with keywords message to a MAPI-compliant e-mail box. The switches -t, -u, and -f are
unique to Fax2mapi.exe. Each executable has its own switches.
Date ^transtime %B %d, %Y^ Date May 22, 2001
To configure the notification command line in the Integration
Sent to this number: ^fax 40^ at Sent to this number:
Module Configuration program, you use:
^transtime %H:%M^ 503-555-1234 at 8:37
Regarding ^comment 40^ Regarding Inv. # 12345 Switches that the individual executable will recognize.
Sent to ^contact 40^ Sent to John Smith Variables that will supply information about the sent document for
the notification message.
Sending confirmation: ^retcode 20^ Sending confirmation:
success
To create a new notification channel
Success/error code: ^retcode^ Success/error code:
Sent to ^contact 40^ at ^company 60 ^ invalid phone number 1. On the RightFax server, select Start > Programs > RightFax >
Subject: ^comment 40^ Sent to John Smith at Enterprise Fax Manager.
Acme Steel Company 2. In Enterprise Fax Manager, in the Fax Servers list, click the
Day/time: ^transtime %B %d,
%Y^/^transtime %H:%M^ Subject: Inv. # 12345 name of the server on which the Integration Module is running.
Day/time: May 22, 3. In the Service Name list, double-click RightFax Integration
2001/8:37
Module. The Integration Module Configuration window
appears.

Creating Notification Channels


Notifications are sent to the host application via channels. The
notification channel is specified in the command line that defines
how the notification will be sent to the host application. The
Integration Module supports 128 notification channels.

Warning Notification channel 16 is a default that the Integration


Module uses when no {{notifyhost}} command is specified. Do not
change the settings for channel 16.

“Figure 21.1: The Notification Process” on page 112 uses the


following notification command line:
fax2mapi -t $o -u “MS Exchange Settings” -f $$
4. Right-click Notification Channels, and select Add Output 6. In the in Command line box, enter the case-sensitive command
Device from the shortcut menu. The available settings for the line for the channel. For information on the command line to use
notification channel appear in the Integration Module for each type of notification, refer to the appropriate section in
Configuration window. this chapter:
“Sending notifications via SMTP” on page 121
Figure 21.2 The Notification Channels settings
“Sending notifications to a database” on page 122
“Sending notifications to an SMS-enabled device” on
page 123
“Sending notifications via 3270 emulation” on page 124
“Sending notifications via FTP” on page 125
“Sending notifications via IBM WebSphere MQ” on
page 126
“Sending notifications to Lotus Notes” on page 127
“Sending notifications to Microsoft Exchange” on page 127
7. Select the Keep files check box if you want to save a copy of
each notification that is sent to the host application.
Notifications are saved in the Windows Temp folder.
8. Click OK to save the new notification channel.

Methods used for notification messages


The following table lists the common methods you can use for
connecting to and sending notification messages to a device or
5. In the Name box, enter a descriptive name for the channel. The host application. Contact Captaris for information on other
channel number is assigned as you add channels. available notification methods.

Chapter 21 Setting Up Notification Messages of Document Transmission 119


RightFax 9.4 Integration Module Guide 120

Notify.exe on the RightFax Integration Module sends the Each of these executable files including their command line
notification message to the host application via the method listed in parameters are defined in the sections that follow. For each
the first column using the executable listed in the second column. executable, one or more command line parameters support
variables that let you pull information directly from the FCL in the
Table 21g Notification Methods and Executable Program Files document that was sent.
Program that The following table lists the command line variables that can be
Connection sends the used with all notification executables. The FCL equivalents are
method notification Description FCL-based information that populates the corresponding variable.
SMTP Mailsend.exe Sends messages via SMTP to an For example, $^ is replaced by the information included in the
SMTP-compliant mail server. {{termid}} FCL command in a sent document. So, if an FCL
document contains {{termid A3}}, then A3 will be used in the
ODBC Dbnotify.exe Sends notifications to an ODBC
command when it executes.
database data source.
SMS Rfsms.exe Sends notifications to an Table 21h Notification Channel Variables
SMS-enabled device via the
Variable FCL equivalent Notes
Captaris Push-Proxy Gateway
(PPG) server. $$ N/A File name of the notification created
by Notify.exe. This file contains the
3270 Hlpisend.exe Sends notifications back through
text of the notification to be sent and
emulation 3270; uses high-level-language
is formatted using the notification
application-programming interface
template specified with the
(HLLAPI). This requires third-party
{{notifyhost}} FCL command.
3270 emulation software.
$^ {{termid}} The termination code of the sent fax.
FTP Ftpit.bat Is a Perl script used to log on to an
FTP server and transfer files. $B {{billing}} Billing codes 1 and 2
{{billing2}}
IBM Mqput.exe Sends a message to the specified
WebSphere remote queue by the specified $C {{comment}} Comment text.
MQ remote queue manager. This $c {{emailcc}} The e-mail address where a copy of
requires IBM WebSphere MQ the message should be sent. This
software. command can be used if you have
Notes Fax2note.exe Sends messages to a Lotus Notes licensed the InternetLink Module.
system using Notes API. $d N/A The document number assigned by
Exchange Fax2mapi.exe Sends messages to Microsoft the Integration Module.
Exchange using MAPI. This $D {{dept}} The recipient’s department.
requires a Microsoft Exchange
client on the fax server. $E {{empid}} The employee ID.
Table 21h Notification Channel Variables (Continued) Sending notifications via SMTP
Variable FCL equivalent Notes To create a notification channel that sends messages to an SMTP
mail server, use Mailsend.exe.
$f {{from}} The e-mail address of the originator
of the document. This command Syntax mailsend [options] input filename
can be used if you have licensed the
InternetLink Module. Table 21i Mailsend.exe Command Line Options
$o {{owner}} The RightFax ID of the originator of Option Description
the fax.
-a Abort if connect fails.
$p N/A The name of the currently selected
-c address E-mail address where a copy of the message will
printer.
be sent. The e-mail address can appear in the
$P N/A The number of pages sent, not following formats:
including the cover sheet. Ashutosh Apte <[email protected]>
$r N/A The return code. <[email protected]>
$R {{replyto}} The reply to name. [email protected]
$s {{subject}} The e-mail subject. This command Mailsend.exe will convert these formats to
can be used if you have licensed the <[email protected]>.
InternetLink Module. -f address E-mail address of the sender of the document.
$t {{to}} The e-mail address of the recipient -h Displays online help for Mailsend.exe.
of the message. This command can
-H Input file contains mail headers.
be used if you have licensed the
InternetLink Module. -m “mailhost” The name of the mail host where messages will be
sent. The name must be surrounded by quotation
$T N/A The TIF file name of the document.
marks.
$w {{winsecid}} The RightFax user ID of the
-o Obtain the recipient e-mail address from the first
originator of the fax.
line of the file, and obtain the subject of the e-mail
$1 {{user1}} User-defined data code 1. message from the second line.
$2 {{user2}} User-defined data code 2. -s subject Subject of the e-mail message.
$3 {{user3}} User-defined data code 3.

Chapter 21 Setting Up Notification Messages of Document Transmission 121


RightFax 9.4 Integration Module Guide 122

Table 21i Mailsend.exe Command Line Options (Continued) Table 21j Description of the Example Command Line
Option Description Element3 Description
-t address The e-mail address of the recipient of the -s “Notification of Fax” The text that will appear in the
notification message. The e-mail address can subject line of the e-mail
appear in the following formats: message.
Ashutosh Apte <[email protected]> $$ The file name of the document.
<[email protected]>
[email protected] Sending notifications to a database
Mailsend.exe will convert these formats to To create a notification channel that sends SQL messages to a
<[email protected]>. database, follow these steps:
-v Display verbose messages. 1. Set up a new Data Source Name (DSN) by selecting Start >
Settings > Control Panel > Data Sources (ODBC). This
Example mailsend -m “smtpserver.yourhost.com” -t "$o" -f opens the ODBC Data Source Administrator dialog box. Click
[email protected] -s "Notification of Fax" Add and complete the options to create the new DSN. Make a
$$ note of the DSN name as you will need it later.
2. Create notification templates for both success and failure
Table 21j Description of the Example Command Line
notifications. These are text files that contain the SQL
Element3 Description commands that define where and how the notifications will be
mailsend The name of the executable file written to the database.
that will process the Example Insert SampleTable(ID,Status)
notification. Values(^DocNum^, ‘^RetCode^’)
-m “smtpserver.yourhost.com” The name of the mail host.
-t “$o” The recipient’s name, who is
also the sender of the
document. The recipient will be
obtained from the {{owner}}
FCL command in the document
received from the host
application.
-f [email protected] The e-mail system’s address
and the sender’s SMTP
address, which is required in
order to receive the notification.
3. Configure a new notification channel (described on page 118) Sending notifications to an SMS-enabled device
using the Dbnotify.exe program in the Command Line box. To send notifications to an SMS-enabled device via the Captaris
Syntax dbnotify {-fFileName|-sSQL} [-uUserID] Push-Proxy Gateway (PPG) server, follow these steps:
[-pPassword] DSN 1. Install and configure the Captaris Push-Proxy Gateway server.
Refer to the documentation for this product for instructions.
Table 21k Dbnotify.exe Command Line Options
2. Create a Pager/SMS service in Enterprise Fax Manager with
Option Description
SMS as the Service Type. This service is required for
-fFileName Fully qualified file name of a file containing the SQL communication between the RightFax server and the
script for the notification. You must use -f or -s, but Push-Proxy Gateway server that sends the SMS messages. For
not both. information on creating SMS/Pager services in Enterprise Fax
-sSQL SQL script to execute containing the notification
Manager, refer to the RightFax Administrator’s Guide.
script. You must use -f or -s, but not both. 3. Create notification templates for both success and failure
-uUserID User ID. This is only required is your ODBC data notifications (described on page 112). The total length of the
source was not configured with a user name. notification message, including the text substituted for keyword
variables may not exceed 160 characters (the maximum allowed
-pPassword Password. This is only required is your ODBC data length for SMS messages).
source was not configured with a password.
4. Configure a new notification channel (described on page 118)
DSN Data Source Name that you created in step 1. using the Rfsms.exe program in the Command Line box.
Syntax rfsms -sSMSService -dSMSNumber
Example dbnotify -f$$ DSN
[{-mFile|”MessageText”}] [-v] [-fRFServer]
[-uUserID] [-pPassword]
Table 21l Description of the Example Command Line Above
Element3 Description Caution Rfsms.exe does not perform error checking on the
parameters you enter on the command line. Make sure that all
dbnotify The name of the executable file that will command line parameters are correct and that the accounts specified
process the notification. exist on the server.
-f $$ Tells Dbnotify to use the SQL script in the
template that was specified in the Table 21m Rfsms.exe Command Line Options
{{notifyhost}} command in the data stream. Option Description
DSN This is the name of the DSN you created in -sSMSService The Service ID of the SMS/Pager service you
step 1.
created in Enterprise Fax Manager.
-dSMSNumber The phone number of the SMS device you will
be contacting.

Chapter 21 Setting Up Notification Messages of Document Transmission 123


RightFax 9.4 Integration Module Guide 124

Table 21m Rfsms.exe Command Line Options (Continued) Table 21n Description of the Example Command Line Above (Continued)
Option Description Element3 Description
{-mFile| Specify a file name containing the alert text, or -d$1 Maps to the {{SMS}} FCL code.
”MessageText”} enter the alert text between quotes. If you
-m$$ The file containing the alert text to send.
specify the message text in quotes, do not use
the -m switch.
-v
Sending notifications via 3270 emulation
Enables verbose event logging.
To create a notification channel that sends messages via 3270
[-fRFServer] The name of the RightFax server on which the using high level language application programming interface
SMS service specified with the -s option (HLLAPI), use Hlpisend.exe.
resides. This is only required if the SMS
service is not on the current server. Syntax hlpisend [options] filename
[-uUserID] The RightFax user ID required to log on to the Table 21o Hlpisend.exe Command Line Options
RightFax server. This is only required if you are
not using a trusted account. Option Description

[-pPassword] The password for the RightFax user ID -c Do not clear screen before notifying.
specified with the -u option. -e character Set escape character.
-E Do not send enter after sending file.
Example rfsms -fRFServer -uAdministrator -pPassword
-sRFPPG -d$1 -m$$ -h Displays online help for Hlpisend.exe.
-H number HLLAPI emulation package
Table 21n Description of the Example Command Line Above 1=Attachmate (default)
Element3 Description 2=WRQ
3=Rumba
rfsms The name of the executable file that will process 4=IBM Personal Com
the notification. 5=NetSoft Elite (not supported)
-fRFServer The name of the RightFax server on which the -i Interact with host (filename is a script).
specified Pager/SMS service resides.
-l script Specify login script.
-uAdministrator The RightFax user ID used to log on to the
server. -p delay Set host power-up delay.

-pPassword The password for the specified user ID. -S SSCP invalid for input.

-sRFPPG The service ID of the Pager/SMS service in -s number Set session number.
RightFax that sends SMS messages. -t Use file transfer.
Table 21o Hlpisend.exe Command Line Options (Continued) This program uses a Perl script used to log on to an FTP server and
Option Description transfer files. In the command line, you must supply a host name,
user name, and password. Ftpit.bat creates a remote file name
-v Display verbose messages. called jcl###, or you can specify the file name in the command line.
-w seconds Specify wait after input. Syntax ftpit [options] hostname username password localfile

Example hlpisend -s A -H 2 -l login.inc $$ Table 21q Ftpit.bat Command Line Options


Option Description
Table 21p Description of the Example Command Line
-h Display online help for Ftpit.bat.
Element Description
-A account Account name.
hlpisend The name of the executable file that will process
the notification. -a file name Remote file to append to.
-s A The HLLAPI shortname of the session. A is the A -c command Quote command (such as LRECL (80)).
session. B is the B session, etc. -r directory Remote destination directory.
-H 2 The number for the HLLAPI emulation package. In
this case, 2 = WRQ. Example ftpit yourhost.com franklins qwerty $$
-l login.inc The file name of the login script for the session.
Login.inc is created custom for every install. Table 21r Description of the Example Command Line

$$ The file name of the document. Element Description


ftpit The name of the executable file that will
Sending notifications via FTP process the notification.
To create a notification channel that sends messages via FTP, use yourhost.com The name of the FTP host to which the
Ftpit.bat. notification will be sent.
franklins The name of the user to whom the notification
will be sent.
qwerty The password for the user and host.
$$ The file name of the document.

Chapter 21 Setting Up Notification Messages of Document Transmission 125


RightFax 9.4 Integration Module Guide 126

Sending notifications via IBM WebSphere MQ Table 21s Mqput.exe Command Line Options (Continued)
To create a notification channel that sends messages via IBM Option Description
WebSphere MQ, use Mqput.exe.
-s Make messages persistent. If the server is
This program submits a message to a specified remote queue. restarted, the IBM WebSphere MQ server will
Mqput.exe receives the body of the message from standard input store messages so that they can be accessed after
(STDIN) or from a file that you specify in the command line. the server is restarted.
Syntax mqput -C channel -H hostname -M queue manager -Q -v Display version information.
queue [options] -1 Selects Version 1 of the WebSphere MQ
Application Programming Reference.
Table 21s Mqput.exe Command Line Options
This option must be used because MQPut.exe is
Option Description not designed to work with the WebSphere MQ API
-C channel Name of the IBM WebSphere MQ channel to use Version 2.
for connection. -tCCSID Specifies the codeset name for a language. A list of
-H hostname Fully qualified domain name of the IBM the codeset IDs (CCSIDs) supported by
WebSphere MQ queue manager. WebSphere MQ is available from IBM.

-M queue IBM WebSphere MQ queue manager to connect Example mqput -C RF_Chan -H qmmaster2 -M RightFax -Q
manager to.
RF_Notify -i $$ -p 1414 -1
-Q queue IBM WebSphere MQ queue to retrieve messages
from.
Table 21t Description of the Example Command Line
-d Display debugging output. This is helpful if you
experience difficulty connecting to the server. Element Description
-e days Days until message expires. Default is no mqput The name of the executable file that will
expiration. process the notification.
-f If the message fails in delivery to the destination -C RF_Chan The IBM WebSphere MQ channel name.
queue, cancel it rather than put it in the dead-letter -H qmmaster2 Indicates that the fully qualified domain name of
queue. This is helpful during testing or initial setup. the IBM WebSphere MQ queue manager will
-i input Source of data to send to the queue. Input can be come next.
a file or standard input (STDIN). If no file is -M RightFax The IBM WebSphere MQ queue manager.
specified, STDIN is the default.
-Q RF_Notify The IBM WebSphere MQ queue name.
-p port TCP/IP port number to use for remote connection.
The default is 1414. -i $$ The file name of the document.

-r priority Message priority. The default is 0. -p 1414 The TCP/IP port number.
Sending notifications to Lotus Notes Sending notifications to Microsoft Exchange
To create a notification channel that sends messages to a Lotus To create a notification channel that sends messages to an
Notes system using the Notes API, use Fax2note.exe. Exchange system using MAPI, use Fax2mapi.exe.
Syntax fax2note [options] recipient Syntax fax2mapi [options]

Table 21u Fax2note.exe Command Line Options Table 21w Fax2mapi.exe Command Line Options
Option Description Option Description
-t e-mail Recipient(s). Multiple recipients must be separated -a file name Attach the specified file.
address by a semicolon (;) and enclosed in quotation marks
-f file name Name of an ASCII text file to use as the message
(“). Recipients must not be ambiguous in default
body.
address book.
-i file name Name of an ASCII text file to use as the message
-s The subject line of the e-mail message.
body.
-a Identifies a file to attach to the e-mail message.
-k Keep sent mail.
-f Identifies an ASCII text to use as the body of the
-p password Profile password.
e-mail message.
-q CSID CSID associated with the FAX address type of
-o Identifies the owner of the e-mail message.
recipient. This option overrides any address
specified with -t.
Example fax2note -t “$o” -s “Fax Notification” -f $$
-r DID DID associated with the FAX address type of
recipient. This option overrides any address
Table 21v Description of the Example Command Line
specified with -t.
Element Description
-s subject Subject line of the e-mail message.
fax2note The name of the executable file that will
-t e-mail E-mail address for recipient(s). Multiple recipients
process the notification.
address must be separated by a semicolon (;) and enclosed
-t “$0” The recipient of the notification. The recipient in quotation marks (“). Recipients must not be
will be obtained from the {{owner}} FCL ambiguous in default address book.
command in the document received from the The -q and -r options override the -t option.
host application.
-u profile Mail profile name.
-s “Fax The subject line of the notification message.
Notification” -z File (in RTF format) to be used as a message body.

-f $$ The file to be used as the message body. The


content of the notification template file will Example fax2mapi -t “$o” -s “Fax Notification” -f $$ -u “MS
replace the $$ variable. Exchange Settings”

Chapter 21 Setting Up Notification Messages of Document Transmission 127


RightFax 9.4 Integration Module Guide 128

is sent. The channel keyword specifies the channel. The channel


Table 21x Description of the Example Command Line can either be an channel number (from 1 to 128) or name. If no
channel is specified, the default channel will be used, number 16.
Element Description
Syntax {{notifyhost success.inc failure.inc channel}}
fax2mapi The name of the executable file that will
process the notification. Examples {{notifyhost mysucc myfail mynotify}}
{{notifyhost none myfail mynotify}}
-t “$0” The recipient of the notification. The recipient
will be obtained from the {{owner}} FCL The first example shows that if the document is sent successfully,
command in the document received from the the Integration Module will create a notification based on a
host application. template called “mysucc.” The “.inc” extension is the default, as is
-s “Fax The subject line of the notification message. the path to the Include folder. If the document fails to send
Notification” properly, the “myfail” template is used.

-f $$ The file to be used as the message body. The In either case, the notification is sent via the channel that is named
content of the notification template file will “mynotify.”
replace the $$ variable. The second example sends a notification (based on the template
-u “MS Exchange The mail profile name. Myfail.inc) if the document fails to send. Because “none” is entered
Settings” instead of the success template name, no message will be sent if
the document is transmitted successfully.
The {{notifyhost}} command can be included in the document from
Including the {{Notifyhost}} Command in the host application to the Integration Module, or you can insert it in
an include file. For information on include files, see Chapter 13,
Documents
“Including the Same Files and Commands in Many Documents”.
The third step in creating notifications is to include the
{{notifyhost}} FCL command in the document from the host Creating the {{Notifyhost}} command
application. This command specifies the notification template. It
The {{notifyhost}} command must contain:
also specifies the notification channel, as created in the RightFax
Integration Module Configuration program. The name of the success template, as described in ““Creating
Notification Templates” on page 112.
In the syntax shown below, the template files (Success.inc for
successful documents and Failure.inc for failed documents) are The name of the failure template, as described in ““Creating
specified. If the template name is not specified, then no notification Notification Templates” on page 112.
The notification channel number or name, as described in
““Creating Notification Channels” on page 118.
The following example shows an FCL document that includes a
{{notifyhost}} command.
{{begin}} Table 21y Notification FCL Commands (Continued)
{{fax 503-555-1234}} Command Description
{{notifyhost notifysuccess.inc notifyfail.inc 1}}
{{company Acme Steel Company}} {{Comment}} Any user-defined message specific to the
{{contact John Smith}} document.
{{comment Inv. # 12345}} This command is most often used to populate
{{user1 JB1234KU-6789DJJS}} variables in cover sheets but is sometimes used
{{owner William Murray}} with notifications.
{{end}} {{Company}} The company name for the document.
This command is most often used to populate
variables in cover sheets but is sometimes used
Other FCL used in notifications with notifications.
A number of informational FCL commands can be used for {{Contact}} The contact name for the document.
notifications. These commands store information about the sender
of the document so that notification messages can be sent This command is most often used to populate
variables in cover sheets but is sometimes used
specifically to that person, department, terminal, or another
with notifications.
destination.
{{CSI}} The CSID. This is usually the general fax number
The following table lists these commands and gives a brief
for the enterprise.
explanation. For more detailed information on each of the
commands, see Appendix B, “FCL Commands”. For a comparison You can set a default CSID in the Integration
of the commands listed here and the keywords that you can use in Module Configuration program. See Chapter 9,
“Setting Defaults for FCL Documents”.
notification templates, see “Table 21a: Notification Keywords and
FCL Equivalents”. {{Dept}} The department of the fax owner.
{{Email}} The e-mail address for the recipient of the
Table 21y Notification FCL Commands
notification message.
Command Description {{EmpID}} The employee ID of the fax owner.
{{Billing}} The billing code of the document owner. This command is sometimes used to populate
This command is sometimes used to populate variables in cover sheets.
variables in cover sheets. {{Owner}} The document owner’s name.
{{Billing2}} A secondary billing code of the document owner. This command is most often used to populate
This command is sometimes used to populate variables in cover sheets but is sometimes used
variables in cover sheets. with notifications.

Chapter 21 Setting Up Notification Messages of Document Transmission 129


RightFax 9.4 Integration Module Guide 130

Table 21y Notification FCL Commands (Continued) Table 21y Notification FCL Commands (Continued)
Command Description Command Description
{{ReplyTo}} The recipient for the notification. You can request {{UserID}} The RightFax user ID of the creator of this
that an HTTP post be sent back to the host as a document.
notification when you use the RightFax XML This command is sometimes used to populate
Interface. ReplyTo is the field in the submit post variables in cover sheets.
that the RightFax XML Interface populates to
determine where to send the notification. {{Voice}} A voice telephone number.
This command is sometimes used to populate
{{TermID}} The ID of the terminal from which the document
variables in cover sheets.
originated.
This command is sometimes used to populate
variables in cover sheets.
{{TranID}} The ID of the transaction that produced the
document.
This command is sometimes used to populate
variables in cover sheets.
{{UniqueID}} An identification number for each destination (fax
number) within the document.
This command is used most often for tracking. The
Integration Module will generate a UniqueID unless
you specify one in the FCL. Then, you can track the
document in FaxUtil based on the UniqueID.
Secondarily, this command is sometimes used in
cover sheets and with notifications.
{{User1}} User-defined data, such as the originator of the
{{User2}} document (person, group, or other information).
{{User3}}
Chapter 22
Testing and Troubleshooting Notification Messages

This chapter describes methods for testing that the Integration The information presented here is not specific to the various
Module is correctly sending notifications to the host application notification methods you might have already created. Rather, this
using the notification channels that are described in Chapter 23, procedure is presented in general terms that can be applied to any
“Setting Up Actions on Document Transmission”. notification type. If you are unable to successfully troubleshoot
The simplest way to test that notifications are being received failed notifications, you can contact Captaris Customer Support.
properly is to send a test document. If the correct notification is 1. Send a test document from the host to the Integration Module.
received using the correct channel, then the channel is configured You might use the {{fax}} command to have the Integration
correctly. If not, then you can use this chapter to troubleshoot the Module send the document. Besides {{fax}}, the test document
problem. must at least include {{begin}}, {{end}}, the correct
Note that notification messages are not generated by the {{notifyhost}} command, and some sample text.
Integration Module for incomplete faxes. Usually, such faxes are 2. Verify that you receive a notification from the Integration Module
missing information that is required for sending. For more in the location that you specified when you created the
information, see “Creating Notification Messages with FCL” on notification channel.
page 111.
3. Verify that you receive a notification that contains the correct
information (it should be the same as the notification template
Testing That the Host Application Is Correctly that you created).

Receiving Notifications If you do not receive a notification, or if the notification does not
contain the correct information, then see “Troubleshooting”on
The following procedure requires that you have already created a page 132.
notification channel, created a notification template, and created
the {{notifyhost}} command that will identify the channel and Testing IBM WebSphere MQ connections
template. For information on these procedures, see Chapter 21,
“Setting Up Notification Messages of Document Transmission”. This procedure applies to IBM WebSphere MQ connections. It
verifies that data is flowing from the Integration Module to the host
(as opposed to verifying that the host received a notification).

131
RightFax 9.4 Integration Module Guide 132

This procedure requires that you have correctly configured: Troubleshooting


The host to receive data from the Integration Module Use the following flowchart and the corresponding numbered
The Mqput.exe notification channel on the Integration Module paragraphs on the next page to identify the source of the error.
(see “Sending notifications via IBM WebSphere MQ” on
page 126) Figure 22.2 Troubleshooting Notifications
1 2
To test the Integration Module-to-Host connection for IBM Did your host receive
Yes
Check the {{notifyhost}}
command to verify that you
Check the template itself to
verify that you have
Correct any errors and resend
any notification? the document.
WebSphere MQ have identified the correct
template.
configured it correctly.

1. Open a command prompt window. No

2. Enter the command you entered in the Command line box in 3 4


the Add Output Device dialog box when you created the Look in FaxUtil.
Are any faxes Yes
Run Notify.exe in
debug mode.
being sent?
notification channel.

Warning Command line options are case-sensitive. If you do not No

5 6
enter the command here exactly as you did in the Add Output See theRightFax Administrator's
Guide. Does it appear Is the {{notifyhost}} Insert the {{notifyhost}} command
Device dialog box, errors will occur. to be attempting No command in your No in your FCL and
notifications? FCL document? resend the document.

3. Press ENTER.
Yes

Figure 22.1 Testing IBM WebSphere MQ Notifications Yes


7
Does the
Correct the errors and
{{notifyhost}} command Yes
resend the document.
have any errors?

No

8
Does the command Correct the errors and
Yes
line have any errors? resend the document.

If the notification channel connection is successful, then you should


see messages similar to those shown in “Figure 22.1: Testing IBM No

WebSphere MQ Notifications”. If the output connection is not 9


successful, then you will see error messages. Check your network, etc.
1. If you have created several templates with similar names, a 6. One reason that Notify.exe would not appear to be attempting
minor typographical error can identify the wrong template, notifications is that the {{notifyhost}} command is absent from
resulting in a notification that contains errors and nonpopulated the host data stream. The error in this case is commonly that the
keywords. If you specify a template that does not exist, then no command exists but is misspelled, is missing one or more of its
notification can be created or sent. braces, or contains another syntax error that causes Notify.exe
2. The template must contain valid (and correctly spelled)
to not identify it. When this is the case, Notify.exe will return a
keywords. For a list of valid keywords, “Table 21a: Notification message such as “Check Notify <ID number>” with no more
Keywords and FCL Equivalents” on page 113 text after it. This message means that Notify.exe is checking its
queues; when no more text comes after this message, then
3. When you do not receive a notification after sending a Notify.exe found no queued notifications.
document, the first step should be to verify that the RightFax
7. If Notify.exe appears to be attempting a notification, examine the
server is sending data. Open FaxUtil and verify that faxes are
being sent. If no faxes are being sent, then no notifications can {{notifyhost}} command in the FCL document. Common
be sent. problems include:

4. If you verified in FaxUtil that faxes are being sent, then run
A template that does not exist (Notify.exe will return a
Notify.exe in debug mode to proceed. message such as “Unable to include file: <path>.inc”).
A notification ID that does not exist (Notify.exe will return a
Stop Notify.exe from the Process tab in Windows Task
message such as “Cannot find notify channel [#], defaulting
Manager.
to [#]” or “Executing Copy C:\temp\<document
Open a command prompt window. number>.NT1 NUL”). In the case of the second message, the
Type notify.exe, and then press ENTER. file is being copied to NUL (being deleted). This happens
because Notify.exe uses the default ID (16) when no ID
The information that appears will indicate the status of
exists. The default action for ID 16 is to copy to NUL; thus, if
Notify.exe.
you leave ID 16 unchanged, then files that are being copied
5. When Notify.exe is attempting to send a notification, you will see to NUL probably have no ID associated with them. If you
information in the command prompt window that describes the have changed the action for ID 16 (Captaris recommends
error (see the next steps for more information). If Notify.exe that you do not do this), then nonexistent IDs will result in the
returns a message such as “Checking no record,” then it is not action that you specified for ID 16.
receiving a signal that a document has arrived at the Integration
Module. In this case, you must check the connection (see
Chapter 7, “Testing a Connection and an Input Device”).

Chapter 22 Testing and Troubleshooting Notification Messages 133


RightFax 9.4 Integration Module Guide 134

8. Check the command line you created for the notification


channel (see “Creating Notification Channels”on page 118).
Common problems include:
A misspelled or invalid executable file, or (if you specified a
path to the executable) the wrong path. (You will see a
message such as “The name specified is not recognized as
an internal or external command, operable program, or batch
file”).
Omitted or wrong variables or switches; incorrect syntax
(Notify.exe will return a message specific to the executable or
command that you used).
In some cases, depending on the command, executable, or
other command line elements, Notify.exe will not return an
error message even though the command line contains an
error.
9. If you have not yet found an explanation for the problem, it is
likely that the Integration Module is processing and sending the
notification correctly. The error is probably somewhere else,
such as the network, host computer, or host application. Further
evidence would be Notify.exe returning a message such as “1
file(s) copied. Function returned 0: success” (or a similar
message indicating a successful action based on the
executable or command you used in the command line). This
means that Notify.exe has sent the notification. If you did not
receive it, then the error is probably outside of the Integration
Module.
Chapter 23
Setting Up Actions on Document Transmission

This chapter explains how to configure the Integration Module to Setting the default “success” action
notify you when a document has been sent or has errors in When a document is successfully transmitted, a copy of the
transmission by setting an action, such as printing or faxing a copy document can be sent to another recipient as a notification of the
of the document to another recipient. This can serve as a transmission.
notification that the document needs attention.
These actions are similar to notification messages (described in To set the success action
Chapter 21, “Setting Up Notification Messages of Document
Transmission”). Notification messages are informative—they can 1. From the Start menu, select Programs > RightFax >
describe whether or not a document was transmitted, transmission Enterprise Fax Manager. The Enterprise Fax Manager
errors, and other information such as the date and time of window appears.
transmission and the owner of the document. 2. In the Fax Servers list, click the name of the server on which the
Integration Module is running.
3. In the Service Name list, double-click RightFax Integration
Printing or Faxing a Copy of a Document That Was Module. The Integration Module Configuration window
Transmitted appears.
You have two options for establishing actions that occur when
documents are transmitted successfully:
Set defaults in the Integration Module Configuration program.
Use the {{onsuccess}} FCL command in a document to override
the default.

135
RightFax 9.4 Integration Module Guide 136

4. In the left pane, click General continued. 6. Under Delete Options, select the option corresponding to
when you want the fax images deleted from the server.
Figure 23.1 The General Continued Settings
Never Fax images will never be automatically deleted
from the server.
On Success Fax images will be automatically deleted from
the server only when they have been sent
successfully.
Always Fax images will be automatically deleted from
the server on both successful and failed
transmission attempts.

7. Click OK.

Using the {{onsuccess}} command to set “success”


actions for a document
To set “success” actions for a document and override the default,
add the {{onsuccess}} command to the FCL. In the following
example, a copy of the document will be faxed to another recipient
if it is successfully transmitted.
{{begin}}
5. Under Fax Options, select Fax on Success or Fax on Error to {{onsuccess fax}}
send the fax to a new recipient on these events. If you select {{fax 503-555-4489}}
either of these options, you must also enter a destination fax Body of the document to be sent.
number in the To Number field. {{end}}
Note The document also can be e-mailed or sent for certified You can specify destinations of delete, certified, fax, email, mime,
delivery using the FCL commands {{type email}}, {{type certified}}, or or nothing with the {{onsuccess}} FCL command. For detailed
{{type mime}}. For more information, refer to Chapter 11, “Specifying information on the {{onsuccess}} command, including syntax and
the Destination of the Document”. examples, see Appendix B, “FCL Commands”.
Printing or Faxing a Document That Cannot Be 4. In the left pane, click General continued.
Transmitted Figure 23.2 The General Continued Settings
You have two options for establishing actions that occur when
documents are not sent:
Set defaults in the Integration Module Configuration program.
Use the {{onerror}} FCL command in a document to override the
default.

Setting the default “error” action


When a document cannot be successfully transmitted, a copy of
the document can be sent to another recipient as a notification of
the failure.

To set the error action

1. On the Start menu, select Programs > RightFax > Enterprise


Fax Manager. The Enterprise Fax Manager window appears.
2. In the Fax Servers list, click the name of the server on which the
Integration Module is running.
3. In the Service Name list, double-click RightFax Integration
Module. The Integration Module Configuration window
appears.

Chapter 23 Setting Up Actions on Document Transmission 137


RightFax 9.4 Integration Module Guide 138

5. Under On error, select one of the following options. Performing Actions on Documents With Missing
Table 23a On error Options Data
Option Description When the Integration Module processes a document, it extracts
data from the FCL commands before it creates and sends the
Nothing No action will be taken.
document. To notify you that a document is missing data that is
Delete The fax image will be deleted from the fax server. required to send the document, you can send the document to
Fax Fax the document to another recipient. another recipient in order to troubleshoot the error.
Enter a fax number in the To number: box.
To set default actions
Select Delete when finished to delete the fax
image from the fax server. 1. From the Start menu, select Programs > RightFax >
Enterprise Fax Manager. The Enterprise Fax Manager
Note The document also can be e-mailed or sent for certified window appears.
delivery using the FCL commands {{type email}}, {{type certified}}, or 2. In the Fax Servers list, click the name of the server on which the
{{type mime}}. For more information, refer to Chapter 11, “Specifying
Integration Module is running.
the Destination of the Document”.
3. In the Service Name list, double-click RightFax Integration
6. Click OK. Module. The Integration Module Configuration window
appears.
Using the {{onerror}} command to set “error” actions for a
document
To set “error” actions for a document and override the default, add
the {{onerror}} command to the FCL. In the following example, a
copy of the document will be faxed to another recipient if it is not
successfully transmitted.
{{begin}}
{{onerror fax}}
{{fax 503-555-4489}}
Body of the document to be sent.
{{end}}
You can specify destinations of delete, certified, fax, email, mime,
or nothing with the {{onerror}} command. For detailed information
on the {{onerror}} command, including syntax and examples, see
Appendix B, “FCL Commands”.
4. In the left pane, click FCL Processor. 7. To send the document using a notification channel, select
Execute command line, and then enter an appropriate
Figure 23.3 The FCL Processor Settings command line. To do so, refer to the instructions for writing
notification command lines in Chapter 21, “Setting Up
Notification Messages of Document Transmission”.
Example The document can be sent to Microsoft Exchange as an
e-mail message. Therefore, in the Execute command
line box, you enter:
fax2mapi -t [email protected] -f $$ -u “MS
Exchange Settings”
When a document fails because data is missing, the
Integration Module will send it to the e-mail address
[email protected].

5. To print the document, select Print FCL to printer, and then


enter the name of the printer as defined in the Enterprise Fax
Manager.
6. To fax the document, select Fax FCL to number, and enter the
fax number.

Chapter 23 Setting Up Actions on Document Transmission 139


RightFax 9.4 Integration Module Guide 140
Chapter 24
Programming for the RightFax XML Interface

The RightFax XML Interface converts XML to FCL. For host The availability of XML Interface functions depends on the method
applications that produce XML and can’t be modified to produce of transport.
FCL, the RightFax XML Interface provides a beneficial option.
Table 24a XML Interface Transport Methods and Functions
When the Integration Module receives an XML-based document,
the RightFax XML Interface converts it to an FCL-encoded IBM
document. HTTP or WebSphere
Action HTTPS File MQ
Action Yes Yes Yes
Introduction to the RightFax XML Interface Action Reply Yes Yes No
The XML Interface software performs four functions (submit, query, Notification Yes Yes Yes
action, and notification) via three methods of transport (HTTP or
HTTPS, FTP, and IBM WebSphere MQ). XML Interface Query Yes Yes No
functionality is achieved by creating XML documents that adhere to Query Reply Yes Yes No
RightFax schemas (page 147). Submit Yes Yes Yes
The RightFax API for Java is for Java programmers. It provides an Submit Reply Yes Yes No
alternate method of creating and sending XML to the RightFax
server. The API for Java allows access to XML Interface
functionality without requiring that a customer know XML or the
RightFax XML Interface schemas. For more information on the API Installing the XML Interface
for Java, see Chapter 25, “Programming for the RightFax API for
Java”. Note RightFax provides programming interfaces for both XML and Java.
These interfaces are both installed when you run the XML installation.

141
RightFax 9.4 Integration Module Guide 142

Minimum System Requirements IIS User Account. In IIS, configure the rfxml website with an IIS
In addition to the minimum system requirements for the RightFax user account that RightFax will use to access the IIS server. This
server and Integration Module, Microsoft Internet Information account is required for Java development.
Server (IIS) version 6.0 or later must be installed on the RightFax Additional XML development tools are located in the
server. \Program Files\RightFax\Production\XML folder.
If you are installing the XML interface on a server running IIS
version 6.0, Active Server Pages and ISAPI Extensions must be
enabled. Parent Paths must also be enabled, either for the Default XML Interface Functions
Web Site as a whole, or for the RFXML virtual directory which
Note that not every function is available for each transport method.
appears after the installation of the Java/XML API.
For more information, see “Table 24a: XML Interface Transport
If you are installing the XML interface on a server running IIS Methods and Functions”.
version 7.0, you must enable CGI modules and ISAPI modules.
Parent Paths must also be enabled, either for the Default Web Site Submit
as a whole, or for the RFXML virtual directory which appears after
To send an outgoing document, use the submit function. This
the installation of the Java/XML API.
function is governed by the schema XML_FAX_SUBMIT, which
defines the optional and required XML tags needed to submit a
Installing the XML Interface document to be sent by the RightFax server. The submit schema
Follow the instructions for installing the RightFax server in the includes information such as fax number, contact name, owner, and
RightFax Installation Guide and use the following specific steps: attachments.
On the Setup Type screen, select Custom and then click Next. When you submit a document, you have the option of creating a
On the Setup Features screen, expand the RightFax Server unique ID for each recipient or letting the RightFax server assign a
heading in the components tree and select the Java/XML API unique ID for you. For unique IDs that the software creates, the
component to install. Click Next. format is:
After the RightFax server and Java/XML API component is installed The first seven characters are the name of the RightFax server
and activated, you must configure an SMTP host and an IIS user The last eight characters are a number unique to a document
account for the rfxml website.
Note If you create your own unique ID, it must be 15 characters or less.
SMTP Host. Open the RightFax Server Module and click the
e-transport tab. Enter the name of the SMTP server on your When creating an XML document, it must match the RightFax XML
network that will transport all SMTP alerts and notifications schema (see “The Schemas” on page 147). If the document does
regarding the RightFax server. If you will not be using SMTP to not match the applicable schema—out of preference, convenience,
deliver RightFax alerts and notifications, you can leave this option or any for other reason—then you must create an XSLT to convert
blank. the document to the RightFax schema. Or, you can create an XSLT
to convert the document directly to FCL.
The companion to XML_FAX_SUBMIT is Notification
XML_FAX_SUBMIT_REPLY, which informs you of each recipient’s To receive a notification that a document was or was not sent
unique ID (if you did not create your own when you submitted the successfully from the RightFax server, create a notification that
document). The reply includes a message such as “Document has uses the XML_FAX_NOTIFICATION.INC template. This function is
been submitted for sending,” indicating that the first step has been governed by the schema XML_FAX_NOTIFICATION, which
completed successfully. If you configured RightFax to return a defines the XML tags used to create a notification. Notifications are
notification when the document transmission is completed, then a one-way transaction. That is, the client cannot “notify” the server.
you will also receive an XML_FAX_NOTIFICATION report on the Rather, the user includes a notification request when using the
status of the transaction that is more detailed than submit function, and the server sends a notification when the
XML_FAX_SUBMIT_REPLY. submitted document is either sent successfully or not sent
successfully.
Query
The notification function is different from the submit-reply function.
To determine the status of any document in the RightFax system, The message returned with submit-reply states that the server has
including those not originating from XML, use the query function. received the document from the client. The message returned with
This function is governed by the schema XML_FAX_QUERY, which notification states that the server has sent (or not sent) the
defines the optional and required XML tags needed to submit a document to its destination.
query to the RightFax server. The query schema includes search
criteria such as date, time, and unique ID. For information on creating notifications, see Chapter 21, “Setting
Up Notification Messages of Document Transmission”.
The companion to XML_FAX_QUERY is
XML_FAX_QUERY_REPLY, which is a report informing you of the
query results. Transports
Action Note that some transport methods do not support all of the
RightFax XML Interface functions. For more information, see “Table
To perform an action on a sent or received document, use the
24a: XML Interface Transport Methods and Functions”.
action function. This function is governed by the schema
XML_FAX_ACTION, which defines the optional and required XML You can provide transport and access list security using standard
tags needed to perform the action. You must specify the relevant mechanisms. Use HTTPS instead of HTTP to achieve transport
document with its unique ID, and then include instructions to encryption. The Web server providing the RFWebCon.dll resource
delete, forward, or create a library document. can also generate user, IP address, and domain restrictions.
The companion to XML_FAX_ACTION is The XML Interface software supports three transport methods:
XML_FAX_ACTION_REPLY, which is a report informing you of the HTTP or HTTPS, FTP, and IBM WebSphere MQ. You can also use
status of the action you requested. the RightFax API for Java to create and send XML via HTTP (see
Chapter 25, “Programming for the RightFax API for Java”).

Chapter 24 Programming for the RightFax XML Interface 143


RightFax 9.4 Integration Module Guide 144

HTTP or HTTPS transport Example HTTP/S Post


The HTTP/S transport sends XML to and from the client/server by
executing a series of HTTP/S post methods (RFC 2616 [1]). You Table 24b Example HTTP/S Post
can perform three posts (submit, query, and action) and receive a Call Response
success or failure notification from the RightFax server. All XML
POST /RFWebCon.DLL HTTP/1.1 200 OK
Interface functions are supported.
HTTP/1.1 Content-Type: text/xml
Each HTTP/S post is formatted with the library name of the Host: www.captaris.com Content-Length: nnnn
Captaris connector (RFWebCon.dll) and the method to be
Content-Type: text/xml X-Captaris-Method: submit_reply
executed stored in the X-Captaris-Method field. Valid methods are
submit, query, and action. The format of the post line includes Content-Length: nnnn
standard HTTP headers as well as XML data. X-Captaris-Method: submit <XML_FAX_SUBMIT_REPLY>...
</XML_FAX_SUBMIT_REPLY>
Figure 24.1 HTTP/HTTPS Transfer Protocol for XML Documents
<XML_FAX_SUBMIT>...
</XML_FAX_SUBMIT>

HTTP/S Attachments
Attachments are valid only for the submit function.

Inline
XML does not support binary data. To be included inline with the
XML, binary attachments must be encoded using BASE64.
BASE64 represents binary data using a 64-character subset of
International Alphabet IA5. For information on implementation
details of BASE64, see RFC 1421 [2].

Multipart MIME
When attachments are included inline, they significantly increase
the size of the XML message. Some XML parser implementations
load the entire XML message into memory, which causes
performance degradation when large messages are processed.
An alternative to inline attachments is to encapsulate the XML
message and attachment using multipart MIME. Specifically,
multipart or mixed content type is used to separate the XML
document from each attachment. The first attachment with the
text/XML media type listed for its content type is considered the Some methods, such as printer input, do not contain a mechanism
XML_FAX_SUBMIT document. All other documents within the to receive a reply.
MIME message are considered attachments to be included with
the message. Figure 24.2 File Transfer Protocol for XML Documents

Replies (XML_FAX_REPLY) are never returned as multipart MIME


messages. The data contained within a reply is minimal and does
not include binary attachments.

HTTP or HTTPS notifications


To receive notifications in this manner, you must provide an HTTP
listener. The application Postfile.exe can be used to send
messages from the RightFax server, but it needs the path to the
HTTP listener for you to actually receive the message.

File transport
File transport for XML allows an XML document to be processed
using a command line executable (Parsexml.exe). When combined
with existing Captaris technology, this can be used for printer input,
directory scanning, and various other input methods.

Command line syntax


parseXML [options] <xmlfile> [attachments]
Example
parseXML submit.xml po.doc list.pdf
Command line options
-q—XML input is Query document. Default is Submit document.
-a—XML input is Action document. Default is Submit document.
-f—<filename> Output reply XML to this file.

Chapter 24 Programming for the RightFax XML Interface 145


RightFax 9.4 Integration Module Guide 146

File transport attachments IBM WebSphere MQ transport


Attachments are valid only for the submit function. IBM WebSphere MQ acts as an intermediary in connecting the
host application to the RightFax server software. It offers multiple
Inline connection options and requires some advanced configuration. For
more information, see the IBM’s WebSphere MQ documentation.
XML does not support binary data. To be included inline with the
XML, binary attachments must be encoded using BASE64. Figure 24.3 IBM WebSphere MQ Transfer Protocol for XML Documents
BASE64 represents binary data using a 64-character subset of
International Alphabet IA5. For information on implementation
details of BASE64, see RFC 1421 [2].

File attachments
When attachments are included inline, they significantly increase
the size of the XML message. Some XML parser implementations
load the entire XML message into memory, which causes
performance degradation when large messages are processed. An
alternative to inline attachments is to include them as separate files.
In the following example command line, po.doc and list.pdf are
attached files:
parseXML submit.xml po.doc list.pdf

IBM WebSphere MQ attachments


Attachments are valid only for the submit function.

Inline
XML does not support binary data. To be included inline with the
XML, binary attachments must be encoded using BASE64.
BASE64 represents binary data using a 64-character subset of
International Alphabet IA5. For information on implementation
details of BASE64, see RFC 1421 [2].
Understanding Body and Cover Text 4. Copy the encoded data into the XML node.
Example In the following example, the cover text is rich text format
Body and cover text is relevant only for the submit function. The
data for the body and cover_text nodes can be any file format. Plain (.rtf) and the body text is in Microsoft Word (.doc) format.
text (ASCII) allows for the simplest transition to XML, but any …
format is acceptable. Rich Text Format (.rtf) and Microsoft Word <!--The body is a Word document, and the cover text is
Document (.doc) formats are examples of formatted text files. RTF.-->
<COVER_TEXT type=”RTF”>
Using plain text data {\rtf1\ansi\ansicpg1252\uc1 ………\par }}
</COVER_TEXT>
If the data is in plain text (such as .txt) format, then copy the data
<BODY type=”DOC” encoding=”BASE64”>
straight into the XML nodes, with no additional attributes needed.
0M8R4KGx…….AAAAAAAAA=
</BODY>
Using formatted text data
If the data is not plain text format, then:
1. Use the type attribute, setting it to the extension associated The Schemas
with that document type. The schemas listed in this section define the structure and type of
2. Copy the data into the XML node. content that the RightFax server can accept in XML documents.
When creating an XML document, it must match the applicable
Using binary data schema described in this section. If the document does not match
the applicable schema, then you must create an XSLT to convert
If the data is binary (.doc, .pdf, etc.), then:
the document to the RightFax schema. Or, you can create an XSLT
1. Encode the data using BASE64 encoding. to convert the document directly to FCL. For sample documents,
2. Use the type attribute, setting it to the extension associated “Sample Documents Based on the Schemas” on page 157.
with that document type.
3. Use the encoding attribute, setting it to the type of encoding.

Chapter 24 Programming for the RightFax XML Interface 147


RightFax 9.4 Integration Module Guide 148

XML_FAX_SUBMIT_schema
For an example document based on this schema, “XML_FAX_SUBMIT” on page 157.
<?xml version=”1.0” encoding=”UTF-8”?>
<!--rfxml version=”2.0” -->
<Schema name=”XML_FAX_SUBMIT” xmlns=”urn:schemas-microsoft-com:xml-data” xmlns:dt=”urn:schemas-microsoft-com:datatypes”>
<ElementType name=”SEND_DATE_TIME” model=”closed” content=”textOnly” dt:type=”dateTime.tz”/>
<ElementType name=”INCLUDE_BEG” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”ADD_LIBDOC” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”INCLUDE_END” model=”closed” content=”textOnly” dt:type=”string”/>
<!--SENDER element-->
<ElementType name=”FROM_NAME” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”EMP_ID” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”FROM_COMPANY” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”FROM_DEPARTMENT” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”FROM_PHONE” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”RETURN_EMAIL” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”BILLINFO1” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”BILLINFO2” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”REPLY_TO” model=”closed” content=”textOnly” dt:type=”uri”/>
<ElementType name=”RF_USER” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”SENDER” model=”closed” content=”eltOnly” order=”seq”>
<element type=”FROM_NAME” minOccurs=”0” maxOccurs=”1”/>
<element type=”EMP_ID” minOccurs=”0” maxOccurs=”1”/>
<element type=”FROM_COMPANY” minOccurs=”0” maxOccurs=”1”/>
<element type=”FROM_DEPARTMENT” minOccurs=”0” maxOccurs=”1”/>
<element type=”FROM_PHONE” minOccurs=”0” maxOccurs=”1”/>
<element type=”RETURN_EMAIL” minOccurs=”0” maxOccurs=”1”/>
<element type=”BILLINFO1” minOccurs=”0” maxOccurs=”1”/>
<element type=”BILLINFO2” minOccurs=”0” maxOccurs=”1”/>
<element type=”REPLY_TO” minOccurs=”0” maxOccurs=”1”/>
<element type=”RF_USER” minOccurs=”1” maxOccurs=”1”/>
</ElementType>
<!--DESTINATION STUFF-->
<!--Common Recipient elements and attributes-->
<AttributeType name=”unique_id” dt:type=”string”/>
<ElementType name=”INCLUDE_INC” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”TO_NAME” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”INCLUDE_DEF” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”TO_COMPANY” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”TO_CONTACTNUM” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”NOTIFY_HOST” model=”closed” content=”empty”>
<AttributeType name=”SuccessTemplate” dt:type=”string” required=”yes”/>
<AttributeType name=”FailureTemplate” dt:type=”string”/>
<AttributeType name=”Name” dt:type=”string” required=”yes”/>
<attribute type=”SuccessTemplate”/>
<attribute type=”FailureTemplate”/>
<attribute type=”Name”/>
</ElementType>
<ElementType name=”COVERSHEET” model=”closed” content=”textOnly” dt:type=”string”/>
<!--FAX element-->
<ElementType name=”ALT_FAX_NUM” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”TO_FAXNUM” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”FAX” model=”closed” content=”eltOnly” order=”seq”>
<attribute type=”unique_id”/>
<element type=”TO_FAXNUM” minOccurs=”1” maxOccurs=”1”/>
<element type=”INCLUDE_INC” minOccurs=”0” maxOccurs=”1”/>
<element type=”TO_NAME” minOccurs=”0” maxOccurs=”1”/>
<element type=”TO_COMPANY” minOccurs=”0” maxOccurs=”1”/>
<element type=”ALT_FAX_NUM” minOccurs=”0” maxOccurs=”1”/>
<element type=”TO_CONTACTNUM” minOccurs=”0” maxOccurs=”1”/>
<element type=”NOTIFY_HOST” minOccurs=”0” maxOccurs=”1”/>
<element type=”COVERSHEET” minOccurs=”0” maxOccurs=”1”/>
<element type=”INCLUDE_DEF” minOccurs=”0” maxOccurs=”1”/>
</ElementType>
<!--EMAIL element-->
<ElementType name=”SUBJECT” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”CC_EMAIL” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”BCC_EMAIL” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”TO_EMAIL” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”EMAIL” model=”closed” content=”eltOnly” order=”seq”>
<attribute type=”unique_id”/>
<element type=”TO_EMAIL” minOccurs=”1” maxOccurs=”1”/>
<element type=”INCLUDE_INC” minOccurs=”0” maxOccurs=”1”/>

Chapter 24 Programming for the RightFax XML Interface 149


RightFax 9.4 Integration Module Guide 150

<element type=”TO_NAME” minOccurs=”0” maxOccurs=”1”/>


<element type=”TO_COMPANY” minOccurs=”0” maxOccurs=”1”/>
<element type=”TO_CONTACTNUM” minOccurs=”0” maxOccurs=”1”/>
<element type=”NOTIFY_HOST” minOccurs=”0” maxOccurs=”1”/>
<element type=”COVERSHEET” minOccurs=”0” maxOccurs=”1”/>
<element type=”INCLUDE_DEF” minOccurs=”0” maxOccurs=”1”/>
<element type=”SUBJECT” minOccurs=”0” maxOccurs=”1”/>
<element type=”CC_EMAIL” minOccurs=”0” maxOccurs=”1”/>
<element type=”BCC_EMAIL” minOccurs=”0” maxOccurs=”1”/>
</ElementType>
<!--PRINT element-->
<ElementType name=”COPIES” model=”closed” content=”textOnly” dt:type=”i1”/>
<ElementType name=”PRINTER_NAME” model=”closed” content=”textOnly” dt:type=”string”/>
<ElementType name=”PRINT” model=”closed” content=”eltOnly” order=”seq”>
<attribute type=”unique_id”/>
<element type=”COPIES” minOccurs=”0” maxOccurs=”1”/>
<element type=”PRINTER_NAME” minOccurs=”0” maxOccurs=”1”/>
<element type=”INCLUDE_INC” minOccurs=”0” maxOccurs=”1”/>
<element type=”TO_NAME” minOccurs=”0” maxOccurs=”1”/>
<element type=”TO_COMPANY” minOccurs=”0” maxOccurs=”1”/>
<element type=”TO_CONTACTNUM” minOccurs=”0” maxOccurs=”1”/>
<element type=”COVERSHEET” minOccurs=”0” maxOccurs=”1”/>
<element type=”INCLUDE_DEF” minOccurs=”0” maxOccurs=”1”/>
</ElementType>
<ElementType name=”DESTINATIONS” model=”closed” content=”eltOnly” order=”seq”>
<element type=”FAX” minOccurs=”0” maxOccurs=”*”/>
<element type=”EMAIL” minOccurs=”0” maxOccurs=”*”/>
<element type=”PRINT” minOccurs=”0” maxOccurs=”*”/>
</ElementType>
<!--END DESTINATION STUFF-->
<!--FORM element-->
<ElementType name=”FORM” model=”closed” content=”textOnly” dt:type=”string”>
<AttributeType name=”xcoord” dt:type=”number”/>
<AttributeType name=”ycoord” dt:type=”number”/>
<attribute type=”xcoord”/>
<attribute type=”ycoord”/>
</ElementType>
<!--ADD_IMAGE element-->
<ElementType name=”ADD_IMAGE” model=”closed” content=”textOnly” dt:type=”string”>
<AttributeType name=”page” dt:type=”enumeration” dt:values=”CURRENT ALL LAST”/>
<AttributeType name=”xoffset” dt:type=”i1”/><AttributeType name=”yoffset” dt:type=”i1”/>
<attribute type=”page” default=”CURRENT”/>
<attribute type=”xoffset”/>
<attribute type=”yoffset”/>
</ElementType>
<!--BODY and COVER_TEXT common attributes-->
<AttributeType name=”type” dt:type=”string”/>
<AttributeType name=”encoding” dt:type=”enumeration” dt:values=”NONE BASE64 QUOTEDPRINTABLE”/>
<!--COVER_TEXT element-->
<ElementType name=”COVER_TEXT” model=”closed” content=”textOnly” dt:type=”string”>
<attribute type=”type” default=”TXT”/>
<attribute type=”encoding”/>
</ElementType>
<!--BODY element-->
<ElementType name=”BODY” model=”closed” content=”mixed”>
<element type=”FONT” minOccurs=”0” maxOccurs=”1”/>
<AttributeType name=”tm” dt:type=”i1”/>
<AttributeType name=”lm” dt:type=”i1”/>
<AttributeType name=”bm” dt:type=”i1”/>
<AttributeType name=”font_name” dt:type=”string”/>
<AttributeType name=”font_leading” dt:type=”i1”/>
<AttributeType name=”font_pitch” dt:type=”i1”/>
<attribute type=”type” default=”TXT”/>
<attribute type=”encoding”/>
<attribute type=”tm”/>
<attribute type=”lm”/>
<attribute type=”bm”/>
<attribute type=”font_name”/>
<attribute type=”font_leading”/>
<attribute type=”font_pitch”/>
</ElementType>
<!--ATTACHMENT element-->
<ElementType name=”ATTACHMENT” model=”closed” content=”eltOnly” order=”one”>
<element type=”DATA”/>

Chapter 24 Programming for the RightFax XML Interface 151


RightFax 9.4 Integration Module Guide 152

<element type=”FILE”/>
</ElementType>
<ElementType name=”DATA” model=”closed” content=”textOnly” dt:type=”string”>
<attribute type=”type” default=”TXT”/>
<attribute type=”encoding” default=”NONE”/>
</ElementType>
<ElementType name=”FILE” model=”closed” content=”empty”>
<AttributeType name=”path” dt:type=”string” required=”yes”/>
<AttributeType name=”delete” dt:type=”string” required=”no”/>
<attribute type=”path”/>
<attribute type=”delete”/>
</ElementType>
<!--Root element-->
<ElementType name=”XML_FAX_SUBMIT” model=”closed” content=”eltOnly” order=”seq”>
<AttributeType name=”java” dt:type=”boolean”/>
<AttributeType name=”stylesheet” dt:type=”string”/>
<attribute type=”java” default=”0”/>
<attribute type=”stylesheet” default=”XML_FAX_SUBMIT.XSL”/>
<element type=”SEND_DATE_TIME” minOccurs=”0” maxOccurs=”1”/>
<element type=”INCLUDE_BEG” minOccurs=”0” maxOccurs=”1”/>
<element type=”SENDER” minOccurs=”0” maxOccurs=”1”/>
<element type=”DESTINATIONS” minOccurs=”1” maxOccurs=”1”/>
<element type=”FORM” minOccurs=”0” maxOccurs=”1”/>
<element type=”ADD_IMAGE” minOccurs=”0” maxOccurs=”1”/>
<element type=”COVER_TEXT” minOccurs=”0” maxOccurs=”1”/>
<element type=”BODY” minOccurs=”0” maxOccurs=”1”/>
<element type=”ATTACHMENT” minOccurs=”0” maxOccurs=”*”/>
<element type=”ADD_LIBDOC” minOccurs=”0” maxOccurs=”1”/>
<element type=”INCLUDE_END” minOccurs=”0” maxOccurs=”1”/>
</ElementType>
</Schema>
XML_FAX_SUBMIT_REPLY.dtd
For an example document based on this dtd, see “XML_FAX_SUBMIT_REPLY” on page 160.
<!ELEMENT XML_FAX_SUBMIT_REPLY (FAX+)>
<!ATTLIST FAX unique_id CDATA #REQUIRED>
<!ELEMENT FAX (RETURN_CODE, MESSAGE)>
<!ELEMENT RETURN_CODE (#PCDATA)>
<!ELEMENT MESSAGE (#PCDATA)>

XML_FAX_QUERY_schema
For an example document based on this schema, see “XML_FAX_QUERY” on page 160.
<?xml version=”1.0”?>
<Schema xmlns=”urn:schemas-microsoft-com:xml-data” xmlns:dt=”urn:schemas-microsoft-com:datatypes”>
<ElementType name=”UNIQUE_ID” content=”textOnly”/>
<AttributeType name =”start” dt:type=”datetime.tz” required=”yes”/>
<AttributeType name =”end” dt:type=”datetime.tz” required=”yes”/>
<ElementType name=”DATE_RANGE” content=”textOnly”>
<attribute type=”start”/>
<attribute type=”end”/>
</ElementType>
<AttributeType name=”faxtype” dt:type=”enumeration” dt:values=”OUTBOUND INBOUND BOTH”/>
<ElementType name=”TO_FAXNUM” content=”textOnly”/>
<ElementType name=”RF_USER” content=”textOnly”/>
<ElementType name=”STATUS” content=”textOnly”/>
<ElementType name=”QUERY” content=”eltOnly”>
<attribute type=”faxtype” default=”OUTBOUND”/>
<element type=”UNIQUE_ID” minOccurs='0' maxOccurs='1'/>
<element type=”DATE_RANGE” minOccurs='0' maxOccurs='1'/>
<element type=”TO_FAXNUM” minOccurs='0' maxOccurs='1'/>
<element type=”RF_USER” minOccurs='0' maxOccurs='1'/>
<element type=”STATUS” minOccurs='0' maxOccurs='1'/>
</ElementType>
<ElementType name=”QUERIES” content=”eltOnly”>
<element type=”QUERY” minOccurs='1' maxOccurs='*'/>
</ElementType>
<ElementType name=”XML_FAX_QUERY” content=”eltOnly”>

Chapter 24 Programming for the RightFax XML Interface 153


RightFax 9.4 Integration Module Guide 154

<element type=”QUERIES”/>
</ElementType>
</Schema>

XML_FAX_QUERY_REPLY.dtd
For an example document based on this dtd, see “XML_FAX_QUERY_REPLY” on page 161.
<!ELEMENT XML_FAX_QUERY_REPLY (MESSAGE?, FAXSTATUS*)>
<!ELEMENT MESSAGE (#PCDATA)>
<!ELEMENT FAXSTATUS (STATUS_CODE, STATUS_MSG, ERROR_CODE, DISPOSITION, TERMSTAT, OWNER_ID, TO_FAXNUM,
TO_CONTACTNUM, TO_NAME, TO_COMPANY, TO_CITYSTATE, FROM_NAME, FROM_PHONENUM, BILLINFO1, BILLINFO2,
CREATE_DATETIME, SENDTIME, REMOTEID, SEND_DATETIME, SEND_CHANNEL, CUSTOM1)>
<!ATTLIST FAXSTATUS unique_id CDATA #REQUIRED>
<!ATTLIST FAXSTATUS query_id CDATA #IMPLIED>
<!ELEMENT STATUS_CODE (#PCDATA)>
<!ELEMENT STATUS_MSG (#PCDATA)>
<!ELEMENT ERROR_CODE (#PCDATA)>
<!ELEMENT DISPOSITION (#PCDATA)>
<!ELEMENT TERMSTAT (#PCDATA)>
<!ELEMENT OWNER_ID (#PCDATA)>
<!ELEMENT TO_FAXNUM (#PCDATA)>
<!ELEMENT TO_CONTACTNUM (#PCDATA)>
<!ELEMENT TO_NAME (#PCDATA)>
<!ELEMENT TO_COMPANY (#PCDATA)>
<!ELEMENT TO_CITYSTATE (#PCDATA)>
<!ELEMENT FROM_NAME (#PCDATA)>
<!ELEMENT FROM_PHONENUM (#PCDATA)>
<!ELEMENT BILLINFO1 (#PCDATA)>
<!ELEMENT BILLINFO2 (#PCDATA)>
<!ELEMENT CREATE_DATETIME (#PCDATA)>
<!ELEMENT SENDTIME (#PCDATA)>
<!ELEMENT REMOTEID (#PCDATA)>
<!ELEMENT SEND_DATETIME (#PCDATA)>
<!ELEMENT SEND_CHANNEL (#PCDATA)>
<!ELEMENT CUSTOM1 (#PCDATA)>
XML_FAX_ACTION_schema
For an example document based on this schema, see “XML_FAX_ACTION” on page 162.
<?xml version=”1.0”?>
<Schema xmlns=”urn:schemas-microsoft-com:xml-data” xmlns:dt=”urn:schemas-microsoft-com:datatypes”>
<ElementType name=”TO_NAME” content=”textOnly”/>
<ElementType name=”TO_COMPANY” content=”textOnly”/>
<ElementType name=”ALT_FAX_NUM” content=”textOnly”/>
<ElementType name=”TO_CONTACTNUM” content=”textOnly”/>
<ElementType name=”COVERSHEET” content=”textOnly”/>
<ElementType name=”TO_FAXNUM” content=”textOnly”/>
<ElementType name=”FAX_RECIPIENT” content=”eltOnly”>
<element type=”TO_NAME” minOccurs='0' maxOccurs='1'/>
<element type=”TO_COMPANY” minOccurs='0' maxOccurs='1'/>
<element type=”ALT_FAX_NUM” minOccurs='0' maxOccurs='1'/>
<element type=”TO_CONTACTNUM” minOccurs='0' maxOccurs='1'/>
<element type=”COVERSHEET” minOccurs='0' maxOccurs='1'/>
<element type=”TO_FAXNUM” />
</ElementType>
<ElementType name=”ID” content=”textOnly”/>
<ElementType name=”DESCRIPTION” content=”textOnly”/>
<ElementType name=”DELETE” content=”empty”/>
<ElementType name=”FORWARD” content=”eltOnly”>
<element type=”FAX_RECIPIENT” minOccurs='1' maxOccurs='*'/>
</ElementType>
<ElementType name=”CREATE_LIB_DOC” content=”eltOnly”>
<element type=”ID” minOccurs='1' maxOccurs='1'/>
<element type=”DESCRIPTION” minOccurs='1' maxOccurs='1'/>
</ElementType>
<AttributeType name =”unique_id” dt:type=”string” required=”yes”/>
<!--Had to make this ”closed” and set order to ”one” so that only one or the other of child elements can occur-->
<ElementType name=”FAX” model=”closed” content=”eltOnly” order=”one”>
<attribute type=”unique_id”/>
<element type=”DELETE”/>
<element type=”FORWARD”/>
<element type=”CREATE_LIB_DOC”/>
</ElementType>

Chapter 24 Programming for the RightFax XML Interface 155


RightFax 9.4 Integration Module Guide 156

<AttributeType name =”docid” dt:type=”string”/>


<ElementType name=”XML_FAX_ACTION” content=”eltOnly”>
<element type=”FAX” minOccurs='1' maxOccurs='*'/>
</ElementType>
</Schema>

XML_FAX_ACTION_REPLY.dtd
For an example document based on this dtd, see “XML_FAX_ACTION_REPLY” on page 162.
<!ELEMENT XML_FAX_ACTION (FAX+)>
<!ELEMENT FAX (DELETE | FORWARD)>
<!ATTLIST FAX unique_id CDATA #REQUIRED>
<!ELEMENT DELETE EMPTY>
<!ELEMENT FORWARD FAX_RECIPIENT+>
<!ELEMENT FAX_RECIPIENT (TO_NAME?, TO_COMPANY?, ALT_FAX_NUM?, TO_CONTACTNUM?, COVERSHEET?, TO_FAXNUM)>
<!ELEMENT TO_NAME (#PCDATA)>
<!ELEMENT TO_COMPANY (#PCDATA)>
<!ELEMENT ALT_FAX_NUM (#PCDATA)>
<!ELEMENT TO_CONTACTNUM (#PCDATA)>
<!ELEMENT COVERSHEET (#PCDATA)>
<!ELEMENT TO_FAXNUM (#PCDATA)>

XML_FAX_NOTIFICATION.dtd
For an example document based on this dtd, see “XML_FAX_NOTIFICATION” on page 163.
<!ELEMENT XML_FAX_NOTIFICATION (FAXSTATUS*)>
<!ELEMENT FAXSTATUS (STATUS_CODE, STATUS_MSG, ERROR_CODE, DISPOSITION, TERMSTAT, OWNER_ID, TO_FAXNUM,
TO_CONTACTNUM, TO_NAME, TO_COMPANY, TO_CITYSTATE, FROM_NAME, FROM_PHONENUM, BILLINFO1, BILLINFO2,
CREATE_DATETIME, SENDTIME, REMOTEID, SEND_DATETIME, SEND_CHANNEL, CUSTOM1)>
<!ATTLIST FAXSTATUS unique_id CDATA #REQUIRED>
<!ELEMENT STATUS_CODE (#PCDATA)>
<!ELEMENT STATUS_MSG (#PCDATA)>
<!ELEMENT ERROR_CODE (#PCDATA)>
<!ELEMENT DISPOSITION (#PCDATA)>
<!ELEMENT TERMSTAT (#PCDATA)>
<!ELEMENT OWNER_ID (#PCDATA)>
<!ELEMENT TO_FAXNUM (#PCDATA)>
<!ELEMENT TO_CONTACTNUM (#PCDATA)>
<!ELEMENT TO_NAME (#PCDATA)>
<!ELEMENT TO_COMPANY (#PCDATA)>
<!ELEMENT TO_CITYSTATE (#PCDATA)>
<!ELEMENT FROM_NAME (#PCDATA)>
<!ELEMENT FROM_PHONENUM (#PCDATA)>
<!ELEMENT BILLINFO1 (#PCDATA)>
<!ELEMENT BILLINFO2 (#PCDATA)>
<!ELEMENT CREATE_DATETIME (#PCDATA)>
<!ELEMENT SENDTIME (#PCDATA)>
<!ELEMENT REMOTEID (#PCDATA)>
<!ELEMENT SEND_DATETIME (#PCDATA)>
<!ELEMENT SEND_CHANNEL (#PCDATA)>
<!ELEMENT CUSTOM1 (#PCDATA)>

Sample Documents Based on the Schemas


This section lists sample documents based on the XML Interface
schemas and corresponding DTDs. For the schemas and DTDs,
see “The Schemas” on page 147.

Warning For example documents that require a name space (e.g.,


<XML_FAX_SUBMIT stylesheet=”XML_FAX_SUBMIT.XSL”
xmlns=”namespace”>), the name space you write must exactly match the
corresponding name space in the XSLT file. If it does not, the FCL
documents that appear in the inbox will be empty.

XML_FAX_SUBMIT
<?xml version=”1.0”?>
<!--rfxml version=”2.0” -->
<XML_FAX_SUBMIT stylesheet=”XML_FAX_SUBMIT.XSL” xmlns=”x-schema:c:\program files\rightfax\production\xml
\schemas\XML_FAX_SUBMIT_schema.xml”>
<SEND_DATE_TIME>2000-01-24T15:20:00-08:00</SEND_DATE_TIME>
<INCLUDE_BEG>xml.beg</INCLUDE_BEG>
<SENDER>
<FROM_NAME>Bob McKenzie</FROM_NAME>

Chapter 24 Programming for the RightFax XML Interface 157


RightFax 9.4 Integration Module Guide 158

<EMP_ID>555-66-7777</EMP_ID>
<FROM_COMPANY>Company, ltd.</FROM_COMPANY>
<FROM_DEPARTMENT>Store</FROM_DEPARTMENT>
<FROM_PHONE>555-9876</FROM_PHONE>
<RETURN_EMAIL>[email protected]</RETURN_EMAIL>
<BILLINFO1>12345</BILLINFO1>
<BILLINFO2>678dk</BILLINFO2>
<REPLY_TO>http://www.company.com/faxreply</REPLY_TO>
<RF_USER>bobm</RF_USER>
</SENDER>
<DESTINATIONS>
<FAX unique_id=”PRODXML:0001”>
<TO_FAXNUM>555-1111</TO_FAXNUM>
<INCLUDE_INC>xml.inc</INCLUDE_INC>
<TO_NAME>Fred Flintstone</TO_NAME>
<TO_COMPANY>Acme, Inc.</TO_COMPANY>
<ALT_FAX_NUM>555-1112</ALT_FAX_NUM>
<TO_CONTACTNUM>555-6543</TO_CONTACTNUM>
<NOTIFY_HOST SuccessTemplate=”XML_FAX_NOTIFICATION.inc” FailureTemplate=”XML_FAX_NOTIFICATION.inc”
Name=”XMLNotify”/>
<COVERSHEET>auto.cov</COVERSHEET>
<INCLUDE_DEF>xml.def</INCLUDE_DEF>
</FAX>
<FAX unique_id=”PRODXML:0002”>
<TO_FAXNUM>555-1234</TO_FAXNUM>
<TO_NAME>Bill Smith</TO_NAME>
</FAX>
<EMAIL unique_id=”PRODXML:0003”>
<TO_EMAIL>[email protected]</TO_EMAIL>
<TO_NAME>Barney Smith </TO_NAME>
<NOTIFY_HOST SuccessTemplate=”exmlsuc.inc” FailureTemplate=”exmlerr.inc” Name=”XMLNotif”/>
<SUBJECT>Here is my fax </SUBJECT>
<CC_EMAIL>[email protected]</CC_EMAIL>
<BCC_EMAIL>[email protected]</BCC_EMAIL>
</EMAIL>
<PRINT unique_id=”PRODXML:0003”>
<COPIES>2</COPIES>
<PRINTER_NAME>Dev1</PRINTER_NAME>
<INCLUDE_INC>xml.inc</INCLUDE_INC>
<TO_NAME>Bill Smith</TO_NAME>
<TO_COMPANY>Acme, Inc.</TO_COMPANY>
<TO_CONTACTNUM>555-6545</TO_CONTACTNUM>
<COVERSHEET>auto.cov</COVERSHEET>
<INCLUDE_DEF>xml.def</INCLUDE_DEF>
</PRINT>
</DESTINATIONS>
<FORM xcoord=”0.5” ycoord=”1.0”>form.inc</FORM>
<ADD_IMAGE page=”CURRENT” xoffset=”2” yoffset=”4”>simpsons2.tif</ADD_IMAGE>
<COVER_TEXT type=”TXT” encoding=”NONE”>
Put me on the cover!!!!
&lt; &gt;
Here is another line of cover text.
</COVER_TEXT>
<BODY type=”TXT” encoding=”NONE” tm=”1” lm=”1” bm=”1” font_name=”Arial” font_leading=”12” font_pitch=”12”>
Yada Yada Yada
&lt; &gt;
More More More
</BODY>
<ATTACHMENT>
<DATA type=”RTF” encoding=”NONE”>%RTF%/Arial%Put this text into the document at an attachment.%EOF%</DATA>
</ATTACHMENT>
<ATTACHMENT>
<FILE path=”eagle.tif” delete=”yes”/>
</ATTACHMENT>
<ATTACHMENT>
<FILE path=”eagle2.tif”/>
</ATTACHMENT>
<ADD_LIBDOC>TANDC1</ADD_LIBDOC>
<INCLUDE_END>xml.end</INCLUDE_END>
</XML_FAX_SUBMIT>

Chapter 24 Programming for the RightFax XML Interface 159


RightFax 9.4 Integration Module Guide 160

XML_FAX_SUBMIT_REPLY
<?xml version=”1.0” ?>
<XML_FAX_SUBMIT_REPLY>
<FAX unique_id=”PRODXML:2055”>
<RETURN_CODE>1</RETURN_CODE>
<MESSAGE>Document has been successfully submitted for sending.</MESSAGE>
</FAX>
</XML_FAX_SUBMIT_REPLY>

XML_FAX_QUERY
<?xml version=”1.0” ?>
<XML_FAX_QUERY xmlns=”x-schema:../schemas/XML_FAX_QUERY_schema.xml”>
<QUERIES>
<QUERY faxtype=”INBOUND”>
<UNIQUE_ID>PRODXML:0001</UNIQUE_ID>
<DATE_RANGE start=”2000-03-08T18:39:09-08:00” end=”2000-03-10T18:39:09-08:00”/>
<TO_FAXNUM>555-1111</TO_FAXNUM>
<RF_USER>bobm</RF_USER>
<STATUS>0</STATUS>
</QUERY>
<QUERY faxtype=”OUTBOUND”>
<UNIQUE_ID>PRODXML:0002</UNIQUE_ID>
<DATE_RANGE start=”2000-03-08T18:39:09-08:00” end=”2000-03-10T18:39:09-08:00”/>
<TO_FAXNUM>555-1112</TO_FAXNUM>
<RF_USER>dougm</RF_USER>
<STATUS>0</STATUS>
</QUERY>
<QUERY faxtype=”BOTH”>
<UNIQUE_ID>PRODXML:0003</UNIQUE_ID>
<DATE_RANGE start=”2000-03-08T18:39:09-08:00”
end=”2000-03-10T18:39:09-08:00”/>
<TO_FAXNUM>555-1113</TO_FAXNUM>
<RF_USER>dougm</RF_USER>
<STATUS>0</STATUS>
</QUERY>
</QUERIES>
</XML_FAX_QUERY>

XML_FAX_QUERY_REPLY
<?xml version=”1.0” ?>
<XML_FAX_QUERY_REPLY>
<FAXSTATUS unique_id=”PRODXML:2055” query_id=”1”>
<STATUS_CODE>6</STATUS_CODE>
<STATUS_MSG>OK</STATUS_MSG>
<ERROR_CODE>0</ERROR_CODE>
<DISPOSITION>0</DISPOSITION>
<TERMSTAT>32</TERMSTAT>
<OWNER_ID>XMLACCOUNT</OWNER_ID>
<TO_FAXNUM>5039689601</TO_FAXNUM>
<TO_CONTACTNUM />
<TO_NAME>Unknown</TO_NAME>
<TO_COMPANY />
<TO_CITYSTATE />
<FROM_NAME />
<FROM_PHONENUM>(999) 999-9999</FROM_PHONENUM>
<BILLINFO1 />
<BILLINFO2 />
<CREATE_DATETIME>957444538</CREATE_DATETIME>
<SENDTIME>30</SENDTIME>
<REMOTEID>TEST computer</REMOTEID>
<SEND_DATETIME>957444538</SEND_DATETIME>
<SEND_CHANNEL>0</SEND_CHANNEL>
<CUSTOM1>0</CUSTOM1>
</FAXSTATUS>
</XML_FAX_QUERY_REPLY>

Chapter 24 Programming for the RightFax XML Interface 161


RightFax 9.4 Integration Module Guide 162

XML_FAX_ACTION
<?xml version=”1.0” ?>
<XML_FAX_ACTION xmlns=”x-schema:../schemas/XML_FAX_ACTION_schema.xml”>
<FAX unique_id=”PRODXML:0001”>
<DELETE/>
</FAX>
<FAX unique_id=”PRODXML:0002”>
<FORWARD>
<FAX_RECIPIENT>
<TO_NAME>Fred Flintstone</TO_NAME>
<TO_COMPANY>Acme, Inc.</TO_COMPANY>
<ALT_FAX_NUM>555-1112</ALT_FAX_NUM>
<TO_CONTACTNUM>555-6543</TO_CONTACTNUM>
<COVERSHEET>auto.cov</COVERSHEET>
<TO_FAXNUM>555-1111</TO_FAXNUM>
</FAX_RECIPIENT>
</FORWARD>
</FAX>
<FAX unique_id=”PRODXML:0003”>
<CREATE_LIB_DOC>
<ID>TANDC</ID>
<DESCRIPTION>This is a terms and conditions document.</DESCRIPTION>
</CREATE_LIB_DOC>
</FAX>
</XML_FAX_ACTION>

XML_FAX_ACTION_REPLY
<?xml version=”1.0” ?>
<XML_FAX_ACTION_REPLY>
<ACTION_STATUS faxid=”PRODXML:2055”>
<RETURN_CODE>1</RETURN_CODE>
<STATUS>Fax (PRODXML:2055) had been submitted for forwarding to: Acme Chemicals</STATUS>
</ACTION_STATUS>
</XML_FAX_ACTION_REPLY>
XML_FAX_NOTIFICATION
<?xml version=”1.0” ?>
<!DOCTYPE XML_FAX_NOTIFICATION SYSTEM ”dtds/XML_FAX_NOTIFICATION.dtd”>
<XML_FAX_NOTIFICATION>
<FAXSTATUS unique_id=”PRODXML:0001” query_id=”1”>
<STATUS_CODE>0</STATUS_CODE>
<STATUS_MSG>It is fine</STATUS_MSG>
<ERROR_CODE></ERROR_CODE>
<DISPOSITION></DISPOSITION>
<TERMSTAT></TERMSTAT>
<OWNER_ID></OWNER_ID>
<TO_FAXNUM></TO_FAXNUM>
<TO_CONTACTNUM></TO_CONTACTNUM>
<TO_NAME></TO_NAME>
<TO_COMPANY></TO_COMPANY>
<TO_CITYSTATE></TO_CITYSTATE>
<FROM_NAME></FROM_NAME>
<FROM_PHONENUM></FROM_PHONENUM>
<BILLINFO1></BILLINFO1>
<BILLINFO2></BILLINFO2>
<CREATE_DATETIME></CREATE_DATETIME>
<SENDTIME></SENDTIME>
<REMOTEID></REMOTEID>
<SEND_DATETIME></SEND_DATETIME>
<SEND_CHANNEL></SEND_CHANNEL>
<CUSTOM1></CUSTOM1>
</FAXSTATUS>
</XML_FAX_NOTIFICATION>

Chapter 24 Programming for the RightFax XML Interface 163


RightFax 9.4 Integration Module Guide 164
Chapter 25
Programming for the RightFax API for Java

The RightFax API for Java generates XML and sends it to the The API for Java provides access to the following functions and
RightFax server. methods of transport in the RightFax XML Interface.
The RightFax API for Java converts Java to XML on the host
Table 25a XML Interface Transport Methods and Functions
computer before transmitting it to the Integration Module. Once
received, the RightFax XML Interface converts the XML to FCL. IBM
The Integration Module can then process and send the document HTTP or WebSphere
from the RightFax server. Function HTTPS File MQ
This chapter is written for experienced Java developers. It requires Action Yes Yes Yes
the Sun Microsystems, Inc. Java Developer’s Kit version 1.1.8 or Action Reply Yes Yes No
later.
Notification Yes Yes Yes
The RightFax API for Java can submit an outbound document,
Query Yes Yes No
query the RightFax server for the status of a document, and
perform actions (forward, delete, or create a library document) on Query Reply Yes Yes No
previously sent documents. Submit Yes Yes Yes
The following XML Interface functions are available with the API for Submit Reply Yes Yes No
Java:
Action For information on using the RightFax API for Java, see the
Action Reply RightFax documentation that is installed with the API. The
Notification documentation is installed in the folder
RightFax\Production\XML\Java\Docs.
Query
Query Reply
Submit
Submit Reply

165
RightFax 9.4 Integration Module Guide 166

Installing the API for Java SMTP Host. Open the RightFax Server Module and click the
e-transport tab. Enter the name of the SMTP server on your
Note RightFax provides programming interfaces for both Java and XML. network that will transport all SMTP alerts and notifications
These interfaces are both installed when you run the Java installation. regarding the RightFax server. If you will not be using SMTP to
deliver RightFax alerts and notifications, you can leave this option
Minimum System Requirements blank.
In addition to the minimum system requirements for the RightFax IIS User Account. In IIS, configure the rfxml website with an IIS
server and Integration Module, Microsoft Internet Information user account that RightFax will use to access the IIS server. This
Server (IIS) version 6.0 or later must be installed on the RightFax account is required for Java development.
server. Additional Java development tools are located in the
If you are installing the XML interface on a server running IIS Program Files\RightFax\Production\XML\Java folder.
version 6.0, Active Server Pages and ISAPI Extensions must be
enabled. Parent Paths must also be enabled, either for the Default Configuring the Java development computer to use the
Web Site as a whole, or for the RFXML virtual directory which RightFax Java interface
appears after the installation of the Java/XML API.
Copy RFJavaInt.zip from the
If you are installing the XML interface on a server running IIS Program Files\RightFax\Production\XML\Java folder on the
version 7.0, you must enable CGI modules and ISAPI modules. RightFax server to the development computer or the computer that
Parent Paths must also be enabled, either for the Default Web Site will be running the Java interface. If you already have Java classes
as a whole, or for the RFXML virtual directory which appears after located on this computer, Captaris recommends copying this file to
the installation of the Java/XML API. the same location. When the file has been copied, you must modify
the CLASSPATH environment variable to include this .zip file.
Installing the Java Interface Example If the RFJavaInt.zip file is located in the C:\Proj\Java
Follow the instructions for installing the RightFax server in the folder on the development computer, then set the
RightFax Installation Guide and use the following specific steps: following CLASSPATH environment variable:
On the Setup Type screen, select Custom and then click Next. CLASSPATH=%CLASSPATH%;C:\Proj\Java\RFJavaI
On the Setup Features screen, expand the RightFax Server nt.zip
heading in the components tree and select the Java/XML API Finally, when using the RightFax Java class library, you must import
component to install. Click Next. the RightFax class package by including this line in your Java code:
Complete the remaining instructions in the RightFax Installation import RightFax.*;
Guide for installing the RightFax server. After the RightFax server
and Java/XML API component are installed and activated, you Important Because Java is case-sensitive, this line must be included
must configure an SMTP host and an IIS user account. in your Java code using the exact capitalization in this example. Incorrect
capitalization will fail to import the RightFax Java class library.
Sending Outbound Documents 3. Use the RFDoc object, called m_FaxDocument, in the
RFaxSubmit object to set all the non-attachment information
To submit an outbound document, you must set sender information, about the document.
recipient information, and add the content for the primary
document (if any). These are encapsulated in an RFDoc object, in Call m_FaxDocument.setSenderInfo (…) to set the
the RFaxSubmit object. Then you can add any attachments. The information about the person sending the document. This
following list describes the basic steps. method has been overloaded, with a version that takes all
information as parameters, a version that only takes the
1. Create an RFaxSubmit object. minimum information (RFUser ID), and versions that take the
2. Set the target URL for the RightFax server, using the more common information. If there is not an overloaded
setTargetURL method. This takes a String, NOT a URL object version with exactly what you want, use one that takes more,
(it will create the URL object). and set the parameters you don't want to use to empty
strings (””).
Call m_FaxDocument.addRecipient (…) for each recipient.
Each time you call this, a recipient will be added to the list.
This method has been overloaded, with a version that takes
all information as parameters, a version that only takes the
minimum information (Fax Number), and versions that take
the more common information. If there is not an overloaded
version with exactly what you want, use one that takes more,
and set the parameters you don't want to use to empty
strings (””).

Note New to version RightFax 8.0, methods have been added to


set e-mail and printer recipients. See the JavaDocs for details.

Call m_FaxDocument.setBody (…) to set the contents of the


fax body (if any). If the body data is not plain text, make sure
to set the type as well.
Call m_FaxDocument.setCoverText (…) to set the contents
of the fax cover sheet text (if any). If the cover text is a data
type other than plain text, then use
m_FaxDocument.setCoverTextType (…) to set the type.
4. If you have any attachments, make a call to addAttachment (…)
for each attachment. Each time you call this, an attachment is
added to the list. This method takes a fully qualified path as its
parameter, not the contents of the file to be attached.

Chapter 25 Programming for the RightFax API for Java 167


RightFax 9.4 Integration Module Guide 168

5. When all the data is set, call the method. You will get back a
Vector of RFStatus objects. Each object will contain the status
for one recipient, stating whether it was passed on for sending
or if there was an error.

Note You can call the submitEx method in place of submit. This will
return a string containing the unparsed XML returned by RightFax.
The XML contains the status of each recipient in the form of the
following example (page 168).

Sample code for creating an outbound document


import RightFax.*;
import java.net.MalformedURLException;
import java.net.UnknownHostException;
import java.io.IOException;
import java.util.*;
class FaxSubmit
{
//Create a outbound fax object
RFaxSubmit obFS = new RFaxSubmit();
//Set the URL of the RightFax server
obFS.setTargetURL (“http://www.company.com/”);
//Set the information on who is sending the fax
obFS.m_FaxDocument.setSenderInfo (“Bill Smith”, “”, “Acme,Co.”, “”, “”, “”, “”, “”, “”, “BillS”);
//Add 2 recipients
try {
obFS.m_FaxDocument.addRecipient (“PRODXML:0001”, “555-1234”, “”, “Jim Jackson”, “”, “”, “”, “”, “”, “”, “”, “”);
} catch (RFNoFaxNumberException nfne) {
System.out.println (nfne.toString());
} catch (RFInvalidIDException iide) {
System.out.println (iide.toString());
}
//Add an e-mail and a printer recipient
try {
obFS.m_FaxDocument.addRecipient_email (“EMAIL:00000001”, “[email protected]”, “”, “Here is the document”, “”);
obFS.m_FaxDocument.addRecipient_printer (“PRNT:000000001”, “MyPrinter”, (short)1);
} catch (RFNoDestinationException nde) {
System.out.println (nde.toString());
} catch (RFInvalidIDException iide) {
System.out.println (iide.toString());
}
//Set the body text
obFS.m_FaxDocument.setBody ( “Here is some body text”, “TXT”, -1, -1, -1, “Arial”, -1, -1);
//Set the cover text
obFS.m_FaxDocument.setCoverText (“Here is some cover text”);
//Add attachments
obFS.addAttachment (“c:\\documents\\mydoc.doc”);
obFS.addAttachment (“c:\\documents\\license.pdf”);
//Send the document, and get back the results.
Vector obRetList = null;
try {
obRetList = obFS.submit();
} catch (MalformedURLException mue) {
System.out.println (mue.toString());
} catch (UnknownHostException uhe) {
System.out.println (uhe.toString());
} catch (IOException ioe) {
System.out.println (ioe.toString());
} catch (RFNoDataException nde) {
System.out.println (”Error:” + nde.toString());
}
//Output the results
int nSize = obRetList.size();
for (int i = 0; i < nSize; i++)
{
RFStatus obStat = (RFStatus)(obRetList.get(i));
System.out.println ((i+1) + ”-”);
System.out.println (”\tID: ” + obStat.getID());
System.out.println (”\tStatusCode: ” + obStat.getStatusCode());
System.out.println (”\tStatusMessage: ” + obStat.getStatusMsg());
}
}

Chapter 25 Programming for the RightFax API for Java 169


RightFax 9.4 Integration Module Guide 170

Querying Documents
To perform a query on the status of a document (or group of
documents), you must set the criteria for each query. The following
list describes the basic steps.
1. Create an RFaxQuery object.
2. Set the target URL for the RightFax server, using the
setTargetURL method. This takes a String, not a URL object (it
will create the URL object).
3. Call addQuery (…) for each query you want to add to the
request. This method has been overloaded, with a version that
takes all information as parameters, and versions that take the
more common information. If there is not an overloaded version
with exactly what you want, use one that takes more, and set
the parameters you don't want to use to empty strings (””) or
NULL for CALANDER objects. You must set at least one query
criteria parameter.
4. When all the queries are set, call the submit method. You will
get back a Vector of RFStatus objects. Each object will contain
the status of one document (not one query—a query could return
many fax statuses).

Sample code for querying a document


import RightFax.*;
import java.net.MalformedURLException;
import java.net.UnknownHostException;
import java.io.IOException;
import java.util.*;
class FaxQuery
{
//Create a RFaxQuery object
RFaxQuery obQ = new RFaxQuery();
//Set the URL of the RightFax server
obQ.setTargetURL (“http://www.company.com/”);
//Criteria for one query.
try {
obQ.addQuery (“PRODXML:0001”, null, null, “”, “”, “”);
} catch (RFEmptyQueryException eqe) {
System.out.println (eqe.toString();
} catch (RFInvalidIDException iide) {
System.out.println (iide.toString());
}
//Send the query, and get back the results
Vector obQRetList = null;
try {
obQRetList = obQ.submit();
} catch (MalformedURLException mue) {
System.out.println (mue.toString());
} catch (UnknownHostException uhe) {
System.out.println (uhe.toString());
} catch (IOException ioe) {
System.out.println (ioe.toString());
} catch (RFNoDataException nde) {
System.out.println (nde.toString());
}
//Output the results
int nQSize = obQRetList.size();
for (int i = 0; i < nQSize; i++)
{
RFStatus obStat = (RFStatus)(obQRetList.get(i));
System.out.println ((i+1) + ”-”);
System.out.println (”\tID: ” + obStat.getID());
System.out.println (”\tStatusCode: ” + obStat.getStatusCode());
System.out.println (”\tStatusMessage: ” + obStat.getStatusMsg());
}
}

Chapter 25 Programming for the RightFax API for Java 171


RightFax 9.4 Integration Module Guide 172

Performing Actions on Documents For unique IDs that the software creates, the format is:

To perform an action on a document, you need the unique ID for The first seven characters are the name of the RightFax server.
that document. Once you have that, you can either delete the The last eight characters are a number unique to a document.
document, forward it to another recipient, or use it to create a 1. Create an RFaxAction object.
library document. If you don’t have the unique ID, you can obtain it
by doing a query on the information that you do have (see 2. Set the target URL for the RightFax server, using setTargetURL
“Querying Documents” on page 170). method. This takes a String, NOT a URL object (it will create
the URL object).
When you submit a document, you have the option of creating a
unique ID for that document or letting the RightFax server assign a 3. Call addForwardAction (…) for each forward action you want
unique ID for you. to perform. This method has been overloaded, with a version
that takes all information as parameters and a version that only
Note If you create your own unique ID, it must be 15 characters or less. takes the minimum information (ID and fax number). If there is
not an overloaded version with exactly what you want, use one
that takes more, and set the parameters you don’t want to use
to empty strings (“”).
4. Call addDeleteAction (…) for each delete action you want to
perform. The ID parameter is required.
5. Call addLibDocAction (…) for each create library document
action you want to perform The ID, LibDocID, and
LibDocDescription parameters are all required.
6. When all the actions are set, call the submit method. You will
get back a Vector of RFStatus objects. Each object will contain
the status of one action, stating whether or not the action was
successful.
Sample code for performing an action on a document
import RightFax.*;
import java.net.MalformedURLException;
import java.net.UnknownHostException;
import java.io.IOException;
import java.util.*;
class FaxAction
{
//Create a RFaxAction object
RFaxAction obA = new RFaxAction();
//Set the URL of the RightFax server
obA.setTargetURL (“http://www.company.com/”);
//Create a forward action
try {
if (!obA.addForwardAction(”PRODXML:0001”, ”555-6789”, ”Mike Michell”, ””, ””, ””, ””)) {
System.out.println (”Add Forward Action Failed”);
}
} catch (RFNoFaxNumberException nfne) {
System.out.println (nfne.toString());
} catch (RFNoIDException nide) {
System.out.println (nide.toString());
} catch (RFInvalidOpException ioe) {
System.out.println (ioe.toString());
}
//Create a delete action
try {
if (!obA.addDeleteAction(”PRODXML:0002”)) {
System.out.println (”Add Delete Action Failed”);
}
} catch (RFNoIDException nide) {
System.out.println (nide.toString());
} catch (RFInvalidOpException ioe) {
System.out.println (ioe.toString());
}
//Send the action requests, and get back the results
Vector obARetList = null;

Chapter 25 Programming for the RightFax API for Java 173


RightFax 9.4 Integration Module Guide 174

try {
obARetList = obA.submit();
} catch (MalformedURLException mue) {
System.out.println (mue.toString());
} catch (UnknownHostException uhe) {
System.out.println (uhe.toString());
} catch (IOException ioe) {
System.out.println (ioe.toString());
} catch (RFNoDataException nde) {
System.out.println (nde.toString());
}
//Output the results
int nASize = obARetList.size();
for (int i = 0; i < nASize; i++)
{
RFStatus obStat = (RFStatus)(obARetList.get(i));
System.out.println ((i+1) + ”-”);
System.out.println (”\tID: ” + obStat.getID());
System.out.println (”\tStatusCode: ” + obStat.getStatusCode());
System.out.println (”\tStatusMessage: ” + obStat.getStatusMsg());
}
}

Using Debug Mode


The method setDebug is part of the RFax class and is therefore
callable from any RFaxSubmit, RFaxAction, or RFaxQuery object.
By turning on debug mode, you can get more information sent to
the standard out. This includes information such as the XML
generated for sending to the RightFax server and the XML returned
from the RightFax server.
To turn on debug mode, call the setDebug method, passing it true.
Error and Status Codes for XML- and Java-Based Table 25b XML Interface Error and Return Codes (Continued)

Documents Code Message Explanation

The RightFax API for Java will return status information (as a vector Submit
of RFStatus objects or as a string containing XML) for all -2 Failed to load XSL into DOM The XSL file could not be
operations, unless an error occurs in the API, in which case an tree. loaded into the DOM tree. This
exception will be thrown. is usually caused by the file not
being found or syntax error in
Each RFStatus object or XML node will contain a status code,
the XSL file.
status message, and document ID.
-4 Failed to get XSL file info. The XML file did not contain
The following table lists all possible codes, their associated information on the XSL file to
messages, and an explanation for what each indicates. use, and the default (in the
registry) could not be found.
Table 25b XML Interface Error and Return Codes
0 Submit failed. Unable to perform the submit
Code Message Explanation requested. The message will
General contain the reason.
-1 Failed to load XML into DOM The XML file could not be 1 Document has been The document has been
tree. XML file copied to err dir. loaded into the DOM tree. This successfully submitted for passed on for sending. If
is usually caused by the file not sending. notifications are set up, you
being found, a syntax error in will be informed of the success
the XML file, or the XML file or failure of the send via that
not conforming to the schema. notification type.
-3 Failed to connect to RF Server. The production software was Query
unable to connect to the -99 No information found. The query returned no
RightFax server. This is usually documents matching your
caused by the RFServer criteria.
service not running.
0 Query failed. Unable to perform the query
-5 Unknown XML operation type. The operation was not requested. The message will
XML_FAX_SUBMIT, contain the reason.
XML_FAX_QUERY, or
XML_FAX_ACTION.

Chapter 25 Programming for the RightFax API for Java 175


RightFax 9.4 Integration Module Guide 176

Table 25b XML Interface Error and Return Codes (Continued)


Code Message Explanation
0-n N/A If you receive a message not
listed in this table, it is a code
universal to all RightFax
software. These are listed in
the RightFax Administrator’s
Guide.
6 Deleted If the document had previously
been sent successfully, but
has since been deleted.
Action
-99 No such fax found. The document you wish to
perform the action on could
not be found.
0 Action failed. Unable to perform the action
requested. The message will
contain the reason.
1 Fax (<ID>) has been deleted. Success
1 Fax (<ID>) has been submitted Success
for forwarding to: <recipient>.
1 A Library Document has been Success
created from fax: <ID>.
Notification
0-n N/A If you receive a message that
is not listed in this table, it is
listed in the RightFax
Administrator’s Guide.
Chapter 26
Creating FCL Documents with InternetLink Commands

The RightFax InternetLink Module is a component of the RightFax Activating the InternetLink Module
Enterprise Integration Module. The InternetLink Module enables the
Integration Module to build documents in Multipurpose Internet The files required by the InternetLink Module are installed on all
Mail Extensions (MIME) or text format and send them via Simple RightFax servers during the server installation. However, the
Mail Transfer Protocol (SMTP) through the Internet. InternetLink Module must be licensed and activated before its
functionality will be enabled.
You can use the InternetLink Module to send documents in native
mode or filter mode. To activate the InternetLink Module, you must have licensed a
RightFax server type that includes this connector, or purchased and
licensed this connector separately. For information on activating
new components on the RightFax server, refer to the RightFax
System Requirements
Installation Guide.
The InternetLink Module requires the following: Before you begin sending documents with the InternetLink Module,
RightFax Enterprise Server and Integration Module already verify the name of your e-mail server.
installed.
Network connection to the Internet. To verify the name of your e-mail server
SMTP gateway on the network. 1. On the RightFax server, select Start > Programs > Enterprise
TCP/IP connection from the RightFax Integration Module to the Fax Manager. The Enterprise Fax Manager window opens.
network
2. Select the RightFax server in the list of servers in the left pane of
the window. A list of services appears in the lower-right pane.
3. In the Service Name list, double-click RightFax Server
Module. The Server Configuration dialog box opens.
4. Click the eTransport tab.

177
RightFax 9.4 Integration Module Guide 178

5. Verify that the fully qualified domain name of your SMTP server Table 26a Required FCL Commands (Continued)
appears in the SMTP Hostname box. If the name of your server Command Description
is not correct, enter the correct name.
{{to}} Recipient’s e-mail address.
To create and send documents with the InternetLink Module, use
the InternetLink FCL commands. {{type email}} {{type email}} sends a document as the editable
or body of an e-mail message.
{{type mime}} {{type mime}} sends a document as an attachment
Understanding the InternetLink FCL Commands to an empty e-mail message.

Documents sent via the InternetLink Module require six FCL The commands {{begin}} and {{type}} can be replaced with a
commands. Without all of these commands, the document will not “shortcut” command, {{begin mime}} or {{begin email}}.
be sent. The required commands are listed in the following table.

Table 26a Required FCL Commands


Choosing document types
The document type determines the type of document that the
Command Description
recipient receives via e-mail. The type of document is specified with
{{begin}} Indicates the beginning of a document. the {{type}} command.
The Integration Module will process all the data {{type email}} converts the document to the editable body text of
that appears between a {{begin}} and {{end}} an e-mail message. This is plain text; it has no formatting.
command as a discreet document. Data that does
not appear between the {{begin}} and {{end}}
{{type mime}} converts the document to an un-editable,
commands is ignored. MIME-encoded graphic attachment to an empty e-mail message.
This retains all formatting and graphics. Sending documents in
This command must appear as the first command
MIME format is best when the document must not be editable or
in each InternetLink document.
when it must be an exact replica of a pre-printed, hardcopy form.
{{end}} Indicates the end of a document.
The Integration Module will process all the data Choosing image types
that appears between a {{begin}} and {{end}}
The image type refers to the type of graphic file that is created
command as a discreet document. Data that does
when you use the {{type mime}} command, PDF, TIF, or PCX. To
not appear between the {{begin}} and {{end}}
specify an image type, use the {{imagetype}} command (see
commands is ignored.
“IMAGETYPE” on page 185).
This command must appear as the last command in
each InternetLink document. The default graphic format for {{type mime}} documents is Group 4
TIFF.
{{from}} Sender’s e-mail address.
{{subject}} Subject line of the e-mail message.
Using include files with the InternetLink Module If you use the {{attach}} command without the native option, then
When you activate the InternetLink Module, an empty include file the attached document and the host document are merged into
called Mime.inc is created in the RightFax\Production\Include one graphic file that is attached to an empty e-mail message. You
folder. You can insert plain text (but not FCL, formatted text, or determine the image type of this graphic file with the {{imagetype}}
graphics) in Mime.inc, and this text will become the body of a command “Choosing image types” on page 178.
{{type mime}} document. Use the native option to the {{attach}} command when the file must
Mime.inc is linked by default to all InternetLink documents. be editable or when fax format cannot adequately represent the
Because it is empty, Mime.inc has no function unless you add content of a file. For example, fax format cannot adequately
information to it. If you add information to Mime.inc, then that represent the content of an audio file.
information will appear in the body of each {{type mime}} message You can attach multiple documents by inserting multiple {{attach}}
that is sent using the InternetLink Module. commands. The {{attach}} command cannot be used with the
For information on other types of include files, see the RightFax {{type email}} command.
Integration Module Guide.
Example FCL for InternetLink documents that have
attachments
Attaching Native Files to InternetLink Documents The following examples illustrate FCL documents with attachments
created for the InternetLink Module. In each example, the FCL (on
Without the InternetLink Module, the Integration Module converts
the left) yields different final results (on the right).
all attachments to fax format (a TIF image) before sending. The
InternetLink Module gives you the option to attach documents in In the following example, the host data (“Here are last week’s
native file format. For example, a Microsoft Word document can be programs.”) is converted to PDF and is saved as the attachment
sent as a Word document. called 5816.pdf (the file name is generated automatically by the
system) through the use of the {{type mime}} and {{imagetype pdf}}
To attach a file, use the {{attach}} or {{beginnative}} commands. For
commands. The attached document (Programs.xls) is also attached
a description of both commands, see, “Standard FCL Commands
in its native format (a Microsoft Excel file) through the use of the
with InternetLink Options”.
{{attach}} command with the native option.
In the following example, Program.xls will be attached in its native
The example includes text that was added to Mime.inc, “This
format (as a Microsoft Excel document) to the host document.
message comes to you from Oswego Corporation”. For more
Example {{attach c:\\IST Files\Programs.xls native}} information, “Using include files with the InternetLink Module” on
If you create a {{type mime}} document that contains the {{attach}} page 179.
command with the native option, then the attached document
becomes the second attachment to an empty e-mail message.

Chapter 26 Creating FCL Documents with InternetLink Commands 179


RightFax 9.4 Integration Module Guide 180

Figure 26.1 Attaching a File in its Native Format In the following example, the host data (“Here are last week’s
{{begin}} programs.”) is converted to PDF and becomes page 1 of the
{{type mime}} attachment called 5816.pdf through the use of the {{type mime}}
{{imagetype pdf}} and {{imagetype pdf}} commands.
Here are last week’s programs.
{{attach “c:\\IST Files\Programs.xls” native}} Because the native option of the {{attach}} command was not
{{to [email protected]}} used, Programs.xls is converted to PDF and becomes page 2 of
{{subject Weekly programs}} 16.pdf.
{{from [email protected]}}{{end}}
Figure 26.2 Attaching a File Converted to PDF Format
{{begin}}
{{type mime}}
{{imagetype pdf}}
Here are last week’s programs.
{{attach “c:\\IST Files\Programs.xls”}}
{{to [email protected]}}
{{subject Weekly programs}}
{{from [email protected]}}
{{end}}
Sending Documents as E-mail if Faxes Fail Receiving Notification When a Fax Fails and Is
With the InternetLink Module, you can an e-mail documents if fax Sent as an E-mail
numbers fail. To do this, use the {{onerror}} command. To create a notification that a fax has failed and has been sent as an
The {{onerror}} usage options relevant to the InternetLink Module e-mail, include the ^type^ keyword in the notification template. For
are: more information on notification messages, refer to “Setting Up
Notification Messages of Document Transmission”
{{onerror {email|mime e-mail address}}}
Unlike the {{type}} command, the e-mail and mime options for the
{{onerror}} command do the same thing. With either option, the Standard FCL Commands with InternetLink
document is sent as a graphic image attached to an empty e-mail
message. With both options, you must use the {{imagetype}} Options
command to specify the type of graphic image to create. The following standard FCL commands have options that can be
In the following example, if the document fails to send as a fax, then used with the InternetLink Module. The commands are described in
it will be sent as a PDF file attached to an empty e-mail message to detail in the RightFax Integration Module Guide
[email protected].
{{begin}} ATTACH
{{fax 503-555-4489}} The {{attach}} command ends the current page (unless it is blank)
{{onerror email [email protected]}} and attaches one or more files, optionally deleting them after they
{{imagetype pdf}} have been added to the current document.
Body of the document to be sent. This command can specify that an attached file be sent in its native
{{end}} format, such as Word or Excel). Include the “native” option in the
When a fax fails and is sent as an e-mail, all e-mail addressing command, as illustrated in the following example.
options (such as {{to}} and {{cc}}) in the original document are The {{attach}} command cannot be used with the {{type email}}
replaced with the e-mail address specified in the {{onerror}} command.
command. The content of the {{contact}} command is replaced
with “To whom it may concern.” All other fields, such as {{subject}} Example {{attach “C:\Pricing\PriceList.xls” native}}
or {{from}}, are retained as they were in the original document.
ONERROR
The {{onerror}} command specifies an action for the document in
the event that it fails in transmission. For example, the document
can be faxed or e-mailed to alternate recipients.

Chapter 26 Creating FCL Documents with InternetLink Commands 181


RightFax 9.4 Integration Module Guide 182

ONSUCCESS BEGINNATIVE
The {{onsuccess}} command specifies an action for the document {{Beginnative}} is similar to the {{attach}} command with the native
in the event that it is successfully transmitted. For example, a copy option. Both commands let you send documents in native format.
of the document can be faxed or e-mailed to alternate recipients, The {{beginnative}} command also lets you specify advanced
such as the original sender of the document. configuration options that {{attach}} does not support. The key
difference between {{beginnative}} and {{attach}} is that
TYPE {{beginnative}} requires you to put the content of the
to-be-attached file in the FCL itself, while {{attach}} attaches a file
The {{type}} command establishes the type of document that
from a different location.
should sent.
The body option of {{beginnative}} inserts the data (which appears
The {{type email}} command specifies that the document will be
between {{beginnative}} and {{endnative}} commands in your host
sent as the editable body text of an e-mail message.
data stream) into the body of an e-mail message.
The {{type mime}} command specifies that the document will be
sent as an un-editable, MIME-encoded graphic attachment to an The inline option suggests to the recipient e-mail client that the
empty e-mail message. data between {{beginnative}} and {{endnative}} commands be
displayed as an embedded object in the body of the e-mail
If you choose {{type mime}}, then you must also use the message. If the recipient e-mail client cannot display the host data
{{imagetype}} command to specify the type of MIME-encoded in this way, then the data will be sent as an attachment that is
graphic attachment to create (PCX, TIF, or PDF). represented by an icon in the body of the e-mail message. The icon
If you use the {{begin mime}} or {{begin email}} commands, do not can be opened with the appropriate application.
use the {{type}} command. {{Beginnative}} requires {{endnative}}.
Syntax {{beginnative “filename” [body] [inline]
[mediatype=type] [{base64|quotedprintable}]}}
InternetLink FCL Commands
Example {{beginnative “Body.txt” body mediatype=text/plain}}
The following commands are specific to the InternetLink Module.
The example creates an attachment called Body.txt (whose content
is the host data between the {{beginnative}} and {{endnative}}
BEGIN MIME or BEGIN EMAIL
commands in the FCL document). The attachment will be displayed
Syntax {{begin {mime|email}}} as editable text in the body of an e-mail message.
Examples {{begin email}} Configurable attributes of {{beginnative}}:
{{begin mime}}
File name, described on page 183
The {{begin mime}} and {{begin email}} commands specify the Body, described on page 183
transmission type. They can replace the {{begin}} and {{type}}
commands. Inline, described on page 183
Mediatype, described on page 184
Base64 or quotedprintable, described on page 184
File name To specify alternative formats, use multiple {{beginnative}}
This is the suggested file name for the data. You need not supply a commands with the body option.
path with this file name because the file data is stored between the Example To send a document that contains both HTML and text,
{{beginnative}} and {{endnative}} commands. This is the only you might use the following FCL:
required parameter of {{beginnative}}.
{{begin mime}}
Example {{beginnative “File.pdf” inline {{to [email protected]}}
mediatype=application/pdf}} {{from [email protected]}}
Here are the files you wanted {{subject Sample of text and HTML in the body of the
{{endnative}} message}}
In this example, RightFax will suggest to the recipient e-mail client {{beginnative “body.txt” body mediatype=text/plain}}
that “Here are the files you wanted” be displayed as an embedded Drew,
object in the body of the e-mail message. If the recipient e-mail Here are the files that you asked for.
client cannot perform this task, then an icon labeled File.pdf will {{endnative}}
appear in the e-mail message. The content of File.pdf will be “Here {{beginnative “body.htm” body mediatype=text/html}}
are the files you wanted.” <HTML><HEAD><TITLE></TITLE><META
content=”text/html; charset=iso-8859-1”
http-equiv=Content-Type></HEAD>
Body <BODY><HR><STRONG>Drew,</STRONG><BR>
This sends the data that appears between the {{beginnative}} and Here are the file that you asked for.<HR>
{{endnative}} commands as text in the body of the e-mail message. </BODY></HTML>
Using the body option, you can specify alternative file formats when {{endnative}}
you want to choose the format that the recipient's e-mail software {{end}}
should display.
For example, you can send a text file and an HTML file. Generally, Inline
the recipient's e-mail software will display the file in the format that This suggests to the recipient e-mail client that the data between
it supports. It will not display both files. {{beginnative}} and {{endnative}} commands be displayed as an
embedded object in the body of the e-mail message. If the recipient
The sequence of the file formats determines the format that the
e-mail client cannot display the host data in this way, then the data
recipient's e-mail software will display. Generally, it will display the
will be sent as an attachment that is represented by an icon in the
first file format that it supports. For example, if you specify text and
body of the e-mail message. The icon can be opened with the
HTML format, a software program that supports both formats will
appropriate application.
display text first.

Chapter 26 Creating FCL Documents with InternetLink Commands 183


RightFax 9.4 Integration Module Guide 184

Mediatype Base64 or Quotedprintable


Specifies the nature of the data between {{beginnative}} and The data between {{beginnative}} and {{endnative}} commands will
{{endnative}} commands. The content type (which is required if you be encoded using the specified scheme. This does not necessarily
use the mediatype option) is represented by a top-level mediatype, require that the attachment be encoded using this scheme in the
a slash, and a subtype. e-mail that is sent to the recipient. If these options are not
Example text/plain specified, then the data will not be encoded (8 bit).

The top-level media type identifies a general type of data, and the
CC
subtype identifies a specific format for that type of data. Thus, a
media type of image/tif is enough to tell a recipient e-mail client that Stores the SMTP address for a carbon copy recipient of a
the data is an image, even if the recipient e-mail client cannot document. To store multiple addresses, repeat this command for
interpret the specific image format of .tif. each recipient.

The default mediatype for native documents with the body option Syntax {{cc address}}
is text/plain. Without the body option, the default mediatype is Example {{cc [email protected]}}
application/octet-stream. Other common mediatypes are (but are {{cc [email protected]}}
not limited to):
The examples send a copy of the e-mail message to both
application/ms-word [email protected] and [email protected].
application/pdf
audio/mid ENDNATIVE
audio/wav Ends the processing of an attached native document that was
image/gif begun with the {{beginnative}} command.
text/html Syntax {{endnative}}
text/xml Example {{endnative}}
video/mpeg
If you do not supply a media type, or if you supply a media type that FROM
the recipient e-mail client cannot interpret, the document most Stores the return SMTP address of the sender of the document.
likely will not fail because most current e-mail clients can detect the Syntax {{from address}}
media type.
Example {{from [email protected]}}
The example uses [email protected] as the return e-mail address
for the e-mail message.
IMAGETYPE
Selects the graphic format of a {{type mime}} document.
Syntax {{imagetype {pdf|group3|group4|pcx}}}
Example {{imagetype pdf}}
The example identifies PDF as the graphic format for a {{type
mime}} document.

SUBJECT
Stores the subject of an SMTP document. The subject appears in
the subject field of the e-mail message.
Syntax {{subject topic}}
Example {{subject RightFax InternetLink example.}}
The example creates an e-mail message with a subject field that
says, “RightFax InternetLink example.”

TO
Stores the SMTP address for the recipient of an SMTP document.
Syntax {{to address}}
Example {{to [email protected]}}
The example sends the e-mail message to
[email protected].

Chapter 26 Creating FCL Documents with InternetLink Commands 185


RightFax 9.4 Integration Module Guide 186
Appendix A
Integration Module Programs

The following table lists the programs that are installed with the Table A1 Programs Installed With the Integration Module (Continued)
RightFax Integration Module in the RightFax\Production\Bin folder. Command line
You can use them to help you configure and fax-enable your Program Description syntax
system. To see a list of the command line options for each program,
type -h at the command prompt to view online help. Fax2note.exe Sends messages to Lotus Notes. fax2note [options]
Hd.exe Displays files in hexadecimal hd [options] input file
Table A1 Programs Installed With the Integration Module format.
Command line Hf.exe Sends data to a TCP/IP port. hf [options]
Program Description syntax
Hlpisend.exe Sends data via HLLAPI. Requires hlpisend [options]
Bufdir.exe Reads a directory and executes a bufdir [options] emulation software that supports
command on each file that is directory HLLAPI. Capable of using a log-on
placed in the directory. script to log in to a 3270 session
Capture.exe Reads input from a serial port at capture [options] input prior to transmitting data.
different rates and in different Makedoc.exe Submits an FCL-encoded file to makedoc [options]
modes and executes a command the Buffer.exe program. Buffer.exe filename
on data that is received. reads the file, parses it for syntax,
Dbnotify.exe Updates databases from a Win32 dbnotify [options] Data notes any errors, and passes the
command line. Source Name file to Parse.exe. Parse.exe
prepares the document to be sent.
Diagtiff.exe Diagnoses TIFF image files and diagtiff [options] infile
provides the contents of their tags. [infile ...] Multitif.exe Breaks one multiple-page TIFF multitif [options]
image into a document consisting documentnumber
Encode64.ex Encodes files using base64 encode64 [options] of single-page TIFF images. startingpage
e encoding. infile outfile
Nplisten.exe Creates a named pipe and nplisten [options]
Fax2mapi.exe Sends MAPI32 messages from the fax2mapi [options] executes a command on data
Win32 command line. received via the named pipe.

187
RightFax 9.4 Integration Module Guide 188

Table A1 Programs Installed With the Integration Module (Continued)


Command line
Program Description syntax
Portlstn.exe Executes a command on a data portlstn [options]
stream received via a TCP/IP port. command
Pssplit.exe Splits a PostScript file to create pssplit [options] infile
separate pages. outputdirectory
Tee.exe Transcribes standard input to tee [options] outputfile
standard output and makes copies
in the file.
Tiffbind.exe Combines single-page TIFF tiffbind [options]
images into one multiple-page TIFF outputtiff inputtiff {input
image. tiff ...}
Tog3.exe Converts differing file formats of tog3 [options] infile
black and white TIFF images to outfile
Group 3, Group 4, PCX, and GIF
images.
Uuencode Encodes files using uuencode. uuencode [options]
infile outfile
Appendix B
FCL Commands

This appendix provides a list of the facsimile command language ALTFAX


(FCL) commands used to create FCL documents. This list provides Stores an alternate fax number for document if the primary fax
detailed information on the command syntax and usage. number fails.
The {{altfax}} argument is cleared when a document is broadcast or
ABORT
the {{execute}} command is used. To broadcast each document
Causes the software to ignore a document before it is faxed. You with an alternate fax number, add an {{altfax}} command after every
can place this command anywhere in the FCL document. new {{fax}} or {{execute}} command.
Syntax {{abort}} Syntax {{altfax fax number}}
Example {{abort}} Example {{altfax 503-555-5458}}
The example sets the alternate fax number for the document to
ADDCOPIES (503) 555-5458.
Increments the number of copies to print. This affects documents
For the procedure that uses this command, see Chapter 11,
with the {{type print}} command.
“Specifying the Destination of the Document”.
Syntax {{addcopies number}}
Example {{addcopies 3}} APPROVAL
The example increments the number of printed copies of the Holds the document for approval in a FaxUtil mailbox.
current document by three. Syntax {{approval}}
See also “TYPE” on page 216 Example {{approval}}
For the procedure that uses this command, see Chapter 20,
“Scheduling Document Transmission”.

189
RightFax 9.4 Integration Module Guide 190

ATTACH BATCH
Ends the current page (unless it is blank) and attaches one or more Alters the scheduled time to the next round number of minutes. This
files, optionally deleting them after they have been added to the is useful for keeping a document to send with a batch of other
document. documents. The {{batch}} command differs from {{delay}} in that it
You can specify the full path to the file with the file name. The full rounds to the nearest number of minutes, rather than adding a
path must be surrounded by quotation marks. The default is specified number of minutes to the scheduled time. Specify the
RightFax\Production\Forms. number of minutes to round to.
Syntax {{batch minutes}}
You can use a wildcard with the file name. If the file name ends in .*
(such as sales.*), files matching the name and ending with any Example {{batch 5}}
extension would be attached to the current document. This is
The example batches to the next nearest five minutes. Therefore, if
useful for creating multiple page attachments.
it is now 1:02 P.M., the batch time would be 1:05 P.M.
If a document contains a {{quality}} command, it should be placed See also “DATE” on page 195
in the document before the {{attach}} command. The {{attach}} “DELAY” on page 195
command cannot be used in {{type email}} documents. “TIME” on page 215
The command can delete the attached file(s) after the fax is
For the procedure that uses this command, see Chapter 20,
generated.
“Scheduling Document Transmission”.
Syntax {{attach filename [delete] [native]}}
Examples {{attach PoInv.doc delete}} BEGIN
{{attach “C:\Program Starts an FCL document. Any text between this command and an
Files\RightFax\Production\MyDocs.doc” native}} {{end}} command is rendered as a single page for faxing or
The first example converts PoInv.doc to fax format (.tif) and printing.
attaches it to the document. After the fax is generated, PoInv.doc is This command is required in every FCL document. FCL documents
deleted. Because no path is specified, PoInv.doc is located in the may contain multiple {{begin}} and {{end}} commands, but the FCL
folder RightFax\Production\Forms. between each set of commands will be rendered as a separate
The second example can be used with the InternetLink Module to page.
send the document via e-mail. The base document would be sent Syntax {{begin}}
as an e-mail, and PoInv.doc would be attached to that e-mail as a
Example {{begin}}
native file—it would be left as a Microsoft Word (.doc) file and not
converted to fax format. See also “END” on page 196
For the procedure that uses this command, see Chapter 19, For the procedure that uses this command, see Chapter 8,
“Attaching and Embedding Files, Signatures, and Graphics”. “Creating FCL Documents”.
BEGINCVT BILLING
This command embeds a document in an FCL document. The fax Specifies the billing code of the fax owner.
server converts the document to a TIF image using server side Syntax {{billing code}}
application (SSA) conversion. For more information on SSA, see
the RightFax Administrator’s Guide. Example {{billing 1234}}

Alternatively, you can encode the embedded document using The example specifies that the billing code associated with this fax
BASE64 or QUOTEDPRINTABLE. This command must be used is 1234.
with the command {{endcvt}}. See also “BILLING2” on page 191
BASE64 is preferable to QUOTEDPRINTABLE unless the {{Billing}} translates to the RightFax server field billinfo1. For more
encoded data must be human-readable. If no encoding sequence information, “Using Cover Sheets in a Broadcast” on page 69.
is specified, the data is assumed to be 8-bit binary.
For the procedure that uses this command, see Chapter 21,
Syntax {{begincvt FileName [base64|QuotedPrintable]}} “Setting Up Notification Messages of Document Transmission”.
Examples {{begincvt proposal.doc}}
{{begincvt proposal.doc base64}} BILLING2
The first example establishes that binary data (in this case, a Specifies a secondary billing code of the fax owner.
document called Proposal.doc) is included in the FCL data stream Syntax {{billing2 code}}
and must be converted.
Example {{billing2 4567}}
The second example does the same as the first example but
specifies to encode the data using BASE64 encoding. The example specifies that the billing code associated with this fax
is 4567.
Along with the required {{endcvt}} command, the FCL might look
like this: See also “BILLING” on page 191

{{begincvt proposal.doc base64}} nnnnnnnn {{endcvt}} {{billing2}} translates to the RightFax server field billinfo2. For more
information, “Using Cover Sheets in a Broadcast” on page 69.
In this example, nnnnnnnn is the actual binary data—the content of
Proposal.doc—embedded in the FCL data stream. This data would For the procedure that uses this command, see Chapter 21,
be unreadable and undoubtedly much longer than the example “Setting Up Notification Messages of Document Transmission”.
here.
See also “ENDCVT” on page 196 BM
Sets the bottom margin for the current and subsequent pages. The
size of the margin is specified in the current units from the bottom
of the page.
Syntax {{bm margin}}
Example {{bm 0.5}}

Appendix B FCL Commands 191


RightFax 9.4 Integration Module Guide 192

The example sets the bottom margin to 1/2 a unit from the bottom The second example draws a 2 by 2 unit box at the coordinates
of the page. (5,5) to (7,7) in current units.
See also “LM” on page 201 See also “FILLBOX” on page 197
“TM” on page 215 “LINEWIDTH” on page 201
“UNITS” on page 217 “PLACEXY” on page 208
“RBOX” on page 210
For the procedure that uses this command, see Chapter 16,
“RFILLBOX” on page 211
“Setting Margins and Tabs”.
“UNITS” on page 217

BOX For the procedure that uses this command, see Chapter 15,
“Creating Lines, Boxes, and Other Shapes”.
Draws a box in the current line width at the specified coordinates,
optionally filling it with text. The coordinates can be formatted (x,y)
or (x y). The coordinates can be specified values, or you can specify CLEARTABS
a position relative to the current cursor position. Removes all tab stops from the document.
If only one coordinate pair is specified, the other coordinate pair is Syntax {{cleartabs}}
assumed to be the current position. Therefore, {{box (5,5)}} is Example {{cleartabs}}
equivalent to {{box (x,y) (5,5)}}.
See also “SETTAB” on page 213
If both coordinates are specified, you can specify a line of text to “TAB” on page 214
appear in the box. The text must be surrounded by quotation marks
and is limited to one line. The text is placed in the box according to For the procedure that uses this command, see Chapter 16,
the current placexy settings, which default to the upper-left corner “Setting Margins and Tabs”.
of the document.
Syntax {{box coord1 coord2 [“text”]}} COMMENT
Examples {{box (0,y) (7,7) “Hi There”}} Stores a user-defined message specific to the document.
{{box 5 5 7 7}} Syntax {{comment comments}}
The first example draws a box from the left side of the page at the Example {{comment Inv# 12345}}
current line to 7 units over, and 7 units down the current page, The example associates the comment “Inv# 12345” with the
placing the text “Hi There” within it. document.
{{Comment}} translates to the RightFax server field to_citystate.
For more information, “Using Cover Sheets in a Broadcast” on
page 69.
For the procedure that uses this command, see Chapter 14,
“Creating and Attaching Cover Sheets”.
COMPANY folder on the RightFax server). If the complete file name is not
Stores a company name for the document. found, the RightFax Integration Module tries to open the file by
adding a .cov extension. If this fails, the cover sheet is assumed to
Syntax {{company name}} be a RightFax .pcl or .doc cover sheet. If no cover command is
Example {{company ABC Incorporated}} specified in a document, the default cover sheet defined in the
RightFax Integration Module Configuration program is used.
The example associates the company name “ABC Incorporated”
with the document. Syntax {{cover template}}
{{Company}} translates to the RightFax server field to_company. Example {{cover sales}}
For more information, “Using Cover Sheets in a Broadcast” on The example specifies the sales or Sales.cov file in
page 69. RightFax\Production\Covers should be used as a template for the
For the procedure that uses this command, see Chapter 14, cover sheet of the current document.
“Creating and Attaching Cover Sheets”.

CONTACT
Stores the contact name for the document.
Syntax {{contact name}}
Example {{contact Kim Boston}}
The example associates the contact name “Kim Boston” with the
document.
{{Contact}} translates to the RightFax server field to_name. For
more information, “Using Cover Sheets in a Broadcast” on
page 69.
For the procedure that uses this command, see Chapter 14,
“Creating and Attaching Cover Sheets”.

COVER
Specifies a cover sheet template for the current document. You can
specify the file name of a cover sheet template, or you can specify
that a cover sheet should not be included.
The file name can be either a full path or a path relative to
RightFax\Production\Covers (this path is for Integration Module
cover sheets; RightFax server cover sheets are stored in a different

Appendix B FCL Commands 193


RightFax 9.4 Integration Module Guide 194

Specific cover names The Integration Module extracts the text between {{covertext}} and
The {{cover}} command can contain the following special cover {{endcovertext}} commands. If PostScript commands appear in the
names: text, they will not be stripped out. Therefore, do not embed
PostScript between {{covertext}} and {{endcovertext}}.
None. No cover sheet is generated, even if you have defined a
default cover sheet in the RightFax Integration Module {{Covertext}} translates to the RightFax server field notetext. For
Configuration program. more information, “Using Cover Sheets in a Broadcast” on
page 69.
Rfdefault. The default cover sheet action associated with the
user is performed. An index number is used to create a block of text within a single
cover sheet. Each instance of a ^covertext keyword in the cover
Examples If a cover sheet is not defined for the user sending the
sheet template will be replaced by the corresponding text enclosed
fax:
between {{covertext}} and {{endcovertext}} commands. If no index
{{COVER NONE}} — No cover sheet is sent. number is specified, the text will be linked to the ^covertext 0
{{COVER RFDEFAULT}} — No cover sheet is sent. keyword.
{{COVER FCS.PCL}} — Specified RightFax server (.pcl) Each instance of {{covertext}} must use a different index number (0
cover sheet is sent. in the example), corresponding to a numbered ^covertext field. 0 is
{{COVER PROD.COV}} — Specified Integration Module the most frequently used number.
(.cov) cover sheet is sent.
If a cover sheet is defined for the user sending the fax: Note 0 (zero) is the only option for RightFax server (.pcl or .doc) cover
sheets. For more information, “Using Cover Sheets in a Broadcast” on
{{COVER NONE}} — No cover sheet is sent. page 69.
{{COVER RFDEFAULT}} — Default cover sheet is sent.
{{COVER FCS.PCL}} — Specified RightFax server (.pcl) Syntax {{covertext indexnumber}}
cover sheet is sent. Example {{covertext 0}}
{{COVER PROD.COV}} — Specified Integration Module
(.cov) cover sheet is sent. For the procedure that uses this command, see Chapter 14,
“Creating and Attaching Cover Sheets”.
For the procedure that uses this command, see Chapter 14,
“Creating and Attaching Cover Sheets”.
CSI
Places text on the cover sheet. This text usually is the general fax
COVERTEXT
number for the enterprise. This command is valid only in cover
This command creates text that should appear on the cover sheet. sheets.
It stores subsequent input (until an {{endcovertext}} command
Syntax {{csi string}}
(page 196)) for later inclusion as a text block in the document
cover sheet. Example {{csi 503-555-5481}}
This example prints “503-555-5481” on the cover sheet.
{{Csi}} translates to the RightFax server field from_phone. For more The example adds 10 minutes to the scheduled send time of the
information, “Using Cover Sheets in a Broadcast” on page 69. document.
For the procedure on using this command with cover sheets, see See also “BATCH” on page 190
Chapter 14, “Creating and Attaching Cover Sheets”. “DATE” on page 195
“TIME” on page 215
For the procedure on setting default text for the CSI field, see
Chapter 9, “Setting Defaults for FCL Documents”. For the procedure that uses this command, see Chapter 20,
“Scheduling Document Transmission”.
DATE
Sets the month, day, and optionally the year in which to send the DEPT
current document. {{Date}} can be combined with {{time}} to Specifies the department of the fax owner.
establish both a day and time to send a document. Syntax {{dept department}}
The slashes between the month, day, and year are required. If no Example {{dept sales}}
{{date}} command is specified, the Integration Module uses the
date the FCL input file was received from the host. The year can be The example specifies that the department associated with this fax
only two digits, and it can include the century. If the year is less is “Sales”.
than 96, the twenty-first century is assumed. For the procedure that uses this command, see Chapter 21,
Syntax {{date month/day/year}} “Setting Up Notification Messages of Document Transmission”.
Examples {{date 11/2}}
{{date 11/20/2004}} EMAIL
Stores the sender’s e-mail address. This is usually used for routing
The first example specifies that the current document is to be
a notification back to the sender that the document has been
transmitted on November 2.
processed, has transmitted, or has failed to transmit
The second example specifies that the document is to be
Syntax {{email address}}
transmitted on November 20, 2004.
Example {{email [email protected]}}
See also “TIME” on page 215
The example stores the e-mail address [email protected] for use in
For the procedure that uses this command, see Chapter 20,
notifications.
“Scheduling Document Transmission”.
For the procedure that uses this command, see Chapter 21,
DELAY “Setting Up Notification Messages of Document Transmission”.
Schedules the document to be sent at a later time by the specified
number of minutes.
Syntax {{delay minutes}}
Example {{delay 10}}

Appendix B FCL Commands 195


RightFax 9.4 Integration Module Guide 196

EMPID ENDCVT
Specifies the employee ID of the fax owner. Ends the conversion of an embedded foreign document that was
Syntax {{empid ID}} begun with the {{begincvt}} command.
Syntax {{endcvt}}
Example {{empid 555-111-2222}}
Example {{endcvt}}
The example specifies that the employee ID associated with this fax
is 555-111-2222. See also “BEGINCVT” on page 191
For the procedure that uses this command, see Chapter 21,
“Setting Up Notification Messages of Document Transmission”. ENDPOLY
Ends the current polygon, drawing a line from the current position
END to the first vertex of the polygon, using the current line width.
{{Endpoly}} is used in conjunction with {{startpoly}}.
Terminates the current document. This is a required command. This
command is required in every FCL document. FCL documents may Syntax {{endpoly}}
contain multiple {{begin}} and {{end}} commands, but the FCL Example {{endpoly}}
between each set of commands will be rendered as a separate
page. See also “LINEWIDTH” on page 201
“STARTPOLY” on page 214
Syntax {{end}}
For the procedure that uses this command, see Chapter 15,
Example {{end}}
“Creating Lines, Boxes, and Other Shapes”.
See also “BEGIN” on page 190
For the procedure that uses this command, see Chapter 8, EXECUTE
“Creating FCL Documents”. Ends the current document, executes the commands to this point
and begins a new document without clearing the previous image.
ENDCOVERTEXT Most of the attributes of the original document are preserved,
except for the following, which are cleared: {{altfax}}, {{company}},
Ends the storing of cover sheet text and tells the RightFax
{{contact}}, {{cover}}, and {{fax}}.
Integration Module to again interpret incoming data.
Syntax {{endcovertext}}
Example {{endcovertext}}
For the procedure that uses this command, see Chapter 14,
“Creating and Attaching Cover Sheets”.
If document processing is performed on a RightFax WorkServer, FF
and if the FCL document contains a print command, then the Acts as a form feed in the FCL input file. It begins a new page at
{{execute}} command will force printing to occur from the the current left and top margins, just as if an ASCII form feed
WorkServer whether or not the Print service is enabled. character had come from the host application.
Syntax {{execute}} Syntax {{ff}}
Example {{execute}} Example {{ff}}
See also “END” on page 196 For the procedure that uses this command, see Chapter 16,
“FAX” on page 197 “Setting Margins and Tabs”.

FAX FILE
Assigns the fax number where the document will be sent. If this is Stores all subsequent input (until an {{end}} command) into the
not the first fax number specified for this document, the document specified file name. You can specify the full path to the file. The
is ended, and a new document begins with all the images of the default is RightFax\Production \Include. {{File}} differs from {{list}}
original. The last page can be updated and new pages can be in that it does not strip leading, white space, or blank lines.
added, but prior pages will remain the same as in the original. By
specifying multiple fax numbers, broadcasts to many different Syntax {{file name}}
destinations can be made. If you have the InternetLink Module, then Example {{file test.inc}}
you can also insert an e-mail address into the fax command and
documents will be e-mailed. For more information, see the RightFax The example writes all subsequent input until an {{end}} command
InternetLink Module Guide. is encountered to the file RightFax\Production \Include\test.inc.

Syntax {{fax number}} See also “LIST” on page 201


{{fax e-mail address}} For the procedure that uses this command, see Chapter 11,
Example {{fax 555-555-5458}} “Specifying the Destination of the Document”.

The example assigns the fax number 555- 555-5458 to the


FILLBOX
document.
Draws a box in the current line width at the specified coordinates,
See also “TYPE” on page 216 filling it with black or white (the default is black). The coordinates
{{Fax}} translates to the RightFax server field to_faxnum. For more can be formatted (x,y) or (x y). The coordinates can be specified
information, “Using Cover Sheets in a Broadcast” on page 69. values, or you can specify a position relative to the current cursor
position.
For the procedure that uses this command, see Chapter 11,
“Specifying the Destination of the Document”.

Appendix B FCL Commands 197


RightFax 9.4 Integration Module Guide 198

If only one coordinate pair is specified, the other coordinate pair is FONT
assumed to be the current position. Therefore, {{fillbox (5,5)}} is Changes the font currently in use and, optionally, the attributes of
equivalent to {{fillbox (x,y) (5,5)}}. If both coordinate pairs are the font. The available font attributes are described in the following
specified, you can specify a fill color. The color can be black or table.
white.
Syntax {{fillbox coord1 coord2 color}} Table B1 Font Attributes

Examples {{fillbox (0,y) (7,7) white}} Attribute Description


{{fillbox 5 5 7 7) Name The name of the font. This can be one of the fonts
The first example draws a box from the left side of the page at the installed with the Integration Module, a TrueType
current line to 7 units over, and 7 units down the current page, font, or any font supported by Microsoft Windows.
filling it in with white. This could be useful for covering up Fonts are installed in Rightfax\Production\Fonts.
information after an {{execute}} command. The font name is used for all subsequent text until
another {{font}} command appears in the
The second example draws a 2 by 2 unit filled black box at the document or until the end of the document.
coordinates (5,5) to (7,7) in current units.
Size The size of a Windows font in points. The default is
See also “BOX” on page 192
12. The size can range from 3 to 288.
“LINEWIDTH” on page 201
This attribute is not available for the installed fonts.
“RBOX” on page 210
“RFILLBOX” on page 211 Leading The vertical spacing for the lines of text in points.
“UNITS” on page 217 This indicates the number of points to move down
from the baseline of the current line to the baseline
For the procedure that uses this command, see Chapter 15, of the following line. A higher number increases the
“Creating Lines, Boxes, and Other Shapes”. amount of vertical space used. One inch is 72
points. Thus, a leading of 12 points is 6 lines per
inch (72 divided by 12 equals 6). You can enter
leading in decimals.
Pitch The horizontal spacing in characters per inch. A
higher number decreases the amount of horizontal
space used. A pitch of 10 is 10 characters per
horizontal inch. You can enter pitch in decimals.
Weight The weight of a Windows font. Weights are thin,
extralight, light, regular, medium, semibold, bold,
extrabold, and heavy.
This attribute is not available for the installed fonts.
Table B1 Font Attributes (Continued) Alternatively, you can use this code to specify that no form should
Attribute Description be overlaid.

Italic Italicize a Windows font.


Syntax {{form name coord}}

Strikeout Draw a horizontal line through the text. Examples {{form order 0.5 0.2}}
{{form none}}
For more information on the installed fonts and support for The first example sets the form to
TrueType fonts, see Chapter 17, “Selecting and Configuring Fonts”. RightFax\Production\Forms\order
Syntax {{font name [size=##] [leading=##] [pitch=##]
or
[weight] [italic] [strikeout]}}
RightFax\Production\Forms\order.tif
Examples {{font courb12 leading=14 pitch=10}}
{{font timbi10}} and places it at (0.5, 0.2) on the page in current units.
{{font “times new roman” size=24 extrabold italic}} The second example specifies that there is no form to be overlaid.
The first example sets the current font to Courier Bold 12-point, See also “PLACE” on page 207
with 14 points of leading and 10 characters per inch. “UNITS” on page 217
The second example sets the current font to Times Bold Italic For the procedure that uses this command, see Chapter 12,
10-point, with default leading. Without specifying leading and pitch, “Creating and Linking Background Forms”.
this font will be proportional and vertical columns will not line up.
The third example uses the Microsoft Windows TrueType font INCLUDE
Times New Roman, size 24, extra bold, and italic. Includes an FCL input file in the input stream. Input from an include
For the procedure that uses this command, see Chapter 17, file is interpreted just as if it came from the host application. Include
“Selecting and Configuring Fonts”. files are useful when the same input is needed in many files. You
can specify the full path to the file. The defaults is
FORM RightFax\Production\Include. If the include file cannot be found, the
Integration Module tries again, adding .inc to the file name.
Specifies a Class F TIF file to be overlaid on the current and
subsequent pages. The specified form name can include the full Syntax {{include filename}}
path to the file or a path that is relative to Example {{include setup}}
RightFax\Production\Forms. The form is normally placed with the
upper-left corner at (0,0) on the page. You can specify the location The example includes input from the file
with x- and y-coordinates. Placement is relative to the upper-left RightFax\Production\Include\setup. If that file does not exist, then it
corner of the current orientation, regardless of the current would include input from the file
{{placexy}} value. RightFax\Production\Include\setup.inc.
For the procedure that uses this command, see Chapter 13,
“Including the Same Files and Commands in Many Documents”.

Appendix B FCL Commands 199


RightFax 9.4 Integration Module Guide 200

LIBDOC The second example draws a line under the current font baseline.
Attaches the specified RightFax library document. See also “LINETO” on page 200
Syntax {{libdoc ID}} “LINEWIDTH” on page 201
“RLINE” on page 211
Example {{libdoc InfoPack1}} “RLINETO” on page 211
The example attaches the library document called InfoPack1 to the “UNITS” on page 217
end of the base document. For the procedure that uses this command, see Chapter 15,
Library documents are frequently faxed documents (such as “Creating Lines, Boxes, and Other Shapes”.
company literature, credit applications, and employment forms) that
you create with FaxUtil. RightFax stores these in the LINETO
RightFax\Image folder. For more information on library documents, Draws a line in the current line width on the current page from the
see the RightFax Administrator’s Guide. current position to the specified coordinates in current units. The
For the procedure that uses this command, see Chapter 19, coordinates can be formatted (x,y) or (x y). The coordinates can be
“Attaching and Embedding Files, Signatures, and Graphics”. specified values, or you can specify a position relative to the
current cursor position.
LINE Syntax {{lineto (coord)}}
Draws a line in the current line width on the current page at the Example {{lineto (3,5)}}
specified coordinates in the current units. The coordinates can be
formatted (x,y) or (x y). The coordinates can be specified values, or The example draws a line from the current cursor position to (3,5)
you can specify a position relative to the current cursor position. If in current units.
both pairs of coordinates are not specified, {{line}} draws a See also “LINETO” on page 200
horizontal line across the page under the baseline in the current “LINEWIDTH” on page 201
font. “RLINE” on page 211
Syntax {{line [coord1] [coord2]}} “RLINETO” on page 211
“UNITS” on page 217
Examples {{line (2,3) (4,5)}}
{{line}} For the procedure that uses this command, see Chapter 15,
“Creating Lines, Boxes, and Other Shapes”.
The first example draws a line from coordinates (2,3) to (4,5) in
current units.
LINEWIDTH LM
Sets the width to draw lines in points. A point is 1/72nd of an inch. Sets the current left margin for rendering text, immediately
A {{linewidth}} command with zero as the number of points changing the current position to reflect the new value. The width of
indicates that no line is to be drawn. Any other line width will be the margin is specified in current units from the left edge of the
rendered at least one pixel wide (approximately 1/200th of an inch). page.
The default line width is one pixel (approximately 1/3 point). Syntax {{lm margin}}
Syntax {{linewidth points}}
Example {{lm 0.5}}
Example {{linewidth 1}}
The example sets the left margin to 1/2 a unit from the left edge of
The example sets the line width to 1 point, or 1/72nd of an inch the page, and moves to that location.
(about 3 pixels). See also “BM” on page 191
See also “LINE” on page 200 “TM” on page 215
“UNITS” on page 217
For the procedure that uses this command, see Chapter 15,
“Creating Lines, Boxes, and Other Shapes”. For the procedure that uses this command, see Chapter 16,
“Setting Margins and Tabs”.
LIST
Writes subsequent input (until an {{end}} command) to the LOOKUP
specified file name. You can specify the full path to the file. The A lookup table can provide information that is not contained in the
default is RightFax\Production\Include. This process will replace a document that is sent from the host application, such as the
file of the same name. {{List}} differs from {{file}} only in that it will recipient company name, fax number, e-mail address, and contact
strip any leading white space or blank lines from the input. {{List}} name.
is useful in creating and replacing broadcast lists. The lookup FCL code uses the specified criteria to look up
Syntax {{list filename}} information in a table contained in a lookup file and then associate
Example {{list bcast.inc}} that information with other information.
Syntax {{lookup criteria table}}
The example writes subsequent input (until an {{end}} command) to
RightFax\Production\Include\bcast.inc. Example {{lookup AC123}}
See also “FILE” on page 197 The example instructs the software to find the entry AC123 in a
lookup table.A lookup table might look like this:
For the procedure that uses this command, see Chapter 11,
“Specifying the Destination of the Document”. AC123{{company ACME Corp}}{{contact John Doe}}
OC456{{company Oregon Corp}}{{contact Jane Doe}}
Default{{company Arizona Corp}}{{contact Mary Doe}}

Appendix B FCL Commands 201


RightFax 9.4 Integration Module Guide 202

If you use {{lookup AC123}}, the software would insert “ACME To specify a position relative to the current x- or y-coordinate, enter
Corp” and “John Doe” into the document. If you made an error, x or y in the command line. X is not a valid y-coordinate, and y is
such as {{lookup AC234}} (which does not exist in the lookup not a valid x-coordinate.
table), then the software would insert the default information. If you See also “POSITION” on page 209
do not specify the path to the lookup table, the default is “RMOVETO” on page 212
RightFax\Production\Include. “UNITS” on page 217
For the procedure that uses the {{moveto}} command, see Chapter
LP, LPR, or PRINTER
15, “Creating Lines, Boxes, and Other Shapes”.
Sets the default printer for the print FCL commands such as {{type
print}} and {{printnow}}.
Using the {{moveto}} command in a Unix system
Syntax {{lp|lpr|printer name}}
If you are using the {{moveto}} command in a Unix system that
Example {{lp local}} generates FCL documents, you must add a value to the Windows
The example sets the printer name to local. registry in order to support the command. On the RightFax server,
edit the Windows registry. Navigate to the subkey
See also “PRINTNOW” on page 209
HKEY_LOCAL_MACHINE\Software\RightFax\Parse. Add the
“TYPE” on page 216
REG_MULTI_SIZE registry value UnixSpecials. Enter the string
For the procedure that uses this command, see Chapter 11, MoveTo in the multi-string editor.
“Specifying the Destination of the Document”.
NOCOVER or NO_COVER
MOVETO Same as {{cover none}} (page 193). No cover sheet is generated,
Changes the current position to the specified coordinates in units. even if you have defined a default cover sheet in the Integration
The coordinates can be formatted (x,y) or (x y). The coordinates can Module Configuration program.
be specified values, or you can specify a position relative to the Syntax {{nocover}}
current cursor position.
Example {{nocover}}
Syntax {{moveto coord}}text
The example allows the document to be processed with no cover
Examples {{moveto 3,4}}Put this here.
sheet.
{{moveto x,5}}Put this here.
For the procedure that uses this command, see Chapter 14,
The first example changes the position to (3,4) in current units. “Creating and Attaching Cover Sheets”.
The second example maintains the x position and moves vertically
to 5 units down the page.
NOTE For the procedure that uses this command, see Chapter 21,
Same as {{REM}} (page 210). Inserts any information; is commonly “Setting Up Notification Messages of Document Transmission”.
used for troubleshooting. It has no effect on the document.
Syntax {{note text}} ONERROR
Describes what the RightFax Integration Module does in the event
Example {{note This came from the PO system}}
the document fails during transmission. This command overrides
The example inserts “This came from the PO system” into the FCL the settings you establish in the Integration Module Configuration
but not into the finished document. program (see “Setting the default “success” action” on page 135)
for each document in which you use the {{onerror}} command.
NOTIFYHOST
Specifies the templates to be used to format the success or failure
of the transmission of the document. It also can specify which ID to
send the notifications. The template files (in the syntax below, these
are Successtemplate.inc for successful documents and
Failuretemplate.inc for failed documents) describe the notification
that should be sent to the host application.
If a template name is not specified, then no notification will be sent.
The channel specifies the notification channel that will send the
notification message. The channel can be specified with an ID
number (from 1 to 128) or the name assigned to the channel. If no
channel is specified, the default channel will be used, number 16.
Syntax {{notifyhost successtemplate failuretemplate
[channel]}}
Example {{notifyhost mysucc myfail mynotify}}
The example shows that, if the document is sent successfully, the
RightFax Integration Module generates a notification message
using the RightFax\Production\Include\Mysucc
or
RightFax\Production\Include\Mysucc.inc notification templates.
Similarly, the Myfail template will be used if the fax is not
successfully sent. Notifications spool to the Mynotify ID.
See also “ONERROR” on page 203
“ONSUCCESS” on page 205

Appendix B FCL Commands 203


RightFax 9.4 Integration Module Guide 204

Options for {{onerror}} are fax, delete, email (or mime), certified, Table B2 Onerror Options (Continued)
nothing, or print. Option Description
Table B2 Onerror Options Nothing If a transmission error occurs in faxing, no special action
is taken. This overrides any defaults you set with the
Option Description Integration Module Configuration program (see “Setting
Certified If a transmission error occurs in faxing, the document the default “success” action” on page 135) .
will be sent as a certified e-mail document. This option Print If a transmission error occurs in faxing, the document
requires that you have licensed the SecureDocs will print. Enter a printer ID defined in Enterprise Fax
Module. Manager.
To configure a notification to alert you that a document If you don’t enter a printer, the software uses the default
failed as a fax and was sent as a certified e-mail, see printer specified in the Integration Module
Chapter 21, “Setting Up Notification Messages of Configuration program (see Chapter 9, “Setting
Document Transmission”. Defaults for FCL Documents”)
Delete If a transmission error occurs in faxing, the fax image will
be deleted. If you use {{onerror delete}}, then Syntax {{onerror nothing}}
successful faxes also will be deleted. {{onerror delete}}
Email or If a transmission error occurs in faxing, the document {{onerror fax number delete}}
mime will be sent via e-mail. This option requires that you have {{onerror email|mime|certified address delete}}
licensed the InternetLink Module. Examples {{onerror fax 503-555-1234 delete}}
To configure a notification to alert you that a document {{onerror email [email protected]}}
failed as a fax and was sent as an e-mail, see Chapter {{onerror certified [email protected]}}
21, “Setting Up Notification Messages of Document
Transmission”. The first example shows that, upon failed transmission, all pages
will be faxed to 503-555-1234 and then deleted.
Fax If a transmission error occurs in faxing, the document
will be sent via fax to another fax number. Specify the fax The second example shows that, upon failed transmission, the
number and whether to delete the fax image after document will be e-mailed to [email protected] via the InternetLink
transmission.. The fax number you enter must be Module.
contiguous (no spaces or tabs). The third example shows that, upon failed transmission, the
If you don’t enter a fax number, the software uses the document will be e-mailed to [email protected] as a certified
default number specified in the Integration Module document via the SecureDocs Module.
Configuration program (see Chapter 9, “Setting
Defaults for FCL Documents”).
For more information on the InternetLink Module, see the RightFax
InternetLink Module Guide. For more information on the
SecureDocs Module, see the RightFax SecureDocs Module
Guide.
See also “NOTIFYHOST” on page 203
“ONSUCCESS” on page 205
{{Onerror delete}} translates to the RightFax server field
faxflag_autodeleteall. For more information, “Using Cover Sheets in
a Broadcast” on page 69.
For the procedure that uses this command, see Chapter 23,
“Setting Up Actions on Document Transmission”) .

ONSUCCESS
Describes what the RightFax Integration Module does in the event
the document transmits successfully. This command overrides the
settings you establish in the Integration Module Configuration
program( “Setting the default “success” action” on page 135) for
each document in which you use the {{onsuccess}} command.

Appendix B FCL Commands 205


RightFax 9.4 Integration Module Guide 206

Options for {{onsuccess}} are fax, delete, email (or mime), certified, Table B3 Onerror Options (Continued)
nothing, or print. Option Description
Table B3 Onerror Options Print When a transmission succeeds in faxing, the document
will print. Enter a printer ID defined in Enterprise Fax
Option Description Manager.
Certified When a transmission succeeds in faxing, the document If you don’t enter a printer, the software uses the default
will also be sent as a certified e-mail document. This printer specified in the Integration Module
option requires that you have licensed the SecureDocs Configuration program (see Chapter 9, “Setting
Module. Defaults for FCL Documents”)
To configure a notification to alert you that a document
was sent as a certified e-mail, see Chapter 21, “Setting Syntax {{onsuccess nothing}}
Up Notification Messages of Document Transmission”. {{onsuccess delete}}
Delete When a transmission succeeds in faxing, the fax image {{onsuccess fax number delete}}
will be deleted. {{onsuccess email|mime|certified address delete}}
Email or When a transmission succeeds in faxing, the document Examples {{onsuccess fax 503-555-1234 delete}}
mime will also be sent via e-mail. This option requires that you {{onsuccess email [email protected]}}
have licensed the InternetLink Module. {{onsuccess certified [email protected]}}
To configure a notification to alert you that a document The first example shows that, upon successful transmission, all
was sent as an e-mail, see Chapter 21, “Setting Up pages of the document are faxed to 503-555-1234 and then
Notification Messages of Document Transmission”. deleted.
Fax When a transmission succeeds in faxing, the document The second example shows that, after successful fax transmission,
will be sent via fax to another fax number. Specify the the document will be e-mailed to [email protected] via the
fax number and whether to delete the fax image after InternetLink Module.
transmission.. The fax number you enter must be
contiguous (no spaces or tabs). The third example shows that, after successful fax transmission, the
If you don’t enter a fax number, the software uses the document will be e-mailed to [email protected] as a certified
default number specified in the Integration Module document via the SecureDocs Module.
Configuration program (see Chapter 9, “Setting For more information on the InternetLink Module, see the RightFax
Defaults for FCL Documents”). InternetLink Module Guide. For more information on the
Nothing When a transmission succeeds in faxing, no special SecureDocs Module, see the RightFax SecureDocs Module
action is taken. This overrides any defaults you set with Guide.
the Integration Module Configuration program (see See also “NOTIFYHOST” on page 203
“Setting the default “success” action” on page 135). “ONERROR” on page 203
{{Onsuccess delete}} translates to the RightFax server field PLACE
faxflag_autodelete. For more information, “Using Cover Sheets in a Positions the specified Class F TIF image on the page. The file can
Broadcast” on page 69. be specified using the full path or relative to
For the procedure that uses this command, see Chapter 23, RightFax\Production\Forms. You can specify the placement of the
“Setting Up Actions on Document Transmission”. image using x- and y-coordinates. If no coordinates are specified,
the graphic is placed at the current cursor location.
ORIENT By default, the graphic is placed in the upper-left corner. The
Sets the page orientation for subsequent text and moves the placement can be specified with the {{placexy}} command.
current position to (0,0) on the page. Text specified prior to the {{Place}} is also affected by the current page orientation and
{{orient}} command will be rendered in the prior page orientation. measurement units.
Syntax {{orient {portrait|landscape}}} Syntax {{place graphic coord}}
Example {{orient portrait}} Example {{place yoyodyne.tif 5 4}}

The example sets the page orientation to portrait for subsequent The example places the graphic image Yoyodyne.tif on the page at
text and graphic blocks. (5,4) in specified units.
For the procedure that uses this command, see Chapter 18, See also “PLACEXY” on page 208
“Setting Page Orientation and Image Quality”. “PLACEALL” on page 207
For the procedure that uses this command, see Chapter 19,
OWNER “Attaching and Embedding Files, Signatures, and Graphics”.
Specifies the document owner’s name.
Syntax {{owner name}} PLACEALL
Places the specified graphic image on the current and all
Example {{owner Jane Doe}}
subsequent FCL pages (but not on file attachments). The file can
The example specifies the owner of this document as “Jane Doe”. be specified using the full path name or a path relative to
{{Owner}} translates to the RightFax server field from_name. For
more information, “Using Cover Sheets in a Broadcast” on
page 69.
For the procedure that uses this command, see Chapter 14,
“Creating and Attaching Cover Sheets”.

Appendix B FCL Commands 207


RightFax 9.4 Integration Module Guide 208

RightFax\Production\Forms. Optionally, x- and y-coordinates can By default, the graphic block is placed in the upper-left corner. The
be specified in current units. If no coordinates are specified, the placement can be specified with the {{placexy}} command.
graphic is placed at the current x and y location. {{Placeall}} is also affected by the current page orientations and
You can use multiple {{placeall}} commands. measurement units.
Syntax {{placelast graphic x y}}
By default, the graphic block is placed in the upper-left corner. The
position can be specified with the {{placexy}} command. Example {{placelast yoyodyne.tif 5 4}}
{{Placeall}} is also affected by the current page orientations and See also “PLACE” on page 207
measurement units. “PLACEXY” on page 208
Syntax {{placeall graphic x y}}
The example places the file Yoyodyne.tif in the last page at the
Example {{placeall yoyodyne.tif 5 4}} location 5 4 (in units, such as inches or centimeters, that you set in
See also “PLACE” on page 207 the Integration Module Configuration program—see Chapter 9,
“PLACEXY” on page 208 “Setting Defaults for FCL Documents”).

The example places the file Yoyodyne.tif in the current and all For the procedure that uses this command, see Chapter 19,
subsequent pages at the location 5 4 (in units, such as inches or “Attaching and Embedding Files, Signatures, and Graphics”.
centimeters, that you set in the Integration Module Configuration
program—see Chapter 9, “Setting Defaults for FCL Documents”). PLACEXY
For the procedure that uses this command, see Chapter 19, Specifies how graphic images and box text should be placed on
“Attaching and Embedding Files, Signatures, and Graphics”. the page. Horizontal placement can be left, center, or right. Vertical
placement can be top, center, or bottom. When placing graphic
images, {{placexy}} denotes the placement of the graphic relative
PLACELAST
to the current position of the cursor. When adding text in a box,
Places the specified graphic image on the last page. The file can {{placexy}} describes the location of the text in the box. If no
be specified using the full path name or a path relative to {{placexy}} command is specified, left and top are used.
RightFax\Production\Forms. Optionally, x- and y-coordinates can
Syntax {{placexy horizontal vertical}}
be specified in current units. If no coordinates are specified, the
graphic is placed at the current x and y location. Example {{placexy center center}}
You can issue multiple {{placelast}} commands. The example instructs the RightFax Integration Module to interpret
coordinates in subsequent {{place}} commands as the horizontal
and vertical center of the graphic block and to horizontally and
vertically center text in subsequent {{box}} or {{rbox}} commands.
See also “PLACE” on page 207
For the procedure that uses this command, see Chapter 19,
“Attaching and Embedding Files, Signatures, and Graphics”.
POSITION The example immediately prints two copies of the document.
Changes the current location on the page according to the See also “TYPE” on page 216
currently selected font. The coordinates can be formatted (x,y) or “LP, LPR, or PRINTER” on page 202
(x y).
Syntax {{position coord}} PRIORITY
Example {{position 5, 20}} Specifies the priority at which the document is to be processed
and scheduled. High priority documents will be processed and
The example moves the position to the fifth column of the twentieth sent before low priority documents of the same scheduled time. If
row of the page (using the specified font as the guide to the no {{priority}} command is specified, low priority is assumed.
character size).
Priority can be 0, 1, or 2, representing low, medium, or high. Normal
See also “MOVETO” on page 202 is the same as medium. If you do not insert a priority command, the
“RMOVETO” on page 212 default is low (0) priority.
For the procedure that uses this command, see Chapter 15, Syntax {{priority {low|0|medium|normal|1|high|2}}}
“Creating Lines, Boxes, and Other Shapes”.
Example {{priority high}}
{{priority 2}}
PREVIEW
Holds the document for preview in the FaxUtil mailbox. Both examples specify a high priority, because “2” is equivalent to
“high.”
Syntax {{preview}}
See also “DATE” on page 195
Example {{preview}} “TIME” on page 215
For the procedure that uses this command, see Chapter 20, {{Priority}} translates to the RightFax server field ucPriority. For
“Scheduling Document Transmission”. more information, see “Using Cover Sheets in a Broadcast” on
page 69.
PRINTER For the procedure that uses this command, see Chapter 20,
See “LP, LPR, or PRINTER” on page 202 “Scheduling Document Transmission”.

PRINTNOW
Prints a copy of the current document immediately. You can specify
the number of copies to print. If the number of copies is not
specified, the default is one copy.
Syntax {{printnow print copies}}
Example {{printnow print 2}}

Appendix B FCL Commands 209


RightFax 9.4 Integration Module Guide 210

QUALITY surrounded by quotation marks and is limited to one line. The text is
Specifies the fax resolution at which the document will send. placed in the box according to the current {{placexy}} settings,
Standard resolution is 204 x 98 dots-per-inch (dpi). Fine resolution which default to the upper-left corner.
is 204 x 196 dpi. {{Quality}} only affects the vertical resolution. Syntax {{rbox coord1 coord2 “text”}}
{{Quality}} should be set on the first page of a document and
Examples {{rbox (0,3) (2,4) “Hi There”}}
maintained throughout the document. Otherwise, pages will stretch
{{rbox -1 -1 1 1}}
or compress when sent. If no {{quality}} command is specified, the
default transmission quality in Integration Module Configuration The first example draws a box 3 units down from the current
program is used. position to 2 units across and 4 units down, placing the text “Hi
Syntax {{quality {standard|fine}}} There” within it.
The second example draws a 2-by-2-unit box one unit back and
Example {{quality fine}}
one unit up from the current position, centering it on the current
The example sets the fax quality for the document to fine (204 x position.
196 dpi).
See also “BOX” on page 192
{{Quality}} translates to the RightFax server field finemode. For
For the procedure that uses this command, see Chapter 15,
more information, see “Using Cover Sheets in a Broadcast” on
“Creating Lines, Boxes, and Other Shapes”.
page 69.
For the procedure that uses this command, see Chapter 18, REM
“Setting Page Orientation and Image Quality”.
Same as “NOTE”. Inserts any information; is commonly used for
troubleshooting. It has no effect on the document.
RBOX
Syntax {{rem text}}
Draws a box in the current line width at the specified coordinates,
optionally filling it with the specified text. The coordinates can be Example {{rem This came from the PO system}}
formatted (x,y) or (x y). The coordinates can be specified values, or The example inserts “This came from the PO system” into the FCL,
you can specify a position relative to the current cursor position. If but not into the finished document.
only one coordinate pair is specified, the other coordinate pair is
assumed to be the current position. Therefore, {{rbox (5,5)}} is
equivalent to {{rbox (0,0) (5,5)}}. If both coordinate pairs are REPLYTO or REPLY_TO
specified, you can embed a line of text. The text must be Specifies a recipient for a notification. You can request that an
HTTP post be sent back to the host as a notification when you use
the RightFax XML Interface. REPLYTO is the field in the submit
post that the XML Interface populates to determine where to send
the notification.
For more information on the RightFax XML Interface, see Chapter For the procedure that uses this command, see Chapter 15,
25, “Programming for the RightFax API for Java”. “Creating Lines, Boxes, and Other Shapes”.
Syntax {{replyto recipient}}
RLINE
Example {{replyto www.captaris.com}}
Draws a line in the current line width on the current page at the
The example specifies that the XML notification should return to specified relative coordinates in current units. The coordinates can
www.captaris.com. be formatted (x,y) or (x y). The coordinates can be specified values,
For the procedure that uses this command, see Chapter 21, or you can specify a position relative to the current cursor position.
“Setting Up Notification Messages of Document Transmission”. If either coordinate pair is not specified, {{rline}} draws a horizontal
line across the page just under the baseline of the current font.
RFILLBOX Syntax {{rline [(coord1) (coord2)]}}
Draws a box in the current line width at the specified relative Examples {{rline (2,3) (4,5)}}
coordinates, filling it black or white (black if none is specified). The {{rline}}
coordinates can be formatted (x,y) or (x y). The coordinates can be
specified values, or you can specify a position relative to the The first example draws a line from coordinates (2,3) to (4,5)
current cursor position. If only one coordinate pair is specified, the relative to the current position in the current units.
other coordinate pair is assumed to be the current position. The second example draws a line under the current font baseline.
Therefore, {{rfillbox (5,5)}} is equivalent to {{rfillbox (0,0) (5,5)}}. If See also “LINE” on page 200
both coordinate pairs are specified, you can specify a fill color. The “UNITS” on page 217
color can be black or white.
For the procedure that uses this command, see Chapter 15,
Syntax {{rfillbox coord1 coord2 color}}
“Creating Lines, Boxes, and Other Shapes”.
Example {{rfillbox (3,3) white}}
{{rfillbox -1 -1 1 1}} RLINETO
The first example draws a box from the current position to 3 units Draws a line in the current line width on the current page from the
over and 3 units down from the current position, filling it in with current position to the specified relative coordinates in current
white. This could be useful for covering up information after an units. The coordinates can be formatted (x,y) or (x y). The position is
{{execute}} command. relative to the current cursor position in the current units.
The second example draws a 2-by-2-unit filled black box at Syntax {{rlineto (coord)}}
coordinates (-1,-1) to (1,1) relative to the current position in current
Example {{rlineto (3,5)}}
units.
See also “BOX” on page 192
“FILLBOX” on page 197

Appendix B FCL Commands 211


RightFax 9.4 Integration Module Guide 212

The example draws a line from the current cursor position to (3,5) By itself, {{rstartpoly}} does not create a polygon; it establishes the
in current units. starting point. Without the two {{lineto}} commands that create the
See also “LINE” on page 200 lines of the polygon (see example), {{rstartpoly}} creates nothing.
“LINETO” on page 200 {{Endpoly}} closes the polygon by connecting the lines created by
“LINEWIDTH” on page 201 the {{lineto}} commands. If you do not specify coordinates, the
“RLINE” on page 211 polygon starts at the position in the document where the command
“UNITS” on page 217 appears.
Syntax {{rstartpoly coord}}
For the procedure that uses this command, see Chapter 15,
“Creating Lines, Boxes, and Other Shapes”. Example {{rstartpoly 0,1}}{{lineto 7,y}}{{lineto 7,10}}{{endpoly}}
The example uses {{rstartpoly}} to begin a polygon at a point 0,1
RMOVETO units, relative to the current cursor location. (You establish units,
Changes the current cursor position to the specified relative such as inches or centimeters, in the Integration Module
coordinates in the specified units. The coordinates can be Configuration program—see Chapter 9, “Setting Defaults for FCL
formatted (x,y) or (x y). Documents”).
Syntax {{rmoveto coord}} See also “ENDPOLY” on page 196
“LINETO” on page 200
Example {{rmoveto 3,4}}
“RLINETO” on page 211
The example changes the position to (3,4) from the current position “STARTPOLY” on page 214
in the specified units. “UNITS” on page 217
See also “MOVETO” on page 202 For the procedure that uses this command, see Chapter 15,
“POSITION” on page 209 “Creating Lines, Boxes, and Other Shapes”.
“UNITS” on page 217
For the procedure that uses this command, see Chapter 15, RTI
“Creating Lines, Boxes, and Other Shapes”. Places text on the cover sheet. This usually is the name of the
sending company. This command is valid only in cover sheets.
RSTARTPOLY Syntax {{rti string}}
Moves the current cursor position to the relative coordinate
Example {{rti ABC Company}}
specified and starts a polygon. The coordinates can be formatted
(x,y) or (x y). This command is different from {{startpoly}} on This example prints “ABC Company” on the cover sheet.
page 214. The command {{startpoly 4,5}} would begin a polygon For the procedure on using this command with cover sheets, see
at a point 4,5 units from the upper-left corner of the fax. The Chapter 14, “Creating and Attaching Cover Sheets”.
command {{rstartpoly 4,5}} would begin a polygon at a point 4,5
units from the current cursor location. For the procedure on setting a default RTI, see Chapter 9, “Setting
Defaults for FCL Documents”.
SETTAB For the procedure that uses this command, see Chapter 19,
Creates a tab stop specified by identifiers in the command. The “Attaching and Embedding Files, Signatures, and Graphics”.
identifiers are:
SIGNATURE
Any whole number starting with zero to identify a tab group. You
can specify up to 20 tabs in a document, numbered 0 through Specifies the name of a graphic file of a signature that should
19. appear in the document. The signature must be created and saved
as a graphic file.
Any measurement to define the size (in inches) of the tab.
Alignment of the tab (C for center, L for left, R for right, D for Syntax {{signature filename}}
aligning decimals in a group of numbers). Example {{signature FredJones.tif}}
Syntax {{settab tab coord {l|r|c|d}}} See also “SIGN, SIGNED, or @” on page 213
Examples {{settab 0 1.5 L}} For the procedure that uses this command, see Chapter 19,
{{settab 1 2.5 C}} “Attaching and Embedding Files, Signatures, and Graphics”.
The first example creates a global tab stop labeled group 0 at 1.5
inches, aligned left. SMS
The second example creates a global tab stop labeled group 1 at Specifies the phone number of the SMS-capable device that will
2.5 inches, aligned center. receive notifications about the fax transmittion
See also “CLEARTABS” on page 192 Syntax {{sms pagerID}}
“TAB” on page 214 Example {{sms 520-555-1212}}
For the procedure that uses this command, see Chapter 16, See also “TYPE” (SMS) on page 216 and “SMSMSG” on
“Setting Margins and Tabs”. page 213
For the procedure that uses this command, see Chapter 21,
SIGN, SIGNED, or @
“Setting Up Notification Messages of Document Transmission”.
Places the file specified by the {{signature}} command after you
have predefined a file name for {{signature}}. These three
SMSMSG
commands insert a signature in the document.
Specifies the text of the SMS notification to send
After you have predefined {{signature}}, you can insert one of these
three commands to insert the signature in the document. Syntax {{smsmsg text}}
Syntax {{{sign|signed|@}}} Example {{smsmsg Fax was sent successfully}}

Example {{sign}} See also “TYPE” (SMS) on page 216 and “SMS” (SMS) on
page 213
See also “SIGNATURE” on page 213

Appendix B FCL Commands 213


RightFax 9.4 Integration Module Guide 214

For the procedure that uses this command, see Chapter 21, For the procedure that uses this command, see Chapter 15,
“Setting Up Notification Messages of Document Transmission”. “Creating Lines, Boxes, and Other Shapes”.

STARTPOLY TAB
Moves the current position to the coordinates specified and starts Creates a single tab stop based on the information you create with
a polygon. The coordinates can be formatted (x,y) or (x y). The the {{settab}} command.
coordinates can be specified values, or you can specify a position Syntax {{tab tab stop text|number}}
relative to the current cursor position.
Examples {{tab 3 1048.01}}
{{Startpoly}} is different from {{rstartpoly}} (page 212). {{tab 3 16.8575}}
{{Startpoly}} starts a polygon at coordinates that are relative to {{tab 1 Hello world}}
the upper-left corner of the document. (You establish units, such
The first two examples are of tab stops for a tab labeled group 3
as inches or centimeters, in the Integration Module Configuration
(you defined this tab group with the {{settab}} command). For
program—see Chapter 9, “Setting Defaults for FCL Documents”).
these examples, if you defined group 3 tabs as {{settab 3 4.5 D}},
{{Rstartpoly}} starts a polygon at coordinates that are relative to then the numbers 1048.01 and 16.8575 would appear with their
the location that the command appears in the document. decimal points aligned vertically at 4.5 inches from the left margin.
By itself, {{startpoly}} does not create a polygon; it establishes the The third example is of a tab stop for a tab labeled group 1. If you
starting point. Without the two {{lineto}} commands that create the defined group 1 tabs as {{settab 1 1.5 L}}, then the words “Hello
lines of the polygon (see example), {{startpoly}} creates nothing. world” would appear aligned left at 1.5 inches from the left margin.
{{Endpoly}} closes the polygon by connecting the lines created by
See also “CLEARTABS” on page 192
the {{lineto}} commands. If you do not specify coordinates, the
“SETTAB” on page 213
polygon starts at the position in the document where the command
appears. For the procedure that uses this command, see Chapter 16,
Subsequent calls to {{lineto}} or {{rlineto}} specify the vertices of “Setting Margins and Tabs”.
the polygon, and {{endpoly}} is used to close the polygon. If no
coordinates are specified, the current position is used for the start TERMID
of the polygon. Specifies the terminal identification from which the document
Syntax {{startpoly coord}} originated.
Example {{startpoly (3,4)}}{{lineto 7,y}}{{lineto 7,10}}{{endpoly}} Syntax {{termid ID}}

The example starts a polygon at (3,4) in current units. Example {{termid A3}}

See also “ENDPOLY” on page 196 The example specifies that the current document came from
“RSTARTPOLY” on page 212 terminal A3.
“UNITS” on page 217 For the procedure that uses this command, see Chapter 21,
“Setting Up Notification Messages of Document Transmission”.
TIME For the procedure that uses this command, see Chapter 16,
Sets the time today when the document should be transmitted. If “Setting Margins and Tabs”.
you enter a time that is earlier than the current time, the document
will be sent immediately. You can combine the {{time}} with {{date}} TRANID
commands to schedule the document. Sets the identification of the transaction that produced the
The colon is required if hours and minutes are specified. If no document.
{{time}} command is specified, the time at which the document was Syntax {{tranid ID}}
received by the RightFax Integration Module is used.
Example {{tranid BR549}}
If you enter a time that is in the past, the document is transmitted
immediately. Documents are also transmitted immediately with the The example sets the transaction ID for this document to “BR549”.
time 0. For the procedure that uses this command, see Chapter 21,
Syntax {{time hour:minute}} “Setting Up Notification Messages of Document Transmission”.

Example {{time 22:45}}


The example sets the time to transmit the current document to
10:45 P.M. today
See also “DATE” on page 195
.For the procedure that uses this command, see Chapter 20,
“Scheduling Document Transmission”.

TM
Sets the top margin for the current and subsequent pages in the
specified units. Text will not render above this margin on the page
after this command. By default, there is no top margin (in other
words, the top margin is zero).
Syntax {{tm margin}}
Example {{tm 0.25}}
The example sets the top margin for the current document to 1/4
inch (or current unit).
See also “BM” on page 191
“LM” on page 201

Appendix B FCL Commands 215


RightFax 9.4 Integration Module Guide 216

TYPE Table B4 Type Options (Continued)


Specifies the type of document. The available document types are Option Description
listed here.
Certified Documents are sent as certified e-mails. To send
documents certified delivery, you must license and
Table B4 Type Options
install the RightFax SecureDocs Module. For more
Option Description information, see the RightFax SecureDocs Module
Guide
Fax Documents are rendered as TIF images and
transmitted via fax. SMS Specifies that notifications about the fax transmission
will be sent to an SMS-capable device. Use the syntax
Print Documents are rendered as TIF images, scaled to
{{type sms serviceID}} where serviceID is the
full-size, and then printed. You can specify the number
SMS/Pager service ID for an SMS service defined in
of copies to print. If the number of copies is not
Enterprise Fax Manager. For more information on
specified, one copy prints. The printed document will
creating Pager/SMS services in Enterprise Fax
include production cover sheets (.cov files). Enterprise
Manager, refer to the RightFax Administrator’s Guide.
cover sheets (.pcl and .doc files) are not printed.
For more information on sending SMS notifications, see
File Documents are rendered as TIF images and placed in Chapter 21, “Setting Up Notification Messages of
the folder that you specify. This command cannot be Document Transmission”.
used when submitting Embedded or False First Page
(FFP) documents to the Integration Module. Syntax {{type type copies filename}}
Email Documents are rendered as text and included in the Examples {{type fax}}
body of an e-mail message. To send documents as {{type file c:\Program
e-mail, you must license the InternetLink Module. For Files\RightFax\Production\Forms\Example.tif}}
more information, see the RightFax InternetLink
{{type print 2}}
Module Guide.
The first example establishes that the document will be sent as a
Mime Documents are rendered as TIF images and included
as an attachment to an e-mail message. To send
fax, rather than a file or be sent to a printer. This is the Integration
documents as e-mail, you must license the RightFax Module default—all documents are assumed to be faxes. You would
InternetLink Module. For more information, see the use {{type fax}} only if you had made file or print the default, but
RightFax InternetLink Module Guide. wanted to fax a particular document or group of documents. For
information on how you can change the default type from fax to
either file or print, see Chapter 9, “Setting Defaults for FCL
Documents”.
The second example creates a document called Example.tif in the
Forms folder.
The third example prints two copies of the document. The printer You can also use the {{unique_id}} command in cover sheet
used is the default established in the Integration Module creation and notification templates. If you do not use this command
Configuration program (it must also be defined in Enterprise Fax in a document, the ID default is prod docnum, where docnum is a
Manager). To change the printer with FCL, you can include {{lp}}, unique integer.
{{lpr}}, or {{printer}} (page 202). Or, you can change the default Syntax {{unique_id ID}}
printer in Enterprise Fax Manager.
Examples {{unique_id test:01ea}}
For information on using the Integration Module Configuration {{unique_id test:01eb}}
program to establish a default printer, see Chapter 9, “Setting
Defaults for FCL Documents”. {{Unique_id}} translates to the RightFax server field unique_id.
See also “PRINTNOW” on page 209 For the procedure that uses this command, see Chapter 21,
“LP, LPR, or PRINTER” on page 202 “Setting Up Notification Messages of Document Transmission”.
For the procedure that uses this command, see Chapter 11
“Specifying the Destination of the Document”. UNITS
Sets the units of measurement to use for subsequent commands in
UNDERLINE the current document. Units of measure can be:
Sets underlining on or off for subsequent text in the current Inches — in
document. Centimeters — cm
Syntax {{underline {on|off}}} Points (72nds of an inch) —points
Example {{underline on}} Pixels (200ths of an inch) —pixels

The example turns on underlining. The default is inches. You set the default unit of measurement for all
documents in the FCL processor settings in the Integration Module
See also “FONT” on page 198 Configuration program (see Chapter 9, “Setting Defaults for FCL
For the procedure that uses this command, see Chapter 17, Documents”). The {{units}} command overrides this global default
“Selecting and Configuring Fonts”. for each document in which the command is used.
Syntax {{units measure}}
UNIQUEID or UNIQUE_ID Example {{units cm}}
Provides a tracking mechanism in FaxUtil by setting the ID field for
one destination (one fax number) within the document. (For The example sets the units of measurement for subsequent
information on FaxUtil, see the RightFax Administrator’s Guide.) commands in this document to be centimeters.
You can use up to 15 alphanumeric characters in the {{unique_id}} For the procedure that uses this command, see Chapter 9, “Setting
command. If you use more than 15 characters, the command is Defaults for FCL Documents”.
truncated at the 15th character.

Appendix B FCL Commands 217


RightFax 9.4 Integration Module Guide 218

USER1, USER2, or USER3 If you do not specify a TZD, then Universal Coordinated Time is
These commands can hold user-defined information. assumed.

These commands can be used only in notifications and Integration Syntax {{UTC YYYY{-|/}MM{-|/}DD{T| }hh:mm:ss TZD}}
Module (.cov) cover sheets. Examples {{UTC 2000-01-24T22:25:00Z}}
Syntax {{user1 user information}} {{UTC 2000-01-24T23:25Z+01:00}}
{{user2 user information}} {{UTC 2000-01-24T14:25-08:00}}
{{user3 user information}} Times must be represented as two digits, with leading zeros as
Example {{user1 Some important information}} necessary, with the exception of the four-digit year and the TZD.

For the procedure that uses this command, see Chapter 21, Table B5 Time Options
“Setting Up Notification Messages of Document Transmission”.
Option Definition Example

USERID YYYY Year 1970-2038


Identifies the creator of this document. MM Month 01-12 (January = 01)
Syntax {{userid ID}} DD Day 01-31
Example {{userid John Doe}} hh Hour 00-23

The example sets the user ID for this document to “John Doe”. mm Minute 00-59

For the procedure that uses this command, see Chapter 21, ss Second 00-59
“Setting Up Notification Messages of Document Transmission”. TZD Time zone designator (Z or
+hh:mm or -hh:mm)
UTC
To avoid confusion caused by different time zones, the UTC For the procedure that uses this command, see Chapter 20,
command sets the date and time when a document should be sent “Scheduling Document Transmission”.
in Universal Coordinated Time.
Alternatively, you can use a Time Zone Designator (TZD). A TZD of VOICE
+hh:mm or -hh:mm indicates that the date/time uses a local time Sets the voice number to be associated with the current document.
zone that is a particular number of hours and minutes (specified by This is useful for specifying a voice number on a cover sheet or
hh and mm) ahead of or behind Universal Coordinated Time. notification.
Syntax {{voice number}}
Example {{voice 503-555-4329}}
The example sets the voice number associated with this document
to (503) 555-4329.
{{Voice}} translates to the RightFax server field to_contactnum. For
more information, see “Using Cover Sheets in a Broadcast” on
page 69.
For the procedure that uses this command, see Chapter 21,
“Setting Up Notification Messages of Document Transmission”.

WINSECID
Specifies the RightFax user; or, if you have not created the user yet
in Enterprise Fax Manager, {{winsecid}} creates it. Because
{{winsecid}} can create a user, it is different from “USERID”
(page 218), which is informational.
Captaris recommends that you have a {{winsecid}} command in the
global.beg file. If you do not (and you do not have a {{winsecid}}
command in the FCL from the host), then the default user account
will be used to send documents from the Integration Module. The
settings for a default user are typically not optimized for sending
documents from the Integration Module (notifications, cover sheet
settings, etc.).
By changing the {{winsecid}} command in the global.beg file, you
can specify or change the default RightFax user account used by
the Integration Module. (Open the global.beg file using Notepad or
another text editor and change the user name in {{winsecid}}.)
Syntax {{winsecid user}}
Example {{winsecid John Doe}}
For more information about global.beg, see Chapter 13, “Including
the Same Files and Commands in Many Documents”.

Appendix B FCL Commands 219


RightFax 9.4 Integration Module Guide 220
Index

Symbols file conversion 105 BEGINNATIVE command 179, 182


in native file format 179, 181 billing FCL code 191
.mtd documents 57
inline via HTTP/S for XML Interface 144 binary data with XML Interface 147
maximum number of pages 47 bm FCL code 191
Numerics multipart MIME via HTTP/S for XML box FCL code 192
3270 emulation Interface 144 box with fill color, example in FCL
connection guidelines 19 with IBM WebSphere MQ for the XML document 89
notification message channel 124 Interface 146 box, example in FCL document 88, 90
5250 connection guidelines 19 broadcasting
cover sheets in 69
B creating a list of recipients 67
A background forms example 68
abort FCL code 189 creating 71 with FCL codes 66
action XML Interface function 143 example 71 Bufdir.exe
activate InternetLink Module 177 linking to a document 72 creating a directory scan 28
addcopies FCL code 189 overview 71 testing directory scanning 35
addressing documents 65 base 64 184 testing TCP/IP port connections 36
alternative fax number 65 BASE64 Buffer.exe 13
altfax FCL code 189 encoding a binary data file for the XML
approval FCL code 189 Interface 147
ASCII text files 12 for XML attachments with IBM WebSphere C
ATTACH command 179, 181 MQ 146 Capture.exe
attach FCL code 190 for XML file attachments 146 creating a serial capture 29
attachments batch FCL code 190 testing serial port connections 36
cover sheets 82 BEGIN EMAIL command 182 capturing data via a named pipe 27
example document 106 begin FCL code 190 capturing data via a TCP/IP port for an IBM
examples 179 BEGIN MIME command 182 WebSphere MQ connection 32
FCL codes for 105 begincvt FCL code 191 CC command 184

221
RightFax 9.4 Integration Module Guide 222

certified email, sending with FCL code 65 covertext FCL code 194 XML_FAX_NOTIFICATION.dtd 156
cleartabs FCL code 192 create InternetLink documents 178 XML_FAX_QUERY_REPLY.dtd 154
comment FCL code 192 csi FCL code 194 XML_FAX_SUBMIT_REPLY.dtd 153
company name, default for cover sheet 46 CSID, default for cover sheet 46
connection channels current units, setting default for FCL 47 E
creating 25-26 customer support 9
directory scanning 28 email FCL code 195
named pipe 27 email messages
serial port 29
D document content for 178
TCP/IP port 31 database notification channel 122 send notification when a fax fails 181
TCP/IP port for IBM WebSphere MQ 32 database notifications 122 email server name 177
testing directory scanning 35 date FCL code 195 email, sending with FCL code 65
testing printer 35 dbnotify.exe 123 empid FCL code 196
testing serial port 36 debug mode, Java API 174 encoding
testing TCP/IP port 36 default example using BASE64 to encode a binary
connection guidelines company name for cover sheet 46 data file for the XML Interface 147
3270 emulation 19 cover sheet 45, 78 for XML file attachments 146
5250 emulation 19 CSID for cover sheet 46 for XML file attachments with IBM
FTP 19 fonts 98 WebSphere MQ 146
LPR 19 image quality 46 end FCL code 196
TCP/IP 19 margins 94 endcovertext FCL code 196
contact FCL code 193 page length 57 endcvt FCL code 196
context-sensitive help 8 page orientation 101 ENDNATIVE command 184
convert XML to FCL 141 printer 45 endpoly FCL code 196
cover FCL code 193 tabs 96 Event Log 46
cover sheets units of measure for FCL 47 examples
attaching with FCL code 82 delay FCL code 195 background form 71
broadcasting with 78 dept FCL code 195 box in FCL document 88, 90
creating 78 directory scanning 28 box with fill color in FCL document 89
default 45, 78 document data flow overview 12 broadcasting 68
default company name 46 document types, choosing 178 cover sheet with document 78, 84
default CSID 46 documents document with attachment 106
example 78 creating with FCL 40 document with signature 107
example FCL document 84 specifying destination 65 faxing from Java API 168
FCL codes for 81-82 documents, FCL requirements for 178 FCL documents 41
for broadcasting 69 DTDs
keywords 79-81 XML_FAX_ACTION_REPLY.dtd 156
logic 83
with XML Interface 147
fonts in documents 98 batch 190 in notification messages 129-130
HTTP/S post with XML Interface 144 begin 190 include 199
line in FCL document 89-90 begincvt 191 including external files with 75
notification message 128 billing 191 libdoc 200
notification message process 111 bm 191 line 200
notification message template 117 box 192 lineto 200
page orientation 102 broadcasting with 66 linewidth 201
setting margins for document 93 cleartabs 192 list 201
tabs in documents 95 comment 192 list of 189
XML Interface documents 157 contact 193 lm 201
executable files, list of 187 converting from XML 141 lookup 201
execute FCL code 196 cover 193 lp 202
covertext 194 lpr 202
F creating documents with 39 moveto 202
creating notifications with 128 no cover 202
failed fax 181 creating shapes with 87-88 note 203
fax csi 194 notifyhost 203
documents with FCL 65 date 195 onerror 203-205
example in Java API 168 delay 195 onsuccess 205-207
maximum number of pages to attach 47 dept 195 orient 207
maximum page length 47 email 195 owner 207
minimum page length 47 empid 196 page orientation 101
reduce image size 47 end 196 place 207
fax FCL code 197 endcovertext 196 placeall 207
fax image resolution 102 endcvt 196 placelast 208
fax image, indented in document 47 endpoly 196 placexy 208
fax number example documents 41 position 209
alternative 65 execute 196 preview 209
printing document if missing 57 fax 197 printer 202
FCL code fax image quality 103 printing documents with 70
abort 189 ff 197 printnow 209
addcopies 189 file 197 priority 209
adding graphics with 108 fillbox 197 quality 210
adding signatures with 106 font 198 rbox 210
altfax 189 fonts for documents 98 rem 210
approval 189 for cover sheets 81-82 replyto 210
attach 190 for scheduling transmission 109-110 rfillbox 211
attaching files with 105 form 199 rline 211
background form for a document 72 form feed 94 rlineto 211

Index 223
RightFax 9.4 Integration Module Guide 224

rmoveto 212 required codes 40 FTP notification channel 125


rstartpoly 212 FCL, required in InternetLink documents 178
rti 212 ff FCL code 197 G
sending documents to a file with 70 field types, MapText 59-62
sending documents with 65 fields, filter template 59-62 Generate Image function 58
sending one document to many recipients file conversion of attachments 105 global include files
with 66 file FCL code 197 adding data to 75
settab 213 file transport command line in XML linking to documents 75
setting margins with 93 Interface 145 names 74
setting tabs with 94 file transport, with XML Interface 145 overview 73
sign 213 fillbox FCL code 197 graphic, adding to document with FCL
signature 213 filter mode 12 code 108
sms 213 filter template
smsmsg 213 creating 52-59 H
startpoly 214 fields 59-62 help, online 8
syntax 41 input channel for documents 64 host name 177
tab 214 maintaining 51 HTTP XML Interface transport 143
termid 214 planning 51 HTTP/S XML Interface transport 144
time 215 preview 58
tm 215 troubleshooting 63-64
tranid 215 font FCL code 98, 198 I
type 216 fonts IBM WebSphere MQ
underline 217 default 98 attachments with the XML Interface 146
uniqueid 217 example 98 creating an input 32
units 217 FCL code for 98 notification channel 126
user1 218 overview 97 testing notification channel 131
userid 218 strikeout 98 XML Interface transport method 146
utc 218 TrueType 97 ID, unique, in Java API 172
voice 218 underline 98 image quality, setting default 46
winsecid 219 Windows 97 image size, reducing 47
FCL documents form FCL code 199 image type 178
code format 41 form feed FCL code 94 IMAGETYPE command 178, 185
creating 39, 40 format include FCL code 199
fax when recipient data is for FCL codes 41 include files 179
missing 138-139 FROM command 184 adding data to global 75
print when recipient data is FTP connection guidelines 19 content of 73
missing 138-139 creating 74
creating list of recipients for
broadcasting 66
global 73 L command line syntax 33
include FCL code 75 creating an IBM WebSphere MQ
landscape page orientation 101
linking to documents 75 input 32
libdoc FCL code 200
names of global 74 testing connections 36
line FCL code 200
overview 73 multipart MIME attachments 144
line, example in FCL document 89-90
standard 73
lineto FCL code 200
indentation (pixels) 47 N
linewidth FCL code 201
inline 183
list FCL code 201 named pipe, creating a capture 27
inline attachments via HTTP/S for XML
lm FCL code 201 native files, attaching to documents 179, 181
Interface 144
lookup FCL code 201 native mode 12
input channels
lookup tables 11 new page FCL code 94
creating 25-26
Lotus Notes notification channel 127 nocover FCL code 202
for filter template documents 64
lp FCL code 202 note FCL code 203
installing
LPR connection guidelines 19 notification message channels
Java API 166
lpr FCL code 202 command line 120
XML Interface 141
LPR, connecting with a named pipe 27 creating 118
Integration Module Configuration program,
starting 45 Notify.exe 120
Integration Module setup wizard, starting 21 M overview 118
testing 131-134
Makedoc.exe 13
testing IBM WebSphere MQ 131
J MapText
notification messages 181
.mtd documents 57
Java API creating communication channels 118
starting 52
action on a document 172-174 creating templates 112-113
MapText field types 59-62
debug mode 174 example document 128
margins
fax example 168 example of process flow 111
example document 93
installing 166 example template 117
FCL code 93
querying a fax 170-171 FCL codes in 129-130
setting default 94
sending documents 167 keywords for 113-115
maximum attached pages 47
status codes 175 overview 12, 111
mediatype 184
retaining copies on RightFax server 119
message body 178
K notification XML Interface function 143
message body text in XML Interface 147
notifications
keywords Microsoft Exchange notification channel 127
fax a copy of document upon
for cover sheets 79-81 MIME attachments with XML Interface 144
transmission 135-136
for notification message Mime.inc 179
fax a copy of document upon transmission
templates 113-115 Mimesend.exe 13
failure 137-138
moveto FCL code 202
fax document when recipient data is
Mqget.exe
missing 138-139

Index 225
RightFax 9.4 Integration Module Guide 226

print a copy of document upon default 101 replyto FCL code 210
transmission 135-136 example 102 requirements, system 177
print a copy of document upon Parse.exe 13 resolution, fax 102
transmission failure 137-138 PCL (print control language) files 12 rfillbox FCL code 211
print document when recipient data is PCX image type 178 rfsms.exe 123
missing 138-139 PDF image type 178 RFWebCon.dll library in XML Interface 144
sending notifications to a database 122 place FCL code 207 RightFax
sending notifications via SMS 123 placeall FCL code 207 customer support 9
vs. submit-reply XML Interface placelast FCL code 208 training 8
function 143 placexy FCL code 208 rline FCL code 211
Notify.exe 13, 120 Portlstn.exe 31 rlineto FCL code 211
notifyhost FCL code 203 portrait page orientation 101 rmoveto FCL code 212
Nplisten.exe position FCL code 209 rstartpoly FCL code 212
creating a named pipe capture 27 PostScript files 12 rti FCL code 212
testing printer connections 35 preview a filter template 58
preview FCL code 209 S
O print control language (PCL) files 12
print copies if no fax number 57 scheduling transmission 109
ONERROR command 181 printer FCL code 202 schemas
onerror FCL code 203-205 printer, setting default 45 XML Interface schemas 147-157
online help 8 printing with FCL 70 XML_FAX_ACTION_REPLY.dtd 156
ONSUCCESS command 182 printnow FCL code 209 XML_FAX_ACTION_SCHEMA 155
onsuccess FCL code 205-207 priority FCL code 209 XML_FAX_QUERY_REPLY.dtd 154
opening programs, list of 187 XML_FAX_QUERY_SCHEMA 153
Integration Module Configuration XML_FAX_SUBMIT_REPLY.dtd 153
program 45 XML_FAX_SUBMIT_SCHEMA 148
Integration setup wizard 21 Q send documents as email if faxes fail 181
MapText 52 quality FCL code 210 sending
orient FCL code 207 query XML Interface function 143 documents to a file with FCL 70
overview, document data flow 12 querying a fax with Java API 170-171 one document to many recipients 66
owner FCL code 207 quotedprintable 184 one document to many recipients with
include files 66
P settab FCL code 213
R shape FCL codes 87-88
page length rbox FCL code 210 sign FCL code 213
default 57 recipients signature FCL code 213
maximum 47 creating a list for broadcasting 67 signature, adding to document with FCL
minimum 47 specifying addresses 65 code 106
page orientation rem FCL code 210 sms FCL code 213
SMS notification channel 123 testing filter templates 63-64
SMS notifications 123 directory scanning connections 35, 36 notification message channels 131-134
smsmsg FCL code 213 printer connections 35 TrueType fonts 97
SMTP host name 177 TCP/IP port connections 36 TYPE command 182
SMTP notification channel 121 text files 12 type FCL code 216
standard include files text for message body with XML
content of 73 Interface 147 U
creating 74 TIF image type 178
linking to documents 75 time FCL code 215 underline FCL code 217
overview 73 tm FCL code 215 unique ID
starting TO command 185 in Java API 172
Integration Module Configuration training 8 in XML Interface 142
program 45 tranid FCL code 215 uniqueid FCL code 217
Integration Module setup wizard 21 transmission units FCL code 217
MapText 52 fax a copy of document upon units of measure for FCL 47
startpoly FCL code 214 failure 137-138 user1 FCL code 218
status codes fax a copy of document upon userid FCL code 218
Java API 175 success 135-136 utc FCL code 218
XML Interface 175 fax document when recipient data is
SUBJECT command 185 missing 138-139 V
submit XML Interface function 142 print a copy of document upon voice FCL code 218
support, customer 9 failure 137-138
syntax for FCL codes 41 print a copy of document upon
system requirements 177 success 135-136 W
print document when recipient data is Windows Event Log 46
T missing 138-139 Windows fonts 97
scheduling 109 winsecid FCL code 219
tab FCL code 214 transmission quality
tabs setting default 46
example 95 X
setting with FCL 103
FCL code 94 transports XML
setting default 96 file attachments with XML Interface 146 converting to FCL 141
TCP/IP connection guidelines 19 XML Interface 141 multipart MIME attachments 144
TCP/IP port capture 31 trim trailing white space 47 XML Interface
templates troubleshooting attachments via HTTP/S 144
creating cover sheet 78 attachments with IBM WebSphere
creating notification 112-113 MQ 146
termid FCL code 214

Index 227
RightFax 9.4 Integration Module Guide 228

example documents 157


example HTTP/S post 144
file transport attachments 146
file transport command line 145
inline attachments via HTTP/S 144
installing 141
multipart MIME attachments 144
notification vs. submit-reply function 143
RFWebCon.dll library 144
schemas 147-157
status codes 175
text for cover sheet 147
text for message body 147
transport options and functions 141, 165
unique ID 142
using XSLT scripts 142
with binary data 147
XML Interface functions
action 143
notification 143
query 143
submit 142
XML Interface transports
file 145
HTTP/S 144
IBM WebSphere MQ 146
XML_FAX_ACTION_REPLY.dtd 156
XML_FAX_ACTION_SCHEMA 155
XML_FAX_NOTIFICATION.dtd 156
XML_FAX_QUERY_REPLY.dtd 154
XML_FAX_QUERY_SCHEMA 153
XML_FAX_SUBMIT_REPLY.dtd 153
XML_FAX_SUBMIT_SCHEMA 148
XSLT scripts with the XML Interface 142

You might also like