[Users] Re: Users Digest, Vol 13, Issue 4

Padmaja RV padmaja.rv at vodcalabs.com
Thu Jun 1 14:21:27 CEST 2006


Hi all!
can anyone tell me how to check the syntax of the openser.cfg file after 
adding code for new modules? also after saving the file with the changes in 
it, should the execute permissions be set to it? currently my openser.cfg 
does not have execute permission for anyone ie owner or user or group.

Please let me know asap
Thanks and Regards,
Padmaja
----- Original Message ----- 
From: <users-request at openser.org>
To: <users at openser.org>
Sent: Thursday, June 01, 2006 5:08 PM
Subject: Users Digest, Vol 13, Issue 4


> Send Users mailing list submissions to
> users at openser.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
> http://openser.org/cgi-bin/mailman/listinfo/users
> or, via email, send a message with subject or body 'help' to
> users-request at openser.org
>
> You can reach the person managing the list at
> users-owner at openser.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Users digest..."
>
>
> Today's Topics:
>
>   1. No /var/run/openser.pid file found (Padmaja RV)
>   2. Re: Call Hunting: use Avpop or LCR module ?
>      (Daniel-Constantin Mierla)
>   3. Re: Call Hunting: use Avpop or LCR module ?
>      (Daniel-Constantin Mierla)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Thu, 1 Jun 2006 15:34:14 +0530
> From: "Padmaja RV" <padmaja.rv at vodcalabs.com>
> Subject: [Users] No /var/run/openser.pid file found
> To: "Jayesh Nambiar" <voip_freak at yahoo.co.in>
> Cc: users at openser.org
> Message-ID: <001d01c68562$beea6780$0f32a8c0 at systemtest3>
> Content-Type: text/plain; charset="iso-8859-1"
>
> Hi,
>         I have openser working now. i have installed it from src yesterday 
> after manually deleting all the files installed from binaries. i have 
> added database support and now it is working fine with authentication. i 
> have tried openserctl start and stop and the first time they worked fine. 
> but now if i type openserctl start, it either tells me no 
> /var/run/openser.pid file  found or it shows starting openser and then the 
> cursor keeps blinking but i dont see the pid number of openser. but 
> registrations keep happening . pls let me know what to do..
>
> Thanks a lot for all the help.
> Regards,
> Padmaja
> ----- Original Message ----- 
>  From: Jayesh Nambiar
>  To: Padmaja RV
>  Sent: Thursday, June 01, 2006 1:29 PM
>  Subject: Re: [Users] Re: how to run openser through monit daemon?
>
>
>  Hi,
>  Sorry, but I never tried installing it from binaries. So i have no idea 
> about whether installing it from src will overwrite or not. But I guess, 
> it should overwrite. But not very sure.
>  Another long way to delete is only locating the openser files and 
> removing it mannually.
>  w/regards,
>  Jayesh
>
>  Padmaja RV <padmaja.rv at vodcalabs.com> wrote:
>    Hi Jayesh,
>    I think you were mentioning about openser-1.0.1_src.tar.gz (that is 
> from src directory of openser download) and i installed from bin directory 
> of openser download area. The bin's tar ball is 
> openser-1.0.1_linux_i386.tar.gz. and when that is installed, it does not 
> show any openser-1.0.1 directory. it automatically loads various modules 
> at their respective places and there is no Makefile i could see in it to 
> edit it for mysql support. I have now openser from src. it is exactly as u 
> mentioned.... this i have downloaded and installed as a user and not as 
> root just to verify the directory structure of openser. i guess it is the 
> right way to do and now i want to install it as root. should i delete the 
> previous openser installations in that path and then install or when i 
> install the src, it will automatically overwrite the existing onces? i am 
> asking this because as root if i delete them it might damage the file 
> system. again thanks so much....pls help me out!
>    Thanks and Regards,
>    Padmaja
>      ----- Original Message ----- 
>      From: Jayesh Nambiar
>      To: users at openser.org
>      Cc: padmaja.rv at vodcalabs.com
>      Sent: Wednesday, May 31, 2006 3:42 PM
>      Subject: [Users] Re: how to run openser through monit daemon?
>
>
>        Hi padmaja,
>        I guess there should have been a standalone directory called 
> openser1.0.1 after you untar the .tar.gz file using tar -xzvf. In that 
> directory itself there is file called Makefile in which the mysql module 
> is excluded by default.
>        Did you also check the logs in /var/log/messages about what is the 
> error. Those messages are helpful to debug.
>        You dont always need to go to sbin to start openser, there is a 
> command called openserctl start to start it.
>        I have a suggestion for you. Please visit onsip.org and register on 
> that site. They have very good getting started documents which will help 
> you.
>        You can then structure your openser.cfg the way you want.
>
>        w/regards,
>        Jayesh.
>
>
>        Hi Jayesh,
>        Thank you so much for the reply. I have downloaded the version 
> openser-1.0.1 from cvs. I thought that is a stable release and no changes 
> are going to be made to it. Do i have to again revert to the tar.gx 
> version? Also please look at what happened when i previously installed the 
> .tar.gz version of openser before doing the cvs
>
>
>        1. downloaded openser-1.0.1-linux_i386.tar.gz version as root.
>        2. It is now under / (the root directory). after that i did unzip 
> and untar on that.
>        3. the file and modules are loaded into the subdirectories of the 
> /usr directory.I could not anywhere find a standalone directory called 
> openser-1.0.1 with the directory sip-server in it. also there is no 
> makefile here.... (All these i see when i download it thru CVS in the 
> /usr/local/src directory.)
>        4. I tried to see through the list for the module mysql.so but i 
> could not find it....and so for uri_db module also. these modules are 
> present when i install openser thru cvs
>        5. i did not do any make on it. I thought it is precompiled version 
> and will automatically get installed when i do the untar and unzip. please 
> correct me if the tar version also has to go thru make
>        6. i ran openser through /usr/local/sbin/openser start. and it ran 
> successfully... it showd the tcp and udp ports on which it is running..i 
> could register my sip UA without authentication.
>        7. then i wanted to set it up for mysql support. i edited the 
> config file and uncommented the necessary modules and tried to create the 
> openser databse in mysql. here it failed stating ha1 calculation failed.. 
> also it states there is no mysql.so module which is true.
>
>        Please let me know if I have made any mistakes in the installation 
> process.... I am new to openser.. now if i want to revert to .tar.gz 
> version, will all the openser modules and config files from the cvs be 
> replaced by the tar.gz version? or will there be duplicate entries left?
>
>        Thanks again
>        Regards,
>        Padmaja
>        ----- Original Message ----- 
>        From: Jayesh Nambiar
>        To: users at openser.org
>        Cc: padmaja.rv at vodcalabs.com
>        Sent: Wednesday, May 31, 2006 12:08 PM
>        Subject: [Users] Re: how to run openser through monit daemon?
>
>
>        Hi padmaja,
>        Running openser from cvs would not solve your problem. Openser from 
> cvs is the development version which will be released after final testing 
> is done.
>        To be safe, its better if you use .tar.gz file to install. For 
> enabling mysql, go to the openser directory and you'll find a makefile. In 
> the makefile there is a line exclude_modules?= somewhere around line 
> no.49. From there just remove mysql and recompile it again.
>        You can start openser using openserctl start from the command line.
>        To check for some errors you can set debug=9 in the openser.cfg 
> file.
>        Normally the logs are stored into /var/log/messages. You can check 
> for errors in this file.
>
>        Hi!
>        there is something I need to mention here with respect to openser 
> not
>        working.....
>
>        Initially I had openser installed from .tar.gz and i could run it 
> from
>        /usr/local/sbin/openser. It worked fine that way without any 
> authentication.
>        I could see local registration of my sip UAs with the openser being
>        successful. then i set up mysql. It too started successfulyy thru 
> webmin.
>        next I tried to create the openser database in mysql from
>        /usr/sbin/openser_mysql.sh create. It prompted me for the root 
> password of
>        mysql, the domain name and then failed stating that the Ha1 
> calculation
>        failed. also when i tried to modify the openser.cfg file to support 
> mysql
>        database i found that there is no mysql.so module in the
>        /usr/local/lib/openser/modules/ path.
>
>        Because of the above problems, I tried installing openser from CVS 
> and here
>        all the modules and configuration files are present in the 
> respective
>        locations as mentioned in the web link for installing openser. I 
> could even
>        create the openser database structures in mysql. i tried 
> uncommenting the
>        needed modules for database suppport. now when i try to run openser 
> thru
>        monit, there is absolutely no response and openser does not look 
> like
>        running............
>
>        I am a newbie at openser......please help me which way i should run
>        openser.....
>
>        thanks and regards,
>        Padmaja
>
>
>
>
>
> --------------------------------------------------------------------------
>      Yahoo! India Answers: Share what you know. Learn something new Click 
> here
>      Send free SMS to your Friends on Mobile from your Yahoo! Messenger 
> Download now
>
>
>
>
> ------------------------------------------------------------------------------
>  Yahoo! India Answers: Share what you know. Learn something new Click here
>  Send free SMS to your Friends on Mobile from your Yahoo! Messenger 
> Download now
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: 
> http://openser.org/pipermail/users/attachments/20060601/e110ed3c/attachment.htm
>
> ------------------------------
>
> Message: 2
> Date: Thu, 01 Jun 2006 13:20:28 +0300
> From: Daniel-Constantin Mierla <daniel at voice-system.ro>
> Subject: Re: [Users] Call Hunting: use Avpop or LCR module ?
> To: Alexandre Snarskii <snar at paranoia.ru>
> Cc: rrisco at millicom.net.pe, "users at openser.org" <users at openser.org>
> Message-ID: <447EBF6C.50401 at voice-system.ro>
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
>
>
>
> On 06/01/06 12:53, Alexandre Snarskii wrote:
>> On Wed, May 31, 2006 at 12:04:41AM +0300, Daniel-Constantin Mierla wrote:
>>
>>> Hello,
>>>
>>> On 05/30/06 19:47, Rafael J. Risco G.V. wrote:
>>>
>>>> hi
>>>> I would like to read some opinions to know which method its better to
>>>> implement Call Hunting, using serial forking with 'avpops' or 'lcr'
>>>> module 'load_contacts()/next_contact()' functions, does someone has an
>>>> example of any of these methods?
>>>>
>>> if it is a global scope you can use any of them, Which is better?
>>> Depends on your environment and how you organize  your data.
>>>
>>> If is per user, then avpops is more suitable. An example of using avpops
>>> you can find at:
>>>
>>> http://www.voice-system.ro/docs/avpops/ar01s08.html#ex_serial_forking
>>>
>>
>> It is suitable, but for some scenarios it require much more complicated
>> config, which is not easy to understand.
>>
>> Scenario:
>> User A (PSTN side) calls user B (SIP). With avpops we select some numbers
>> for this user, trying original number (returns 486/BUSY), hunting to next
>> number (creating new transaction on router).
> it does not create a new transaction, just adds a new branch to it.
>>  Phone B2 starts with
>> 100/Trying 180/Ringing, then user A hangs.
>> CANCEL message first visits original number, which returns
>> 481/Call leg/transaction does not exists [1],
> you mean that sends CANCEL to B1? I do not think so, CANCEL is not sent
> to completed branches, just to ones that haven't received a final 
> response.
>>  then hunts to second
>> number and successfully cancel's call. But, at point [1], first 
>> transaction
>> _does not store_ new reply code (modules/tm/t_reply.c, line 762 just logs
>> message
>>         LOG(L_ERR, "ERROR: t_should_relay_response: status rewrite by 
>> UAS: "
>>             "stored: %d, received: %d\n",
>>             Trans->uac[branch].last_received, new_code );
>>         goto discard;
>> ), and again hunts, so, third number of user B starts ringing...
>>
> What version of openser do you use?
>
>> The only solution for this which I found yet is:
>>
>> #The only way to really check return code is to check it in 
>> onreply_route,
>> #then set flag which will permit failure_route to hunt this call again.
>> #You can't check status with t_check_status within failure_route,
>> #because t_check_status in failure_route returns the lowest value
>> #of all branches..
>> onreply_route[1] {
>>         if(status=~"40[48]" || status=~"486") {
>>                 #not-so-fatal response, should hunt
>>                 setflag(2);
>>         };
>> }
>> failure_route[1] {
>>         if(isflagset(2)) {
>>                 resetflag(2);
>>                 if(avp_pushto("$ruri","$serial_fork")) {
>> #and then everytingh should work as in example.
>>
>
> You can use t_was_cancelled() in failure route:
> http://openser.org/docs/modules/1.1.x/tm.html#AEN479 . It will ensure
> that you get the proper status of canceled transactions.
>
>> But, this config is not yet complete - with this configuration
>> CANCEL's does not hunt after 481 Call leg does not exists, so,
>> in situation when we need to cancel call on second or third number,
>> we're not able to do that :(
>> Just adding another code (481) to our list of not-so-fatal response
>> does nothing but returns us to initial problem, and the only
>> solution found is to complicate configuration again to:
>>
>> #main post-routing code
>> route[1] {
>> if(method=="CANCEL") {
>> t_on_reply("2");
>> } else {
>> t_on_reply("1");
>> };
>> t_on_failure("1");
>> t_relay();
>> };
>>
>> onreply_route[1] { #onreply for everyting but CANCEL
>>         if(status=~"40[48]" || status=~"486") {
>>                 #not-so-fatal response, should hunt
>>                 setflag(2);
>>         };
>> }
>> onreply_route[2] { #onreply for CANCEL's
>>         if(status=~"481") {
>>                 #not-so-fatal response, should hunt
>>                 setflag(2);
>>         };
>> }
>>
>> failure_route[1] {
>>         if(isflagset(2)) {
>>                 resetflag(2);
>>                 if(avp_pushto("$ruri","$serial_fork")) {
>>
>>
>> Please note, that config is in pre-production stage, tested, but
>> without really massive tests. Also, note that this is not complete
>> config, just parts to allow serial hunting without noted problem.
>>
>> If anyone knows more elegant solution for my problem - please, let
>> me know. Also, if anyone can see a problem with my config - let me
>> know how to test it...
>>
>
> Could you try the latest version of OpenSER CVS, it is now in
> frozen/testing phase, just to be release in a few weeks. Any feedback
> will help to fix eventual issues. The part with reply code selections
> and CANCEL processing was refurbished and should have fixed some old 
> issues.
>
> Cheers,
> Daniel
>
>
>> PS: another problem may arise with maximal number of branches.
>> With default configuration of ser (config.h, #define MAX_BRANCHES 12)
>> maximum number of hunts is limited to 11. If you need more hunts than
>> this - you need to recompile ser.
>>
>>
>>
>
>
>
> ------------------------------
>
> Message: 3
> Date: Thu, 01 Jun 2006 14:38:06 +0300
> From: Daniel-Constantin Mierla <daniel at voice-system.ro>
> Subject: Re: [Users] Call Hunting: use Avpop or LCR module ?
> To: Alexandre Snarskii <snar at paranoia.ru>
> Cc: "users at openser.org" <users at openser.org>
> Message-ID: <447ED19E.2040203 at voice-system.ro>
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
>
>
>
> On 06/01/06 14:32, Alexandre Snarskii wrote:
>> On Thu, Jun 01, 2006 at 01:20:28PM +0300, Daniel-Constantin Mierla wrote:
>>
>>> On 06/01/06 12:53, Alexandre Snarskii wrote:
>>>
>>>> On Wed, May 31, 2006 at 12:04:41AM +0300, Daniel-Constantin Mierla 
>>>> wrote:
>>>>
>>>>
>>>>> Hello,
>>>>>
>>>>> On 05/30/06 19:47, Rafael J. Risco G.V. wrote:
>>>>>
>>>>>
>>>>>> hi
>>>>>> I would like to read some opinions to know which method its better to
>>>>>> implement Call Hunting, using serial forking with 'avpops' or 'lcr'
>>>>>> module 'load_contacts()/next_contact()' functions, does someone has 
>>>>>> an
>>>>>> example of any of these methods?
>>>>>>
>>>>>>
>>>>> if it is a global scope you can use any of them, Which is better?
>>>>> Depends on your environment and how you organize  your data.
>>>>>
>>>>> If is per user, then avpops is more suitable. An example of using 
>>>>> avpops
>>>>> you can find at:
>>>>>
>>>>> http://www.voice-system.ro/docs/avpops/ar01s08.html#ex_serial_forking
>>>>>
>>>>>
>>>> It is suitable, but for some scenarios it require much more complicated
>>>> config, which is not easy to understand.
>>>>
>>>> Scenario:
>>>> User A (PSTN side) calls user B (SIP). With avpops we select some 
>>>> numbers
>>>> for this user, trying original number (returns 486/BUSY), hunting to 
>>>> next
>>>> number (creating new transaction on router).
>>>>
>>> it does not create a new transaction, just adds a new branch to it.
>>>
>>>> Phone B2 starts with
>>>> 100/Trying 180/Ringing, then user A hangs.
>>>> CANCEL message first visits original number, which returns
>>>> 481/Call leg/transaction does not exists [1],
>>>>
>>> you mean that sends CANCEL to B1? I do not think so, CANCEL is not sent
>>> to completed branches, just to ones that haven't received a final 
>>> response.
>>>
>>>> then hunts to second
>>>> number and successfully cancel's call. But, at point [1], first 
>>>> transaction
>>>> _does not store_ new reply code (modules/tm/t_reply.c, line 762 just 
>>>> logs
>>>> message
>>>>        LOG(L_ERR, "ERROR: t_should_relay_response: status rewrite by 
>>>> UAS:
>>>>        "
>>>>            "stored: %d, received: %d\n",
>>>>            Trans->uac[branch].last_received, new_code );
>>>>        goto discard;
>>>> ), and again hunts, so, third number of user B starts ringing...
>>>>
>>>>
>>> What version of openser do you use?
>>>
>>
>> ser 0.9.6, freebsd 6.1, database backend is postgresql.
>> Did not tried that setup with openser yet.
>> Initial question was in ser-users mailing list..
>>
>
> it seems that was doubled posted, I answered to users at openser.org and
> overlooked that is for serusers, too.
>
> Cheers,
> Daniel
>
>
>>
>>>> The only solution for this which I found yet is:
>>>>
>>>> #The only way to really check return code is to check it in 
>>>> onreply_route,
>>>> #then set flag which will permit failure_route to hunt this call again.
>>>> #You can't check status with t_check_status within failure_route,
>>>> #because t_check_status in failure_route returns the lowest value
>>>> #of all branches..
>>>> onreply_route[1] {
>>>>        if(status=~"40[48]" || status=~"486") {
>>>>                #not-so-fatal response, should hunt
>>>>                setflag(2);
>>>>        };
>>>> }
>>>> failure_route[1] {
>>>>        if(isflagset(2)) {
>>>>                resetflag(2);
>>>>                if(avp_pushto("$ruri","$serial_fork")) {
>>>> #and then everytingh should work as in example.
>>>>
>>>>
>>> You can use t_was_cancelled() in failure route:
>>> http://openser.org/docs/modules/1.1.x/tm.html#AEN479 . It will ensure
>>> that you get the proper status of canceled transactions.
>>>
>>>
>>>> But, this config is not yet complete - with this configuration
>>>> CANCEL's does not hunt after 481 Call leg does not exists, so,
>>>> in situation when we need to cancel call on second or third number,
>>>> we're not able to do that :(
>>>> Just adding another code (481) to our list of not-so-fatal response
>>>> does nothing but returns us to initial problem, and the only
>>>> solution found is to complicate configuration again to:
>>>>
>>>> #main post-routing code
>>>> route[1] {
>>>> if(method=="CANCEL") {
>>>> t_on_reply("2");
>>>> } else {
>>>> t_on_reply("1");
>>>> };
>>>> t_on_failure("1");
>>>> t_relay();
>>>> };
>>>>
>>>> onreply_route[1] { #onreply for everyting but CANCEL
>>>>        if(status=~"40[48]" || status=~"486") {
>>>>                #not-so-fatal response, should hunt
>>>>                setflag(2);
>>>>        };
>>>> }
>>>> onreply_route[2] { #onreply for CANCEL's
>>>>        if(status=~"481") {
>>>>                #not-so-fatal response, should hunt
>>>>                setflag(2);
>>>>        };
>>>> }
>>>>
>>>> failure_route[1] {
>>>>        if(isflagset(2)) {
>>>>                resetflag(2);
>>>>                if(avp_pushto("$ruri","$serial_fork")) {
>>>>
>>>>
>>>> Please note, that config is in pre-production stage, tested, but
>>>> without really massive tests. Also, note that this is not complete
>>>> config, just parts to allow serial hunting without noted problem.
>>>>
>>>> If anyone knows more elegant solution for my problem - please, let
>>>> me know. Also, if anyone can see a problem with my config - let me
>>>> know how to test it...
>>>>
>>>>
>>> Could you try the latest version of OpenSER CVS, it is now in
>>> frozen/testing phase, just to be release in a few weeks. Any feedback
>>> will help to fix eventual issues. The part with reply code selections
>>> and CANCEL processing was refurbished and should have fixed some old 
>>> issues.
>>>
>>> Cheers,
>>> Daniel
>>>
>>>
>>>
>>>> PS: another problem may arise with maximal number of branches.
>>>> With default configuration of ser (config.h, #define MAX_BRANCHES 12)
>>>> maximum number of hunts is limited to 11. If you need more hunts than
>>>> this - you need to recompile ser.
>>>>
>>>>
>>>>
>>>>
>>
>>
>
>
>
> ------------------------------
>
> _______________________________________________
> Users mailing list
> Users at openser.org
> http://openser.org/cgi-bin/mailman/listinfo/users
>
>
> End of Users Digest, Vol 13, Issue 4
> ************************************
> 





More information about the Users mailing list