1
votes

I am new to Spring Integration

Context

We have a CTI system (CSTA Server, Call Center Web Application) I have to check if an agent is logged in our contact center (by Restful API) and forward every CSTA server(webSocket) Event from logged in Agents.

I am able to get all events from the CSTA server asynchronously (tcp-connection-factory / tcp-inbound-channel-adapter) and if necessary transform them (ex. JSON).

The event has unique agent identifiers which i could use to check through our API if an agent is logged in and than dispatch the message to an Endpoint. I dont want to dispatch the reply from the Rest service rather i would like to dispatch every csta event that as a logged in agent.

I able to consume an http outbound-gateway from a Rest Service. How can i enrich a Message or filter depending on the reply i will get from an http outbound-gateway?

In short: I want to filter (depending on the reply of a rest service) every message from a websocket and dispatch it to another endpoint.

Are there any git examples i could look at?

Thanks!

1

1 Answers

0
votes

Looks like you need a Router pattern for your purpose:

<int:router input-channel="input" ref="myRouter" method="route"/>

And here you can find a Cafe sample.