Hi,
I've added comments below...
On Wed, 2012-08-08 at 10:16 +0200, Muhammad Shahzad wrote:
1. try to forward registration requests to another
registrar.
There is no reason this won't work as long as you take the NAT-like
issues into account. If it didn't work, then it won't have worked for
the same reason that forwarding registers from a TCP client behind a NAT
wouldn't work.
2. try to make calls between a webrtc and non-webrtc
client.
This does work, but you have to make sure the client media stack
supports the right set of options. If there is a problem here it is
probably to do with RTCweb interworking - not WebSockets. I did a lot
of testing with Boghe (
http://code.google.com/p/boghe/ ) which does
support the right media options.
3. try to send call from webrtc client to asterisk /
freeswitch server
to play e.g. some IVR, voice mail etc.
This will be a problem for the same reason as above.
and many other scenarios, which all have one thing common, that is one
or more sip servers behind kamailio, webrtc clients do not work at
all. They work only and only if kamailio is the only SIP server on the
server side, mostly because kamailio currently do not have neither
PATH nor outbound support.
Kamailio does have Path support
(
http://kamailio.org/docs/modules/stable/modules_k/path.html ), but it
may require a small update to work with WebSockets. Kamailio doesn't
have Outbound support (yet), but there is a simple mechanism that means
you can work without it (the example configuration for the WebSockets
module contains this).
When I tested I used the following scenarios:
* WebSocket client -> Kamailio -> WebSocket client
* WebSocket client -> Kamailio -> TCP client
* WebSocket client -> Kamailio -> TLS client
* WebSocket client -> Kamailio -> UDP client
* WebSocket client -> Kamailio -> SCTP trunk -> Kamailio -> WebSocket
client
* WebSocket client -> Kamailio -> TCP trunk -> Kamailio -> WebSocket
client
* WebSocket client -> Kamailio -> TLS trunk -> Kamailio -> WebSocket
client
* WebSocket client -> Kamailio -> UDP trunk -> Kamailio -> WebSocket
client
* WebSocket client -> Kamailio -> SCTP trunk -> Kamailio -> TCP client
* WebSocket client -> Kamailio -> TCP trunk -> Kamailio -> TCP client
* ... and so on
I also did some testing with secure WebSocket connections. All worked
for me.
Regards,
Peter
--
Peter Dunkley
Technical Director
Crocodile RCS Ltd