Hi all:
I just tested SEMS media server 0.10.0 with openser 1.3.0. The test case is :
1. openser get SIP message, indentify message by SIP URI, and deliver to SEMS by UNIX socket
[openser quote] modparam("mi_datagram", "socket_name", "/tmp/ser_sock") .. if (uri=~"sip:100.*@") {
# assumes that Sems configuration parameter 'socket_name=' # has been set to /tmp/sems_sock if(!t_write_unix("/tmp/sems_sock","conference")) { t_reply("500","error contacting sems"); }; exit; };
[/openser quote]
2. SEMS get SIP message, give a response through mi_datagram, the response is like
[response snip] :t_reply:/tmp/1D8FFAE5-47746119000C9DF2-B6E03B90 200 OK 41621:1987570916 7D41B2DF-47746119000C89B3-B7CA76C0 Contact: sip:100@192.168.35.40 Content-Type: application/sdp . v=0^M o=username 0 0 IN IP4 192.168.35.40^M s=session^M c=IN IP4 192.168.35.40^M t=0 0^M m=audio 10002 RTP/AVP 0 8 3 101^M a=rtpmap:0 PCMU/8000^M a=rtpmap:8 PCMA/8000^M a=rtpmap:3 GSM/8000^M a=rtpmap:103 telephone-event/8000^M a=fmtp:101 0-15^M . [/response snip]
But the problem is that openser says " command not available". The detail log is:
Dec 28 10:36:09 [17682] ERROR:mi_datagram:identify_command: the request's first line is invalid :no newline after the second : Dec 28 10:36:09 [17682] ERROR:mi_datagram:mi_datagram_server: command not available Dec 28 10:36:09 [17682] DBG:mi_datagram:mi_datagram_server: received :t_reply:/tmp/70FAB4E3-47746119000CA82E-B6E03B90 500 could not send response 41621:1987570916 3E69BD05-47746119000CA86F-B6E03B90
When I replaced openser 1.3.0 with ser-0.9.6 bundled with SEMS 0.10.0, everything was OK. So, is openser 1.3.0 incompatible with SEMS 0.10.0? Or I made a mistake in openser.cfg?
Any clue is welcome. Thanks in advance.
Regards, Chen Xueqin
Have you compiled SEMS against openSER? You need to enabled the openSER flag. See the master Makefile. First thing to check ...
Regards, Ovidiu Sas
On Dec 27, 2007 10:40 PM, CHEN XUEQIN chenxq@star-net.cn wrote:
Hi all:
I just tested SEMS media server 0.10.0 with openser 1.3.0. The test case is :
- openser get SIP message, indentify message by SIP URI, and deliver to
SEMS by UNIX socket
[openser quote] modparam("mi_datagram", "socket_name", "/tmp/ser_sock") .. if (uri=~"sip:100.*@") {
# assumes that Sems configuration parameter 'socket_name=' # has been set to /tmp/sems_sock if(!t_write_unix("/tmp/sems_sock","conference")) { t_reply("500","error contacting sems"); }; exit; };
[/openser quote]
- SEMS get SIP message, give a response through mi_datagram, the
response is like
[response snip] :t_reply:/tmp/1D8FFAE5-47746119000C9DF2-B6E03B90 200 OK 41621:1987570916 7D41B2DF-47746119000C89B3-B7CA76C0 Contact: sip:100@192.168.35.40 Content-Type: application/sdp . v=0^M o=username 0 0 IN IP4 192.168.35.40^M s=session^M c=IN IP4 192.168.35.40^M t=0 0^M m=audio 10002 RTP/AVP 0 8 3 101^M a=rtpmap:0 PCMU/8000^M a=rtpmap:8 PCMA/8000^M a=rtpmap:3 GSM/8000^M a=rtpmap:103 telephone-event/8000^M a=fmtp:101 0-15^M . [/response snip]
But the problem is that openser says " command not available". The detail log is:
Dec 28 10:36:09 [17682] ERROR:mi_datagram:identify_command: the request's first line is invalid :no newline after the second : Dec 28 10:36:09 [17682] ERROR:mi_datagram:mi_datagram_server: command not available Dec 28 10:36:09 [17682] DBG:mi_datagram:mi_datagram_server: received :t_reply:/tmp/70FAB4E3-47746119000CA82E-B6E03B90 500 could not send response 41621:1987570916 3E69BD05-47746119000CA86F-B6E03B90
When I replaced openser 1.3.0 with ser-0.9.6 bundled with SEMS 0.10.0, everything was OK. So, is openser 1.3.0 incompatible with SEMS 0.10.0? Or I made a mistake in openser.cfg?
Any clue is welcome. Thanks in advance.
Regards, Chen Xueqin
Users mailing list Users@lists.openser.org http://lists.openser.org/cgi-bin/mailman/listinfo/users
Hi Ovidiu: Thank you for your reply.
Ovidiu Sas 写道:
Have you compiled SEMS against openSER? You need to enabled the openSER flag. See the master Makefile. First thing to check ...
So great for your tip. I modified Makefile.defs in sems-0.10.0 source code bundle to enable OpenSER flag. Compiling flags such as
CPPFLAGS += -D_DEBUG \ -D_THREAD_SAFE -D_REENTRANT \ -DVERSION='"$(RELEASE)"' -DARCH='"$(ARCH)"'\ -DOS='"$(OS)"' \ -DOpenSER
Then recompile SEMS against openser.Now everything runs ok in openser.:)
Regards, Chen Xueqin