A transmission mode provider for Diesse Cube 30 Touch erythrocyte sedimentation rate analyzer
Like any other Mirth plugin
- Clone repo
- Run
maven clean package
- Get
cube30mode.zip
file fromdistribution/target
- Drop zip contents into
mirthroot/extensions
- OR
- Install through Mirth Connect Administrator
- Set Source Connector inbound datatype to
XML
- Set Source Connector Type to
TCP Listener
- Set transmission mode to
Cube30Touch
- Set TCP Listener data type to
Text
with default encoding. UTF-8 should be fine.
Incoming hex
3e 30 30 32 35 30 31 35 31 30 31 4c 32 30 30 35 30 38 30 31 32 36 30 10 30 38 30 35 32 30 31 34 32 30 20 20 20 30 30 38 30 30 30 30 30 35 0d 34 33 3e 30 30 32 35 30 31 35 31 30 31 4c 31 39 31 31 32 32 30 31 33 36 31 10 31 32 30 35 32 30 31 34 34 30 20 20 36 38 30 30 30 30 30 30 31 38 0d 35 34
Incoming ascii
>0025015101L20050801260�0805201420 008000005
43>0025015101L19112201361�1205201440 6800000018
54
Converted xml
<cubeFrames>
<readFrameCount>2</readFrameCount>
<cubeFrame>
<dataBytesCount>25</dataBytesCount>
<recordTubesCount>1</recordTubesCount>
<barcode>L20050801260</barcode>
<dateTime>2020-05-08T14:20</dateTime>
<ves>0</ves>
<flag>Reading Error</flag>
<cycle>5</cycle>
<isValidFrame>true</isValidFrame>
</cubeFrame>
<cubeFrame>
<dataBytesCount>25</dataBytesCount>
<recordTubesCount>1</recordTubesCount>
<barcode>L19112201361</barcode>
<dateTime>2020-05-12T14:40</dateTime>
<ves>68</ves>
<cycle>24</cycle>
<isValidFrame>false</isValidFrame>
<invalidityReason>CHECKSUM_FAULT</invalidityReason>
</cubeFrame>
</cubeFrames>
- If
flagText
element is present then the message is erroneous The plugin rejects frames with invalid checksums!No longer...
- More simplification
- Pass through all fields and allow user to filter from Source Filters
- Moar settings
- Level of Rejected frame data message
- Implement more stuff from the specification
- Also, should probably definitely move to byte iteration for field values instead of the current Regex...
- This plugin does not do everything in the specification! As it stands right now it just receives messages and makes a pretty XML of it. The main purpose of this plugin was to simplify checksum calculation.
Pull requests are always welcome