The Rendezvous Python module provides you with access to the TIB/Rendezvous 5.3 APIs. TIB/Rendezvous is a commercial messaging middleware provided by TIBCO. TIB/Rendezvous is very commonly used for writing software interfaces between applications in the financial software area, but also in the chip manufaturing industry (where they claim to be No. 1) and in the electric energy industry.
You can download the TIB/Rendezvous software from their website, including a time-limited runtime license (lasts 1 hour, but you can restart the rv communications daemon when the hour has run up, so it should be enough to develop applications).
The module is being copyrighted by the LPGL, meaning that
- you can write commercial applications on top of it
- you must keep the starting banner (the one that’s being printed on module import) intact
- you must redistribute the source for this module or name the web site where the end user can download the module source
- ... and no guarantees, no liabilities of any kind, of course: should this collide with the laws of your country or the special policy of your company, then you are not allowed to use this software, simple as that.
Feature list of the python module:.
- access to all C++ API parts in an object-oriented manner: reliable messaging, certified message protocol, fault-tolerance API. The RvPython has been modelled very closely after the Rendezvous 5.3 C++ classes, only exception is the usage of the callbacks.
- greatly simplified access to the RvMsg class. Basically, you can access Rendezvous messages just as any other Python object (by means of setting or getting attributes). As soon as you are going to use the message contents in any way (sending or printing, for example), the data is converted into the internal Rendezvous format.
- new DateTime class for handling extended timestamp values (with 64 bits precision timestamps, the RvMsg layer uses 40 bits of them), so that you can easily transport dates from 1.1.0000 to 31.12.9999:solves the past and most of the future millenium bugs ;^). A strftime method and a strptime – like constructor makes it very easy to convert to/from ascii date representations
- additional 64 bit integer transport
- access to realtime stock market data through the TIBCO TibMsg API (you’ll need a working market data distribution platform by TIBCO, of course!)
- added ctype – Module – this makes the C – library functions from ctype.h accessible in Python.
- Multithreading - capable
- Python classes for accessing the TIBCO application monitoring.protocol (Hawk/AMI), built on top of the module
- very robust (has been memory-checked with insure+)
- TIBCO has released a new major release 6 early this year, they decided to radically change all APIs. The new C++ API seems to have major downsides however, so i didn’t start to adapt the module. When i decide to do so, i will try to keep the Python API as is, and rewrite the underlying C++ layer. However, the downside from this is, that you are kind of stuck with older compiler versions: it’s gcc2.8.1 with Solaris and egcs 1.1.2 on linux.
- By that time, documentation for the module is available in german only – that’s because it has been developed by a german federal bank, the Landesbank Baden - Württemberg. A translation will follow as soon i have time left for it.
- Bug reports are welcome (bug fixes/patches even more), API change requests not so much – that’s because in our department we are actively developing software interfaces and an adapter framework based on this module, so incompatible changes.