How to create delay between HL7-messages

36 views
Skip to first unread message

Mauri Kaatrasalo

unread,
Apr 27, 2012, 5:55:44 AM4/27/12
to ensemble-in...@googlegroups.com
Hi!

Usually we want Ensemble to work as fast it can (and it's fast, speeding I would say!).

But, sometimes we have situation that some connecting application is upgraded and offline during upgrade. During upgrade Ensemble queues messages and when connecting application is online again, Ensemble's operation delivers messages to application.

Problem is, that sometimes companies responsible of connecting applications want us not to deliver all messages in queue at once, but just only couple of messages, or let me say, one message in one minute. They would like to be sure that their application's messaging would work in production environment and in new application version. Of course this could be done so, that I would define Ensemble's ResponseTimeout=65 and tell company that they should send their ack after 60 seconds.. But they haven't got tools (or knownledge) for that..

Is there any way, how I could get this done with stantard HL7-operation?

If not, then new property DelayBetweenMessages would be pretty nice. Default value 0.

Of course I can do this by disabling current operation, creating new temporary operation and resending first message in current que to this new one. And when everything works ok, just delete temporary operation and resended messages from queue and enable current operation again.

Best Regards

Mauri

Andrew Makinson

unread,
Apr 27, 2012, 7:00:24 AM4/27/12
to ensemble-in...@googlegroups.com
You could create a user-function that 'Halts' operation for 60 seconds and call it from a rule, transformation or BSP.

The Object script would be ' H 60'


Sent from my iPhone
--
You received this message because you are subscribed to the Google Groups "InterSystems: Ensemble in Healthcare Community" group.
To post to this group, send email to Ensemble-in...@googlegroups.com
To unsubscribe from this group, send email to Ensemble-in-Healt...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/Ensemble-in-Healthcare?hl=en

David Loveluck

unread,
Apr 27, 2012, 8:54:35 AM4/27/12
to ensemble-in...@googlegroups.com

I don’t know how you would use it in this context, but for correctness the command is Hang, not Halt. Halt terminates the process.

Ted Peck

unread,
Apr 27, 2012, 11:59:44 AM4/27/12
to ensemble-in...@googlegroups.com, Mauri Kaatrasalo
We have had other people request such a "throttle" feature but we have never gotten to it. I will try to implement it now. I will call the new Settings property "ThrottleDelay".
Mauri --

hjk

unread,
May 14, 2012, 1:46:59 PM5/14/12
to Ensemble-in...@googlegroups.com, ensemble-in...@googlegroups.com, Mauri Kaatrasalo, t...@intersystems.com
This is GREAT!


     hjk


perjantai, 27. huhtikuuta 2012 18.59.44 UTC+3 Ted kirjoitti:
We have had other people request such a "throttle" feature but we have never gotten to it. I will try to implement it now. I will call the new Settings property "ThrottleDelay".

On 4/27/2012 5:55 AM, Mauri Kaatrasalo wrote:
Hi!

Usually we want Ensemble to work as fast it can (and it's fast, speeding I would say!).

But, sometimes we have situation that some connecting application is upgraded and offline during upgrade. During upgrade Ensemble queues messages and when connecting application is online again, Ensemble's operation delivers messages to application.

Problem is, that sometimes companies responsible of connecting applications want us not to deliver all messages in queue at once, but just only couple of messages, or let me say, one message in one minute. They would like to be sure that their application's messaging would work in production environment and in new application version. Of course this could be done so, that I would define Ensemble's ResponseTimeout=65 and tell company that they should send their ack after 60 seconds.. But they haven't got tools (or knownledge) for that..

Is there any way, how I could get this done with stantard HL7-operation?

If not, then new property DelayBetweenMessages would be pretty nice. Default value 0.

Of course I can do this by disabling current operation, creating new temporary operation and resending first message in current que to this new one. And when everything works ok, just delete temporary operation and resended messages from queue and enable current operation again.

Best Regards

Mauri
--
You received this message because you are subscribed to the Google Groups "InterSystems: Ensemble in Healthcare Community" group.
To post to this group, send email to Ensemble-in-Healthcare@googlegroups.com
To unsubscribe from this group, send email to Ensemble-in-Healthcare-unsub...@googlegroups.com
Reply all
Reply to author
Forward
0 new messages