Mirth Connect вообще отвечает/отвечает при подключении через TCP

У меня есть требование подключиться к Mirth/Rosetta (NextGen) через TCP соединение, чтобы отправить HL7 сообщение и получить ответ. Поскольку это мое первое взаимодействие с весельем, я начну в качестве теста, чтобы узнать, работает ли это.

Проблема: когда я пытаюсь отправить случайный текст веселью или даже MLLP HL7 message, он вообще не отвечает. Я использую очень простой код подключения TCP (как показано ниже) для проверки подключения. Я ожидаю, что веселье отправит ACK с ошибкой или, по крайней мере, с какой-то ошибкой. Но он остается пустым, когда выполняется строка stream.Read.

TcpClient client = new TcpClient("x.x.x.x", 1234);
var message = "HELLO MIRTH";
Byte[] data = System.Text.Encoding.ASCII.GetBytes(message);
NetworkStream stream = client.GetStream();
stream.Write(data, 0, data.Length);
Console.WriteLine("Sent: {0}", message);
data = new Byte[256];
while (true)
{
    bytes = stream.Read(data, 0, data.Length);
    if (bytes > 0)
        break;
}
var responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes);
Console.WriteLine(DateTime.Now.ToString());
Console.WriteLine("Received: {0}", responseData);

Что удивительно, так это то, что когда я отправляю одно и то же сообщение из какого-то HAPI TestPanel (тестового инструмента для подключения/отправки сообщения через TCP), он работает нормально, и я получаю ответ (как показано на следующем снимке экрана). Это заставляет меня думать, что я что-то упускаю. Несмотря на то, что мой тестовый код, показанный выше, работает хорошо, если я подключаю его к своему собственному прослушивателю TCP. Но когда он пытается соединиться с Mirth, он не получает никакого ответа.

Сообщение отправлено с помощью инструмента тестирования

Вопрос: есть ли что-то особенное, что мне нужно добавить в мой TCP-отправитель, чтобы общаться с TCP-сервером Mirth (или с любым TCP-сервером стандарта HL7)? Если нет, пожалуйста, направьте меня в этом отношении. Мне нужно подключиться и получить ответ.

Сообщения, которые я пробовал:

  • Привет мир
  • MSH|^~&|xyz|xyz|xyzz||20210224162555.3992||ADT^A28|13391074-7b39-42f7-b6bf-f174fb6e8231|P|2.5 ...
  • Сообщение HL7, заключенное в теги VT и FS CR

person Zeeshan    schedule 25.03.2021    source источник
comment
Надо посмотреть как настроен Мирт. Без него трудно понять, в чем может быть проблема.   -  person Amit Joshi    schedule 17.05.2021


Ответы (1)


Попробуйте это на сервере Mirth Connect, получившем сообщение. Определите шаг преобразования на коннекторе назначения с желаемым форматом вывода/ответа. Если желаемым ответом являются необработанные данные, просто используйте преобразователь Javascript, а затем вызовите встроенную функцию ConnectorMessage.getRawData(). Наконец, в прослушивателе TCP выберите имя преобразователя (созданного в целевом соединителе) в списке элементов под ответом (прямо под исходной очередью).

person Frank    schedule 13.04.2021