You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by "Ashwin Karpe (JIRA)" <ji...@apache.org> on 2010/08/23 15:59:47 UTC

[jira] Updated: (CAMEL-2943) A Camel component that implements the Telecom SIP protocol for Publish/Subscribe capability...

     [ https://issues.apache.org/activemq/browse/CAMEL-2943?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ashwin Karpe updated CAMEL-2943:
--------------------------------

    Attachment: camel-sip-20100823.diff
                camel-sip-20100823.zip

Hi Claus,

I have made all the changes based on your recommendations and am attaching a fresh snapshot for your review.

Can you please let me know what you think. The changes I have made are as follows

a> The line you identified was a spurious line (harmless though) that was replaced with the earlier line which used the UUID instead of a random value to set up the Tag for the SipStack.

b> Addressed this by adding a fresh interface that offers all the known SIP status codes (SipMessageCodes.java) and implementing it in the SipPresenceAgent. Also changed the code to 

{code}
    public synchronized void processResponse(ResponseEvent responseReceivedEvent) {
        Response response = (Response) responseReceivedEvent.getResponse();
        Integer statusCode = response.getStatusCode();
        if (SIP_MESSAGE_CODES.containsKey(statusCode)) {
            LOG.debug(SIP_MESSAGE_CODES.get(statusCode) + " received from Subscriber");
        }
    }
{code} 

c> Changed the Log message to a Warning. The chances of this happening are low but can happen in the absence of a dialog or transaction...

d> Changed the code to deal with the missing Header situation in a better way.

{code}
        String requestMethod = exchange.getIn().getHeader("REQUEST_METHOD", String.class);
        if (requestMethod == null) {
            throw new CamelException("Missing mandatory Header in REQUEST_HEADER in exchange");
        }
{code}

e> Changed the typecast based on your recommendation. (see above code)

Hope this helps.

Cheers,

Ashwin...

> A Camel component that implements the Telecom SIP protocol for Publish/Subscribe capability... 
> -----------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-2943
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-2943
>             Project: Apache Camel
>          Issue Type: New Feature
>            Reporter: Ashwin Karpe
>            Assignee: Ashwin Karpe
>         Attachments: camel-sip-20100823.diff, camel-sip-20100823.zip
>
>
> The Telco SIP protocol has operations to perform Publish and Subscribe of Telecom events via a Presence Agent (similar to a Broker) as an intermediary.
> Develop a Camel SIP Component that can communicate with a Presence Agent (also add a basic Presence Agent with no persistence). The SIP Component should as a consumer, subscribe to messages from a Presence Agent and support the SIP protocol handshake and as a Producer publish messages to a Presence Agent.
> The SIP protocol involves communication over HTTP with specific acknowledgements that need to cater for different situations. This communication pattern and handshake must be properly supported.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.