Question

How to create an outbound sync application message from Workflow (BPA) in Cloud?

  • 14 March 2023
  • 8 replies
  • 215 views

Userlevel 2
Badge +8

I tried to find a REST API for application message handling but that existing ones could not create a message.

(22R2)

Do you know a way to do this?


8 replies

Userlevel 3
Badge +5

Hi.

From a workflow you can use the IFS REST call custom delegate.
More info here:

https://docs.ifs.com/techdocs/23r1/040_tailoring/500_business_process_automation/050_business_process_modeling/030_ifs_rest_call/

 

This delegate will invoke the HTTP request and provide the response along with the HTTP response code. Then you can parse the response body (XML/JSON using JSONPath) and extract the HTTP response code to proceed with additional logic.

Thank you much.
Best regards.
Gonzalo.

 

Userlevel 2
Badge +8

Hi Gonzalo,

 

Thanks for info on calling REST, that is useful, but my point was the creation of an Application Message.

Which would go to IFS Connect, get routed to an address and so on.

REST would definitely be one way to do that, but I cannot find the API for that purpose.

Do you have some idea on that?

Userlevel 3
Badge +5

Hi jasahu.

OK, now I understand you want to create an Application Message from a workflow. Then you will have to use a IFS Projection Delegate and use the projection/action that deals with Application Messages.

Is that what you mean?


Have you checked this projection?
main/ifsapplications/projection/v1/ApplicationMessagesHandling.svc

Best regards.
Gonzalo.
 

Userlevel 2
Badge +8

Yes, Projection Delegate could work too, provided I have the proper projection.

ApplicationMessagesHandling.svc or ApplicationMessageHandling.svc do not seem to help me, no possibility to create new msg.

Interestingly,  ApplicationMessagesLobbyHandling.svc seems capable of creating app messages, in 3 steps, via action ImportMessage.

But is that the best option out there?

App message are far more important than getting such a bad treatment.

 

 

Userlevel 3
Badge +5

Hi.

May I know why you want to create an Application Message from a workflow? What would be the use case?

Thank you much.
Best regards.
Gonzalo.

 

Userlevel 2
Badge +8

We have an integration task, and have to communicate with the other app by way of files so I need to create an outbound  app message which will become a file sent by FILE_SENDER.

 

And I am also interested in outbound SYNC app messages as well, to see how much we can accomplish in the future.

Userlevel 3
Badge +5

Hi jasahu.

I’m not able to locate a Projection that can create Application Messages. What if you force the creation of the Application Message from the workflow by triggering Custom Event. So you use a Projection delegate to create/update a record. Then that triggers the Custom Event and that Event has a Event Action of type Application Message. Then you will get your message created. Would that be valid?

Regarding the “I am also interested in outbound SYNC app messages as well” comment… Application Messages can be routed to HTTP Senders. These senders will get the response stored and you can configure IFS to process that response using a Routing Rule + Routing Address. But bear in mind that when you create an Application Message, it will be handled by a queue in ASYNC manner.

Best regards.
Gonzalo.


 

Userlevel 2
Badge +8

Hi Gonzalo,

 

Regarding App Msg creation via Custom Event:

That could work, but this is more complicated than what I wrote above using ‘ImportMessage’, but good to know as an alternative.

 

Regarding outbound SYNC:

It is not about he connector being sync or async, it is about the message itself being sync.

That means that the message does not get into any queue (like OUT1), but it gets executed immediately.

Action of type ‘Application Message’ of a Custom Event cannot do that that is always async.

Plsqlap_Server_API.Invoke_Outbound_Message would do that in SYNC for me, if there was a way to call that from Workflow.

 

BR

Janos

Reply