web stats
Does it sopported in Mirth with communication in private protocol over TCP - Mirth Community

Go Back   Mirth Community > Mirth Connect > Support

Reply
 
Thread Tools Display Modes
  #1  
Old 12-12-2013, 05:36 PM
jinhailong jinhailong is offline
What's HL7?
 
Join Date: Dec 2013
Posts: 4
jinhailong is on a distinguished road
Question Does it sopported in Mirth with communication in private protocol over TCP

Hi, I am currently doing a project which collects medical data(xml format) from hospitals and clinics and sends it to Health Care Companies.

Some suggest me to use Mirth to do this job because it supports various data formats via multi-protocols in both input and output.

Our problem is that the Healthcare interface which receives the data needs authentication at the beginning of the communication and all data need to be compressed, encrypted and base64 encoded before they can be accepted. For example, to send a subscription from a hospital, we need to send the hospital name, hospital key and transaction code to the interface. We will then receive a code indicates the request is authenticated and then we can start to send the encrypted data. After the data transfer is done we will get the result of the transaction from the platform (like whether the data is valid etc.) and sent it back to the hospital (synchronized or asynchronized).

My question is can we make all these within Mirth? I know Mirth can receive data from hospital, doing data mapping and xml format transforming, setting up TCP connection to the Healthcare. But can it meet following requirements:

1 Does it support customized data processing so that we can use our own classes to do the compression and encryption things?

2 Can it handle the interactive procedure with the platform interface like the authentication described above?

3 Is there a mechanism to receive the platform results(sending through tcp connection with interface) and return them to the hospitals and clinics as responses to their former data sending requests?

I am newbie to Mirth, so please tell me whether these can be done or not in Mirth and what features or parts corresponds to these requirements so that I can go directly and get the ideas. Because there is not much time left for making the decision. It will be appreciated if the links of resources are attached with the solution for further reading.

Thank you!

Last edited by jinhailong; 12-12-2013 at 07:03 PM.
Reply With Quote
  #2  
Old 12-13-2013, 05:49 AM
narupley's Avatar
narupley narupley is online now
Mirth Employee
 
Join Date: Oct 2010
Posts: 7,111
narupley is on a distinguished road
Default

Quote:
Originally Posted by jinhailong View Post
1 Does it support customized data processing so that we can use our own classes to do the compression and encryption things?
Yes, we use Rhino for our JavaScript engine, which seamlessly integrates into the underlying JVM, so you can call you own custom Java classes.

Quote:
Originally Posted by jinhailong View Post
2 Can it handle the interactive procedure with the platform interface like the authentication described above?
All of what you described is definitely possible, though some parts would require some custom channel architecture.

Quote:
Originally Posted by jinhailong View Post
3 Is there a mechanism to receive the platform results(sending through tcp connection with interface) and return them to the hospitals and clinics as responses to their former data sending requests?
Yes, channels are built that way to begin with. A message is received by the channel (via TCP, or any other method you want), you transform the message, send it off somewhere else, or do something else custom with it, and then send back whatever response you want to the originating system, on the same TCP connection.
__________________
Step 1: JAVA CACHE...DID YOU CLEAR ...wait, ding dong the witch is dead?

Nicholas Rupley
Work: 949-237-6069
Always include what Mirth Connect version you're working with. Also include (if applicable) the code you're using and full stacktraces for errors (use CODE tags). Posting your entire channel is helpful as well; make sure to scrub any PHI/passwords first.


- How do I foo?
- You just bar.
Reply With Quote
  #3  
Old 12-13-2013, 10:28 PM
jinhailong jinhailong is offline
What's HL7?
 
Join Date: Dec 2013
Posts: 4
jinhailong is on a distinguished road
Default

Thank you, narupley. Your reply is really helpful.

I have seen some examples on how to call java code in JS routine and I think it would be straightforward to pass the response to the source of message as you mentioned that it is the purpose of channels.

One thing that still confuse me is how much work it takes to customize the channel architecture to meet our requirement. Is it as simple as implementing an interface and a simple TCP socket communication session (send/recv some strings plus a few line to parse the response) or is it as hard as building a whole channel from the draft. Is there any examples or threads of this topic on the forum so I could evaluate the estimated work and difficulty to accomplish this?
Reply With Quote
Reply

Tags
adaptor, mirth connect, tcp

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -8. The time now is 09:41 PM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Mirth Corporation