|
| API | C | JAVA | TCL |
| X.400 Client API | X | X | X |
| Isode X.400 Gateway API | X | X | |
| Open Group X.400 Gateway API | X | ||
| SOM API | X | X |
A Java implementation of the SOM API may be provided in a future release.
Descriptions on overall use is provided for all APIs. The Isode 'C' and Java APIs have detailed API documentation that is auto-generated from the API implementation. The Open Group X.400 Gateway API is externally specified. Isode documents how to use this API and Isode's extensions to the standard API.
There are examples of using all of the APIs in each language (except SOM/Tcl). Because the API functionality is broadly language independent, the examples in other languages may be helpful.
Isode also makes available (for a small fee) the Java source code to XUXA the demonstration X.400 User Agent, that uses the X.400 Client API. This provides a complete application and also an example of building a higher level Java API on the base API.
The rest of this page gives some more information on the APIs, and pointers to the documentation on APIs and example code. Quick links to the Isode API detailed specifications are provided below.
| X.400 Client API ('C'): | HTML | |
| X.400 Client Java API ('Java'): | HTML | |
| X.400 Gateway API: | HTML | |
| SOM API: | HTML |
The X.400 APIs allow client programs to connect to the Isode MTA. They are divided into two categories
The most straightforward starting point for the X.400 APIs is to use the quickconfig program. This provides a quick and easy way to install, initialize and configure a system to use all of the X.400 APIs. The Quick Start Guide includes an explanation of how to submit messages using the quickconfig GUI (which uses the X.400 API)
Having run the quickconfig program you will be able to use the P3 and P7 APIs using C, Tcl and Java language bindings.
It's important to understand the difference between these two X.400 protocols. The MTA needs to be configured differently, and the applications need to be written differently. This is despite the use of the same set of functions as interfaces by the applications.
P3 and P7 client applications bind as a User Agent (to the MTA and Message Store respectively). Submission work in a similar way. However P7 is a retrieval protocol, whereas P3 is a delivery protocol.
P7 applications bind as a Message Store user to the Message Store. The P7 application can retrieve messages, which can be deleted from this user's mailbox. Only messages for the bound user can be retrieved, deleted etc. When submitting messages, the originator of the message must be the bound user.
P3 applications bind to the P3 channel of the MTA. They bind to a P3 passive channel (ie a channel which has no prog value in its configuration). Although the P3 client authenticates as a Message Store user (using the user's MTS password), this means that all messages which are routed for delivery to the P3 passive channel are delivered when a P3 client binds to the P3 server of the MTA. P3 clients are responsible for reliable storage of the messages. P3 clients can only unbind after an msWait() operation has returned indicating that there are no further messages for delivery by the MTA - ie all queued messages must be delivered.
The quickconfig program configures the MTA so that both P7 and P3 clients can retrieve/submit messages.
The example code is in
See here for details.
The example code is in
See here for details
The example code is in
See here for details
Having run the quickconfig program you will be able to use the Gateway APIs using C and Tcl language bindings.
The example code is in
See here for details.
The example code is in
See here for details
Having run the quickconfig program you will be able to use The Open Group's X.400 Gateway API using C language bindings. For
The example code is in
See here for details.
SOM servers available are
The main components of the SOM API for M-Switch Queue Manager are:
The main components of the SOM API for M-Store are:
The SOM API is described at http://www.isode.com/Documentation/messaging-api/somc-api/index.htm
Having installed the Isode M-Switch product, you can use the SOM APIs using C and Tcl language bindings.
The example code is in
See here for details.