3

I need a SIP client which would give me a function similar to a baby monitor - I call it and the call will be automatically answered, that is connected.

I have a number of places for which I need to monitor local noise occasionally (at complete random intervals for complete random periods). I'd like workflow as simple as possible - call an internal extension, on the other end the call gets connected and sound is transmitted (preferably in both directions).

I'm pretty flexible in hardware, it can be an Android slab, Raspberry Pi, a PC or an Apple slab (in order of preference). The software may be a Python or C++ library (for either Linux or Windows), but I'd be much happier with a ready to use software.

Edit: I'd very much rather not pay nay money for the software. I've tried Zoiper, CSipSimple and the like and all offer such option only in their commercial i.e. paid options).

1 Answer 1

2

Almost any softphone has auto-answer option, but if you would like to compile something yourself I'd point to libre + librem + baresip. It can be built for any platform you mentioned (out of the box it's mainly console application but GUI can be added), it's simpler than pjsip and it has BSD license.

If it is supposed to be maintenance free make sure that your softphone/application is able to detect session teardown (using session timers, re-INVITES, checking for RTP inactivity or maybe just by specifying maximum allowed call length), otherwise if network connection would go down in the middle of call softphone may stay in call state indifinetely not accepting following calls.

As you mentioned internal extension - PABX may be not necessary (direct IP calls).

Edit: for Windows consider tSIP, here are features that may be useful in this use case:

  • direct IP calls (answering any call, binding to specified port, making calls to IP with sip:ip_address:port syntax, assigning SIP adresses to speed dial buttons)
  • auto answer after configurable delay and/or triggered by Call-Info with answer-after line
  • configurable ring wave file (if auto answer would be delayed)
  • call recording (caller)
  • playing wave file to 2nd party (caller)
  • plugin interface, Lua scripting (caller)
  • acoustic echo cancellation (callee, if speaker is used) - use WebRTC preferably

RTP timeout option was added in version 0.1.51, enable it to increase reliability in maintenance-free operation.

Edit2: How about hardware? Used SIP phones can be bought cheaply ($25-$30), should be easy to maintain (set password, connect to LAN, optionally configure them to use your provisioning server), probably draw less attention than android tablet or PC box, consume little energy. Be careful with big vendors such as Cisco - some of their phones have poor interoperability (vendor lock-in) and/or are difficult to configure, I would rather look for yealink.

4
  • Almost any softphone - that is what I'm asking about. Could you please name one? I've edited the question to reflect my other *soft+ requirement I had forgotten to state, that I'd prefer a cost free solution. Thanks!
    – Pavel
    Commented Mar 15, 2016 at 10:34
  • Added tSIP with description. Unfortunately I cannot point to any android softphone. CSipSimple is open source, but I'm finding it too unreliable to be left running freely - in my test it was crashing when hang up button was used during call that was broken due to lost contact with 2nd party.
    – TMSZ
    Commented Mar 15, 2016 at 11:24
  • Thanks, that's what I've needed (I've actually never come across tSIP until now!). Once I've checked it really does its job I'll accept your answer.
    – Pavel
    Commented Mar 15, 2016 at 11:33
  • If using without PABX (direct IP calls) make sure callee has bind port entered (Settings/Network), otherwise listening port is randomly assigned by OS. If softphone would be reachable from internet use port from outside of 5060-5080 range to avoid scanners. Limiting port forwarding on router to specified source IP addresses would be recommended.
    – TMSZ
    Commented Mar 15, 2016 at 11:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.