[pjsip] Ending a Call; Running pjsua in the background; default speaker and microphone levels

Thomas Martin tehmartin at gmail.com
Thu Sep 13 13:14:46 EDT 2007


Hello,

First of all I have to say thank you for making this excellent framework and
application.  Well done!

Now, I have pjsua running on an embedded arm based device and have a couple
questions.

1)  How can I hang up on an existing call immediately?  I have hacked the
code so that when ever there is a new incoming call, regardless of replaces
header or not, it replaces the current call with the new one.  However, to
the current call it just sends BYE over and over until a timeout (I am aware
that this is the clients fault (ekiga) not pjsip).  In the mean time, both
calls are answered with 200 OK.  On my system, this somehow turns off all
audio and I can't get it back.  So, I need to hang up on the call NOW so as
to not answer both calls at the same time!  Not be nice and send BYE.  What
is the clean way to do this?  Also acceptable would be if I could somehow
wait to answer the new call until after the existing call is gone.  Looping
and looking for PJSIP_INV_STATE_DISCONNECTED or PJSIP_INV_STATE_NULL likes
seg faulting :(

2)  Why is it that pjsua is so displeased when it is run in the background?
I have it configured to auto answer calls, so don't need any keyboard input
whatsoever.  However, I had to spend some time trying to get it to run on
boot correctly because adding it to /etc/inittab would run it in the
background and it would just exit immediately.  Eventually I added it to the
normal boot process in /etc/init.d/ and exec pjsua so it isn't running in
the background.  I have no problem fixing what ever it is that might be
doing this, but I don't really know where to start looking.  I know it
expects stdin and stdout, but I have run numerous processes in the
background before that expect stdin and stdout without any problems.

Not a question number 3) I added code to be able to pass input parameters
for setting the default levels of the microphone and speakers.  It is 95%
just adding the new inputs into the code, and 5% setting the values passed
in.  If you want this code, I can do a diff or something for you, just let
me know what you want and where to put it.  Otherwise, I am sure it is a
simple addition for you to make, and I think it is a good thing to have in
the app.  Some peoples microphones and/or speakers need different default
levels to function properly.  Having to hit V and change it every time you
start up pjsua seems like it could get annoying.

That is all.  Thank you for such a great SIP project!

-Thomas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20070913/d7fee58d/attachment.html>


More information about the pjsip mailing list