Here is my interpretation of the primary part of your problem:
A emits messages using format/protocol pA
A is configured to talk D as its "next hop" for pA
B is interested in A's state but understands
(or prefers) messages in format/protocol pB, not pA
D accepts messages in pA from A,
D adapts messages in pA to messages in pB, possibly using C,
D forwards adapted messages (in pB) to B
C is in a different administrative domain than D
An OPES system can support the format/protocol adaptation above, IMO.
OCP already handles the case when one message from A is converted to
multiple messages to B (to address your concern #3).
The other part of your problem is communication in the other direction
(B, D, and C talking to A). I believe such communication is not
prohibited by OPES rules, but otherwise is outside of OPES scope.
On Fri, 23 May 2003, jfcm wrote:
I come across the following customer request. I think it may help checking
OCP can be used and can support this.
There are four systems involved.
1. A: an automated system (oil station pump)
2. B; a remote management station
3. C: a considered ticketing service
4. D: a possible OPES
B polls A once a day
When A has an incident it calls B.
But B is management not support
So the idea is D as an OPES between A and B branching into C via OCP.
1. when A has a problem, the call is blocked by D and C is told.
2. C manages the incident (may take hours)
3. when the incident has been repaired, C can authorize D to forward the
call as "treated".
I would like to understand if all this is orthodox as far as OCP which will
be used between D and C.
1. is there a problem about qualifying this as an OPES?
2. A only knows to say "I have a problem" and to report its status upon
request from B (IP address) and respond.
D's IP would replace B's IP in A table. So the dialog would actually
So, if B and C call, D should make the calls coming from D.
there are three reasons to call A:
- normal administrative calls by B
- calls by D when receiving the alarm: to check the reason of the call
(D may decide to discard if it is a repetitive call)
- calls be C: as part of the ticketing status control and reporting to
Calls by D and C are part of the OPES service. Is that dialog with the
3. there would be a need for a multiple "continuations" of A calls to be
received by B.
- A calls to say I have a problem : this is the data transmitted that
is going to be modified.
- B should receive that data as a continuity of different blocks, may
be over hours
- 1st block: there is an alarm info to follow
- 2. this alarms has been taken over by the ticketing service
- 3. the ticketing service may pass different reports
- 4. report "the problem has been addressed as follows: ...."
4. what is also interesting is that A, B, D are in the same domain of
security While C is an externalized service. So OCP relations would have to
be secure. Also, C may change into C1, C2, etc as the complexity/type of
incident management is handled.