Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private void SendHl7Message(string hl7Message, string pacsIpAddress, int pacsPort)
- {
- try
- {
- // Tạo TCP/IP để kết nối tới máy chủ
- //var pacsIpAddress = Setting.HisDhydSetting.PacsIpAddress;
- //var pacsPort = Setting.HisDhydSetting.PacsPort;
- var client = new MyClient(pacsIpAddress, pacsPort);
- var timer = new Stopwatch();
- // Gửi dữ liệu ngay sau khi connect thành công
- client.ConnectStatus += success =>
- {
- if (!success)
- {
- Log.Debug($"---------------- Could not connect to PACS Server: '{pacsIpAddress}:{pacsPort}'");
- Log.Debug($"Reconnect !!!");
- _isSending = false;
- return;
- }
- Log.Debug($"---- Connected success => Send Data'{pacsIpAddress}:{pacsPort}'");
- //Log.Trace($"HL7 Message:\r\n{hl7Message}");
- client.SendData(hl7Message);
- };
- client.OnInCommingData = data =>
- {
- try
- {
- // Xử lý khi nhận được dữ liệu phản hồi từ PACS
- Log.Trace($"Message from PACS:'{data}'");
- //var m = Message.Parse(data.Substring(1));
- //Log.Debug(m[1][9].Value.Equals("ACK")
- // ? "Gửi thông tin sang PACS thành công"
- // : $"Gửi thông tin không thành công:\r\nReceive From Pacs:{data}");
- timer.Stop();
- }
- catch (Exception ex)
- {
- Log.Error($"Error while send Data: Detail \r\n{ex}");
- }
- finally
- {
- client.Disconnect();
- _sendMessage++;
- Log.Trace($"Send {_sendMessage} success -- Time to send current message: {timer.Elapsed.ToString(@"m\:ss\.fff")}");
- Log.Debug($"======================================================== CLose Connection to PACS success ========================================================\r\n");
- _isSending = false;
- }
- };
- _isSending = true;
- timer.Start();
- client.StartConnect();
- }
- catch (Exception e)
- {
- Log.Error($"Error while send HL7 Message: Details:\r\n{e}");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement