1. Field of the Invention
The present to postal security devices and, more particularly, to an application program interface for controlling postal security devices.
2. Brief Description of Related Developments
In general, postal security devices (PSD's) are controlled by complex software. It would be advantageous to provide a high level interface between one or more PSD's and an application developer.
The present invention is directed to an application program interface for controlling one or more postal security. devices (PSD's). The API includes a function for configuring COM ports of the one or more PSD's, a function for initializing the one or more PSD's, a function for logging in to the one or more PSD's using PIN numbers, a function for enabling funds management, and a function for activating or suspending indicia printing.
The foregoing aspects and other features of the present invention are explained in the following description, taken in connection with the accompanying drawings, wherein:
Although the present invention will be described with reference to the embodiment shown in the drawings, it should be understood that the present invention can be embodied in many alternate forms of embodiments. In addition, any suitable size, shape or type of elements or materials could be used.
The present invention is directed to a high level application program interface (API) that provides low level communication between one or more PSD's, also referred to as SAFE's, and an application developer. In another embodiment, the present invention also provides low level communication between a PSD and a service provider infrastructure.
The present invention is compatible with a variety of development environments such as web pages, for example, Active Server Pages or complied languages for example, Visual C++ or Visual Basic. The process of creating indicia is the same generally across environments but the means of extrapolating data may be different. A developer gathers rate information, recipient address, etc. then submits this information to a PSD through the present invention, which validates the incoming data, creates an indicia stream, and returns that stream to the developer. The developer can then return that stream to a client and create an image on the client's computer or create the image on a server and return the image to the client.
An example of how a web developer would create indicia is shown in
The primary components of the API of the present invention are:
An image maker routine, or program, which may be a Common Object Model (COM) Dynamic Link Library (DLL) built on an Active Template Library (ATL). The image maker routine is generally installed a client or server and operates to convert the indicia into a JPEG or Bitmap file image for printing;
A control program, which may be a COM service built on ATL to be used exclusively by a server. This control program maintains and regulates the activities of the one or more PSD's. The activities may generally include indicia creation, postage download, and server configuration; and
A PSD Agent which is a program that may be a COM component built on ATL and may be used exclusively by the control program to service a number of PSD's. The PSD Agent may not be directly accessible by a developer.
The API generally provides the following functions:
An indicia creation interface which controls the implementation process of creating indicia that represents postage and a system of payment; Indicia creation rates may be in excess of 18,000 per hour;
A payment process that includes downloading funds into the PSD's from a service provider's infrastructure for indicia printing;
Remote access configuration which may includes specifying a RAS phonebook connection or a network card, and specifying port and IP address of a service provider's server;
A configuration function that includes computer selection, adding and specifying communication ports, and activating or deactivating PSD's by use of a Personal Identification Number (PIN) logon;
Automated download configuration that enables or disables automated downloads and threshold amounts;
A first time download function that provides an initial funds download to prime a PSD for indicia printing;
A maintenance function that provides a connection to a service provider infrastructure for automated software upgrades, resetting of timers, etc.;
A refund process for removing a PSD from operations and refunding any remaining postage contained by the PSD. This operation renders the PSD inoperable;
An information display providing a visual representation of the PSD's condition, including funds available, descending and ascending registers, battery expiration, etc.; and
Log facilities that provide three different levels log tracing: event tracing, event logging and error tracking.
In order to begin operations, a supervisor or supervisory function must configure a set of COM ports to communicate with the PSD's before operations are started. An account on the service provider infrastructure for downloading funds for each PSD is generally established. The supervisory function generally provides individual PIN numbers for each PSD, a PSD will generally not store these values will require them each time the PSD is logged onto. An automated funds download threshold is usually supplied before operations are started.
The API may be implemented using COM and may support languages such as Visual C++, Visual Basic and Active Server Pages (ASP).
The API may control PSD's across a distributed system, for example the API may reside on one system, while a number of PSD's under control of the API may reside on another system connected by a network.
In addition to general operations, the API also provides for funds downloading in the event that a PSD runs low on funds. Funds download is an automated function that may be set by the supervisor. An example of a funds download function is shown in
Detailed operations and examples of screens presented to a user as part of the API will now be explained. On startup of the API, the user is presented with a screen as shown in
Once the COM ports for each PSD have been set up, the PSD's are initialized by the Initialize PSD's selection 415 as shown in
After initialization, selecting Login to PSD's 420 provides a user with the ability to perform a PIN number logon for each PSD as shown in
Selecting Funds Management 425 provides a user with a screen as shown in
Once the PSD's have been configured, they may be put into use by selecting Activate Indicia Printing 430 as shown in
At anytime, indicia printing may be suspended or resumed by selecting Suspend Indicia Printing or Resume Indicia Printing as shown in
Thus, the present invention provides a high level API that is intuitive and easy to use when utilizing one or more PSD's for printing indicia. The interface also provides a communication path between the PSD's and a service provider for funds replenishment.
It should be understood that the foregoing description is only illustrative of the invention. Various alternatives and modifications can be devised by those skilled in the art without departing from the invention. Accordingly, the present invention is intended to embrace all such alternatives, modifications and variances.