cancel
Showing results for 
Search instead for 
Did you mean: 

status of message in sync-async brige

former_member190284
Participant
0 Kudos

Hi Experts,

I have a requirement in which, PI is consuming WS(sync) from third party and sending it back to ECC system(adapter not decided yet)

but in addition to it, customer wants that 3rd party system should get a response back, detailing if message has been processed by PI system or not, without getting ECC involved

so basically its like ws(sync)<..>PI ..>ecc(asyn)

Is it Possible to know status of messgae?

I know just abt sync async bridge

Pls note PI system is at 7.31

Thanks

Accepted Solutions (0)

Answers (2)

Answers (2)

former_member190293
Active Contributor

Hi Nunu!

You could use another approach without using any custom modules.

1. Add RequestOnewayBean and WaitResponseBean modules in Sender channel.

2. Add the additional interface for receiver or create additional dummy receiver system. Using additional interface for the same receiver looks even better since you can use "Maintain Order at Runtime" option to ensure that message was successfully delivered to ECC system before sending response to sender.

3. Use any kind of mapping for that receiver/interface to build response with needed data and correlation id.

4. In receiver channel for that system/interface add NotifyResponseBean module and remove standard module.

Regards, Evgeniy.

manoj_khavatkopp
Active Contributor

Nice one Eve! But have querie in this approach:

What if the messages gets failed to deliver the actual receiver/interface , as we are mentioning "Maintain order at runtime" this interface will never be triggered and response will never be sent back to the system.

Br,

former_member190293
Active Contributor
0 Kudos

Hi Manoj!

Yes, it's possible. To avoid such type of situation we can turn that option off and thus response to sender transforms to response of kind "message was sent to receiver system" 🙂

Regards, Evgeniy.

manoj_khavatkopp
Active Contributor
0 Kudos

Hi Eve,

No, but if understand the requirement correctly the status of the message in PI has to be sent back to receiver, if we turn off that option and for some reason the message is not delivered to actual receiver and sending response back as " message was sent to receiver system" will not be a valid one right.

or may be my understanding of the requirement was not clear.

Br,

Manoj

former_member190293
Active Contributor

Hi Manoj!

I guess the status "message was sent" means exactly that PI has just sent message out to receiver's system and not that message was successfully delivered and processed by receiver's system.

All further statues of delivery require the target system to be envolved in the process by means of acknowlegements or response messages.

Regards, Evgeniy.

former_member190284
Participant
0 Kudos

Ev, want to check if I correctly understood what u have said

1. I need to make SOAP sender channel in which I have to add RequestOnewayBean and WaitResponseBean

2. There would be 4 si(3rd partyrequest, 3rd party response, eccrequest and eccresponse) and there would be 2 systems [want to know if all si would be synchorous?)

3. in receiver proxy channel(for ECC) i need to add NotifyResponseBean module and remove standard module?

Thanks for the reply

former_member190293
Active Contributor

Hi Nunu!

Please clarify first: if you want to send response to sender generated by PI (not the receiver system) - why do you need ECC response interface? PI will close synchronous request with its generated message. At ECC side the receiving interface becomes asynchronous.

Regards, Evgeniy.

manoj_khavatkopp
Active Contributor
0 Kudos

Hi Nunu,

If i understand correctly you need to trigger response back as soon as PI receives it without waiting for backed ECC response . In this case you can use the custom module described in this blog.

Br,

Manoj

former_member190284
Participant
0 Kudos

Thanks Manoj,

this would be helpful, buth here we are sending message-id in a response but I want to send status of message.

Can you help me with that?