t2iapi describes a product-independent interface to manipulate devices which utilize ISO/IEEE 11073 SDC during verification.
It is utilizing gRPC to allow for language-independent implementations of the manipulation interface at an appropriate location, be it in the device under test or within an already existing remote control application.
t2iapi wheels can be built locally using the following steps using python version 3.8:
Note, this requires protoc
and python
to be in your PATH
.
cd python
./build_protobuf.sh
python -m pip install wheel==0.37.0
python setup.py bdist_wheel
Wheels will be available in t2iapi/python/dist
.
t2iapi jars can be built locally using the following steps. Note that specifying versions for protoc, grpc and the jar itself is mandatory. Only use supported combinations of protoc and grpc, typically this can be determined from the protoc version used by the respective grpc-java release.
cd java
./gradlew build
Jars will be available in t2iapi/java/build/libs
.
Note that this requires protoc to be in your PATH
.
t2iapi usage always consists of two parties, the t2iapi server and the t2iapi client. When running tests for a provider, the test engineer provides an implementation of the t2iapi server, which, when requested, makes changes to the Device under Test to reach a specific device state.
graph LR
subgraph dut["Test Engineer responsibility"]
A["Device under test"]
C(t2iapi server)
C <--manipulation--> A
end
subgraph testtool["Test tool"]
B(Test case)
D(t2iapi client)
B --> D
end
D <--grpc manipulation call--> C
B --SDC--> A
Changes to t2iapi are guided by requirements of Dräger test tools, including SDCcc. As such, they are only done by Dräger employees.
The t2iapi library is not intended for use in medical products.
t2iapi was not developed according to ISO 9001.