These OMF API based samples are introductory, language-specific examples of sending data via OMF. They are intended as instructional samples only. These samples do not use any OMF libraries to make their OMF calls.
All OMF API samples are console applications that follow the same sequence of events, allowing you to select the language with which you are most comfortable without missing any instructional features. The pattern followed is:
- Read endpoint configurations from config.json
- Get OMF types from OMF-Types.json
- Get OMF containers from OMF-Containers.json
- Get OMF data structure from OMF-Data.json
- Create OMF types
- Create OMF containers
- Send OMF data
- Check that the creations were successful and that the data in the endpoint matches what was sent (testing only)
- Cleanup topics and containers sent (testing only)
These steps illustrate common OMF messages to send. Most OMF sending applications will follow the common paradigm of creating a Type, creating a Container, and then sending Data.
The samples are based on OMF v1.1.
The samples are written in a way that the same sample can send to PI, EDS, and AVEVA Data Hub. This is controlled by either the crendential file passed in or by an override variable in the program.
The examples for PI are tested against the PI Web API OMF accepting endpoint.
This list is not exhuastive, but rather a few key details to know.
- PI only accepts DateTime timestamp
- ADH only accepts Dynamic OMFType classification
- ADH does not accept Link type
If this sample is used against the PI Web API endpoint the client computer must trust the certificate of PI Web API. The samples assume Basic Authentication
Languages | ADH Test Status | EDS Test Status | PI Test Status |
---|---|---|---|
.NET Python C++ |
|
|
|
For the main OMF page ReadMe
For the main landing page ReadMe