Dear Experts,
I want to install Kamailio, Asterisk, siremis in Debian 6.0 Squeeze. For
this purpose i have followed the following document:
(1)
http://nil.uniza.sk/sip/kamailio/installing-siremis-20-kamailio-web-managem…
- Siremis Installation
(2)
http://kb.asipto.com/kamailio:skype-like-service-in-less-than-one-hour
- Kamailio Installation
(3)
http://nil.uniza.sk/sip/kamailio/installing-siremis-20-kamailio-web-managem…
- Siremis Installation
I need the following features:
1
User Management
2
Contacts
3
Instant Messaging
4
My Presence (Presence Status)
5
Voice Call (SIP)
6
Conference (SIP Audio Calls)
7
Video calls
8
SMS
9
Outbound Audio Call
10
File Transfer
11
Video calls
12
Share Link
13
Face book Integration
14
Push Notifications (Broadcast Message)
According to the the documents, some features are not working, or
working features are not working sometime as supposed to work.
Kindly suggest me straight forward document or any help to achieve it.
--
Best Regards,
Vijay Thakur
(Assistant Manager - Networks)
Mobile : +91 8744018065
Mail :vijay.thakur@loopmethods.com
Loop IT Methods Private Limited
1st Floor, B-10, Sector-7, Noida, (U.P) India
Ph: +91 120 305 3481,82 (INDIA), +1 347 468 8631 (USA), +61 390 011 178 (AUS)
Fax: +91 971 728 330
Web:www.loopmethods.com
LOOP Disclaimer -------------------------------------------------------------------------------------------------
This message (including any attachments) contains confidential information intended for a specific individual and purpose, and is protected by law. If you are not the intended recipient, you should delete this message and are hereby notified that any disclosure, copying, or distribution of this message, or the taking of any action based on it, is strictly prohibited.
-----------------------------------------------------------------------------------------------------------------
Hi,
We are developing a Java based SIP gateway implementation and are performing some integration tests on a kamailio/msrprelay server (plugin from www.msrprelay.org).
The SIP signaling part works so far, but when sending a MSRP message, the client receives a 501 "Unknown method" error. However, it seems the request does not reach the MSRP module on the server as there is no corresponding trace log on the server side.
On Protocol level, everything looks fine so far, the sequence executed is as follows:
-->SIP REGISTER
<-- SIP/2.0 401 Unauthorized
-->SIP REGISTER
<--SIP/2.0 200 OK
-->INVITE
<--SIP/2.0 407 Proxy Authentication Required
-->ACK
-->INVITE
<--SIP/2.0 180 Ringing
<--SIP/2.0 180 Ringing
<--SIP/2.0 200 OK
-->ACK
The INVITE is processed with the following SDP packet in the request:
v=0
o=- 1337788359935 1337788359935 IN IP4 localhost
s=MSRP Session
c=IN IP4 localhost
t=0 0
m=message 2855 TCP/MSRP *
a=path:msrp://localhost:2855/U3FuvW00m62UY0020H71;tcp
a=accept-types:message/cpim text/* application/im-iscomposing+xml
a=accept-wrapped-types:*
a=setup:active
And response:
v=0
o=- 3546777215 3546777216 IN IP4 46.105.78.68
s=sipsimple 0.20.0
c=IN IP4 46.105.78.68
t=0 0
m=message 57233 TCP/MSRP *
a=path:msrp://msrphost:2855/5AUNTOt7XlFsK7VuT4SzETEzMzc3ODg0MTUuMDcyOjQ2LjEwNS43OC42OA==;tcp msrp://msrphost:57233/6bf6dd73b9e4587b65b6;tcp
a=accept-types:message/cpim text/* application/im-iscomposing+xml
a=accept-wrapped-types:*
a=setup:passive
But when sending the MSRP message, 501 is returned:
MSRP f0CHA1TD SEND
To-Path: msrp://msrphost:57233/6bf6dd73b9e4587b65b6;tcp
From-Path: msrp://localhost:52673/b10XadK9;tcp
Message-ID: 13377883623135c260a3568cc
Byte-Range: 1-*/14
Hello Francois
-------f0CHA1TD$
MSRP f0CHA1TD 501 Unknown method: SEND
To-Path: msrp://localhost:52673/b10XadK9;tcp
From-Path: msrp://msrphost:57233/6bf6dd73b9e4587b65b6;tcp
-------f0CHA1TD$
When testing with two sip-simple client endpoints, MSRP messaging works fine, but on protocol traces we cannot identify any differences between sip-simple communication flows and the ones we are implementing.
Does anyone have a hint on what is wrong in this message flow? Any advice is appreciated.
Thanks,
Alex
Hi,
I'm trying to create a ruri from contact header like following :
In request route I've saved contact header in a hashtable using htable module.
request_route{
---------------------
---------------------
#!ifdef WITH_HASH
if (is_method("INVITE") && !has_totag()){
xdbg ("Contact [$ct] with Callid [$ci]");
$sht(a=>$ci) = $ct;
}
#!endif
----------------
}
And in route[WITHINDLG]
route[WITHINDLG] {
---------------------------
---------------------------
#!ifdef WITH_HASH
xdbg ("ruri [$ru]");
if ($sht(a=>$ci) != $ru){
$ru = ($sht(a=>$ci));
xdbg ("rewriting ruri to [$ru]");
}
#!endif
But it log shows that its unable to parse the uri :
[4039]: DEBUG: <core> [parser/parse_uri.c:1277]: parse_uri: bad uri,
state 0 parsed: <<sip> (4) / <<sip:2020@103.23.169.2:64358>> (29)
: DEBUG: <core> [parser/parse_uri.c:1327]: ERROR: parse_sip_msg_uri:
bad uri <<sip:2020@103.23.169.2:64358>>
[4039]: ERROR: pv [pv_core.c:232]: failed to parse the R-URI
[4039]: DEBUG: <script>: rewriting ruri to [<null>]
I'm not understanding what's wrong with that. May be the port part
should be discarded, but how i'm gonna do that?
--
-aft
Dear sir,
We are searching for *ser.buildsystem.latest.tar.gz* in the internet
throughly.
But we are unable to find this particular file.so please send me the file
or the web links which we can be able to download
and configure our IMS network in proper.
*
*
*
*
Thank you
Best Regards,
madhavi
--
*
*
The parameter [server:default] of TLS config file must be declared? I want
specify two different interfaces (WAN and LAN) and I don't know which
interface will be used as default by TLS module...
Someone know some information about my question?
Best Regards
just forwarding from SEMS mailing list an interesting story of using
kamailio and sems in emergency services...
-------- Original Message --------
Subject: [Sems] sems in risk-of-life service
Date: Thu, 24 May 2012 15:29:38 +0800
From: Jeremy A <jeremy(a)electrosilk.net>
To: sems(a)lists.iptel.org
Hi,
This is a belated report on the use of SEMS in a risk of life service.
The system uses kamailio in a distributed architecture of dozens of Fire
& Rescue stations. This is heavily based on distributed and replicated DNS.
A single '911' style headquarters has duplicate hot swap-over control
rooms at other locations.
The headquarter and alternate posts have servers that service HQ
operator positions with SIP phones. These provides sidecar indication of
F&R Station state for up to 64 F&R stations - using BLF. These phones
are hooked into an integrated analogue audio management system.
Each Fire and Rescue station has an embedded SIP based controller that
runs Kamailio and proprietary software to control the F&R station
electrical and safety systems as well as provide public address
functions to alert the F&R staff of a new emergency. These PA
announcements are SIP based using a DSL network and are live from the HQ
positions, plus computer synthesized voice, as well as alerting tones.
Each station also has multiple SIP phones for in-station and station to
station calling.
The network is decentralized so failure of the central control system
still allows point to point communications between Fire and Rescue stations.
The headquarter systems uses SEMS as the primary operator manager to
perform multiple simultaneous deployment calls to remote Fire and Rescue
stations. SEMS is used to create a dynamic conference between an
operator and multiple Fire & Rescue stations. These are automatically
initiated by SEMS and answered by the F&R embedded systems. This means
an operator can broadcast a deployment message and initiate station
control activities at up to five stations (fifth alarm) This is only
constrained by the bandwidth available at the headquarters. Our SEMS
packages have been designed to handle non-answered calls to the
conference and provide operator indication by 'SMS' messages to the
handsets and audio feedback.
The system provides full forensic recording by using rtpproxy at all
locations. These recordings are archived by an out-of-band process.
Control of the system is purely SIP based - so every item in the system
is a SIP based entity. This includes servers, embedded systems, and phones.
The phones are physically integrated into operator positions that also
handle PSTN, PBX, and radio traffic. The interface is purely keyboard on
the operator phones.
Options for integration of the SIP system into CAD (Computer Aided
Dispatch) are obvious. The only drawback is the rusty and ancient
systems and the unbelievable process required to get approval to integrate.
The system as provided provides at least 5 nines reliability. Probably a
lot better. The only downside is the DSL network (provided by others at
amazing expense) that provides a system with a lousy 2 nines
reliability. We are in the process of developing an offering using
redundant DLS/3G routing to improve this.
The field stations are a hybrid Centos 5/Slax system running out of
flash. The HQ systems are straight Centos 5 systems running off disk or
off flash. Future versions will be pure Centos out of flash with no
fancy memory overlay - flash is well good enough.
The system has been live for over a year with no major issues. I can't
say how many lives have been saved, but certainly quite a few. At least
we haven't been sued yet :-)
Cheers.
Hi all,
I have a question about CANCEL message processing.
My call sceraio:
When an INVITE request comes I need to rewrite a domain part of the
several headers(to, from, contact, SDP ip) according to the outgoing
interface.
I can do it before t_relay(), but when destination user has more then
one locations and they are reachable through different interfaces all
forked INVITEs will have the same domain.
To avoid that problem i have tried to move rewriting part(subst from the
textops module) to the branch_route.
Unfortunately that solution didn't helped me, because "To" header of the
outgoing CANCEL messages is wrong (unchanged. as it was at the moment
when transaction was created by the t_relay() ).
As i understood from the documentation and mailing list kamailio builds
CANCEL based on outgoing INVITE.
I did a small research and found that Kamailio really takes outgoing
INVITE from each branch (invite_transaction_cell ->
uac[b_id].request.buffer) and builds CANCEL (build_local_reparse() from
tm/t_msgbuilder.c) based on it.
But kamailio does an exception for the To header which is described below:
***cancel_branch* function (from t_cancel.c) calls
*build_local_reparse*() and fills one of the parameters with a pointer
to unmodified To header.
* build_local_reparse*() uses received To header to construct
outgoing CANCEL.
I have changed:
cancel = build_local_reparse(t, branch, &len, CANCEL, CANCEL_LEN,
&t->to, reason);
to:
cancel = build_local_reparse(t, branch, &len, CANCEL, CANCEL_LEN,
NULL, reason);
and it works for me now.
It looks like if E2E_CANCEL_HOP_BY_HOP *e2e_cancel()* (t_fwd.c) will
call *e2e_cancel_branch()* which works as i want instead of
*cancel_branch()*, but it is just my assumption.
Why does kamailio generate CANCEL requests in such a way ? Did i miss
something from the RFC3261 or kamailio documentation ?
Thanks in advance for any help !
Hello all,
I see the new timeout notification feature from the rtpproxy when no voice
traffic is detected.
I have 2 questions regarding this timeout notification:
1) When a timeout is detected and kamailio send the BYE is that
possible to manipulate the BYE before he is sent to add maybe an extra
header that indicate that the call was stopped due to a timeout issue ?
2) If a user put the call on hold (with a=recvonly or maybe old way
IP=0.0.0.0.0) what will happens (the music on hold is not generated by
rtpproxy but by another server) ? he will detect this as a timeout ?
Is that possible to indicate to rtpproxy that for a moment
stream will be only in one way ?
Best regards
Laurent
Hi to all,
please could somevody help me with more complicated rtpproxy scenario? I
still cannot understand how to make it working.
We have SBC based on kamailio 3.2.3. Everything seems to work until I
want to translate all SDP messages by SBC IP address (for both sides).
Moreover, I need to translate ipv4 to ipv6 and vice versa too.
I found some example script how to achieve ipv4 to ipv6 and vice versa
and I am tryinf to use it. It is relatively easy to translate all RFC
addresses to one public IP, but I need to translate even our public IPS
into SBC IP.
I made some rtpproxy sets:
modparam("rtpproxy", "rtpproxy_sock", "1 == udp:127.0.0.1:7722")
(EXTRA_OPTS="-l SBC_IP")
for internal net to external
modparam("rtpproxy", "rtpproxy_sock", "2 == udp:127.0.0.1:7723")
(EXTRA_OPTS="-l /SBC_IP -6 SBC_IP6")
for ipv4 to ipv6
modparam("rtpproxy", "rtpproxy_sock", "3 == udp:127.0.0.1:7724")
(EXTRA_OPTS="-l SBC_IP -6 /SBC_IP6")
for ipv6 to ipv4
modparam("rtpproxy", "rtpproxy_sock", "4 == udp:127.0.0.1:7725")
(EXTRA_OPTS="-l SBC_IP/SBC_IP)
for external to internal
but I cannot make it working. Either there are problems with
"incorrect port 0 in reply from rtp proxy"
or SDP gets malformed because of more times rtpproxy_manage().
Please can you help me with some basic hint, where into routing logic
put rtpproxy_manage() and set_rtpproxy_set() ? Moreover, how to check if
rtpproxy was already forced?
I could not find any example of forcing RTP proxy for all calls for both
sides. I need this because entire RTP traffic has to go across SBC. And
my internal IPs are not private.
Thank you for any hint,
Lukas Macura