[
https://issues.apache.org/jira/browse/CAMEL-9364?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15028427#comment-15028427
]
ASF GitHub Bot commented on CAMEL-9364:
---------------------------------------
GitHub user pkletsko opened a pull request:
https://github.com/apache/camel/pull/697
[CAMEL-9364] Add ability to receive onOpen/onClose/onError websocket …
…events through camel rout.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/pkletsko/camel CAMEL-9364
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/camel/pull/697.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #697
----
commit 011482b4f8c22de5713dc85c8b7ae9f9b613cca2
Author: Pavlo Kletsko <[email protected]>
Date: 2015-11-26T09:30:04Z
[CAMEL-9364] Add ability to receive onOpen/onClose/onError websocket events
through camel rout.
----
> Add ability to receive onOpen/onClose/onError websocket events through camel
> rout.
> ----------------------------------------------------------------------------------
>
> Key: CAMEL-9364
> URL: https://issues.apache.org/jira/browse/CAMEL-9364
> Project: Camel
> Issue Type: New Feature
> Components: camel-atmosphere-websocket
> Reporter: Pavlo Kletsko
> Labels: patch
> Fix For: 2.17.0
>
> Original Estimate: 4h
> Remaining Estimate: 4h
>
> There is a case when I need to maintain my own map (websocket session key,
> user object). Consequently I need to receive events from
> onOpen/onClose/onError methods of websocket protocol and add/remove item from
> my map.
> To achieve this :
> 1) I will add special servlet parameter, let's call it "events" with value
> "true". Which will enable this feature. By default it will be "false" (no
> parameter needed) and current functionality will not be influenced any how.
> <servlet>
> <servlet-name>CamelWsServlet</servlet-name>
>
> <servlet-class>org.apache.camel.component.atmosphere.websocket.CamelWebSocketServlet</servlet-class>
> <init-param>
> <param-name>events</param-name>
> <param-value>true</param-value>
> </init-param>
> <load-on-startup>2</load-on-startup>
> </servlet>
> 2) I will change WebsocketHandler sending exchange message with header key
> such as "websocket.eventType" and possible values :
> ONOPEN_EVENT_TYPE = 1;
> ONCLOSE_EVENT_TYPE = 0;
> ONERROR_EVENT_TYPE = -1;
> to camel rout each time when we trigger onOpen/onClose/onError methods. In
> addition to this header parameter session key will be send as well.
> 3) Rout on client side will filter messages by header to distinguish events
> and their purposes.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)