Author Message
AlexZieba2
Joined: Aug 9, 2010
Messages: 9
Offline
Hi,

Can anyone suggest how I can get status (at any point in time during the workflow being active) of a workflow that has been triggered using a REST call to Breeze (https://<breeze_secmodule_ip>/services/EventingConnector/events including appropriate payload)? As far as I can tell with my testing/attempts thus far, Breeze does not return anything except for a 200 OK when I invoke the REST call to it. The workflow itself functions as expected.

Many thanks

Alex
JohnBiggs
Joined: Jun 20, 2005
Messages: 1139
Location: Rural, Virginia
Offline
1) the Breeze logs may include information
2) are other parts of your application or other applications in the workflow creating events that your event listener would receive?
3) have you examined the sample code? com.avaya.collaboration.eventing.sample
AlexZieba2
Joined: Aug 9, 2010
Messages: 9
Offline
Thanks for your reply John,

I've looked at these and understand that eventing is possible but I fail to grasp how this can be done by purely doing REST calls to Breeze versus writing an application to do so. Ideally, what I am after is to simply do a REST POST to Breeze by providing a correlationId which I would include in the initial REST POST to trigger the event and receive a response from Breeze. Or maybe, provide Breeze a callback URL via a REST POST where Breeze can send events. Is what I am after possible and if so, can you elude to the specifics?

Cheers,
Alex

P.S. - would i be on the right path by looking at EFC REST services? ... something like posting to breeze as below to get callbacks from Breeze on status based on family and filter spec?

<Breeze security module address>/services/EventingConnector/subscriptions
{
"family" :"MyFamily",
"callbackUrl":"http(s)://ip/EventListener"
}
JohnBiggs
Joined: Jun 20, 2005
Messages: 1139
Location: Rural, Virginia
Offline
sorry I am not familiar with using REST with eventing and Breeze.
Dinesh012024
Joined: Dec 18, 2015
Messages: 25
Offline
Yes, looking at the EFC REST services is the right direction

These would be the steps
1. Use the Subscribe REST service to subscribe for events of a family - also you will be mentioning the call back url (http endpoint which can serve a multipart POST http requests)
2. Use the publish REST service to publish events with the same family as in step 1
3. The http endpoint will get the event which was published in step 2
AlexZieba2
Joined: Aug 9, 2010
Messages: 9
Offline
Thank you @dineshud.avaya.com

Can you be more specific around publishing of the event? I do not see a reference to it under the REST capabilities of the Eventing Framework Connector.

So far, I have working

1. Subscribe to the event (I can see the response come back accordingly on my web server)
2. Trigger the event I have mapped to a workflow in Engagement Designer

Unfortunately, I do not see any callbacks aside from the subscription and I suppose it is because I cannot yet figure out the publish step. What REST call would achieve a publishing of the event?

Many thanks,
Alex
Dinesh012024
Joined: Dec 18, 2015
Messages: 25
Offline
Avaya Breeze SDK contains a REST API doc explaining on the EFC REST services. You should see details on how to use the publish REST API and the subscribe REST API in that (the path inside the sdk is Avaya-Breeze-SDK/REST-API-Docs/index.html)

Hope that helps

Thank you,
Dinesh
AlexZieba2
Joined: Aug 9, 2010
Messages: 9
Offline
Thank you both for your support,

I've finally figured it out. Basically, I am using ED to invoke a call flow via a HTTP request. Then, I am doing a single party make call with the flag to wait until called picks up, then writing an event to a custom family I created. Next, I add a participant to the call followed by a Receive step which waits for the participant to connect. That is then followed by another writing of an event stating the participant joined. Toward the tail end of the work flow there is another Receive step checking for the call family event on whether or not a CALL_ENDED occurred. If it did, a final Event is sent via my custom Event family. All in all, I now have a working solution.

My biggest struggle was that I thought i could add a message boundary to the "Make Call" step (two party call) as that would make the whole call flow much simpler. This did not work though because the workflow is triggered by a HTTP request and not an inbound call where the UCID is not known until the Make Call step completes and I can read its output.

Alex
Go to:   
Mobile view