SIP Client

As far as I understand the SIP-protocol is the open standard for door communication. A built in SIP client that would allow us to answer calls, view video feed and open door(s) would be a great addition. The alarm panel in HA has already made a separate alarm panel redundant. It would be great to do the same for door communication so a wall mounted tablet with the HA interface could handle all needs.

I would also like this. It would be neat to know if my phone is ringing or have a nice way to announce the call display.

1 Like

+1

Has been working on a prototype before I jump into new auth development. Hope someone can implement it.

Some reference:
https://www.doubango.org/sipml5/
https://sipjs.com/

4 Likes

Probably webrtc should be mentioned in this context. It’s what the browsers (mobile and desktops) support these days. SIP could still apply for control plane signalling assuming that’s what the sensors support, and leverage webrtc support in the browsers for real time media.
I would think more and more sensors could go simpler than SIP for this these days, with webrtc now everywhere.

1 Like

My need is some how simpler. I just need a SIP client to “subscribe” to an extension/account and monitor any incoming calls to that extension so that it can trigger an event in HA for automation.

It is similar to SIP (VoIP) Monitoring for incoming calls using MQTT but I have problem setting it up.

So I wish this is provided by HA as a component.

4 Likes

A full integrated SIP client would be awesome! Many intercom use it, as my 2N doorbell. Actually I get a notification to my mobile phone with an image of the front door, where I can initiate a SIP call to my phone. On the HA display the image of the frontdoor is shown as well, but sadly I am not able to speak over it…
Maybe it would be easier to use a open python sip client (f.e. https://github.com/AGProjects/python-sipsimple) than the html version…? I already tried the javascript version… but failed (but I am not pro coder)

Thanks in advance for checking this out…
Dave

2 Likes

I was wrong…as the client needs to run on the endpoint, in my case on the tablet where I loaded the HA page, the client needs to be java script or html5 based… I don’t want to initiate a SIP call from the front door to the server…

Well actually you need both, a SIP server, that will read the config file, store users and authenticate/route the calls and could also trigger automation and be triggered by automations as well as an additional feature to take the video feed from an ONVIF camera if configured and then a JS/HTML SIP client that will receive the call

I will give an implementation a try next month, I would have no problem at all with the client interface but I’m not familiar at all with python, so I’d like if someone could be available to help with the server part

1 Like

@Tofandel I am using freepbx (asterisk packaged with a nice interface - short and a bit inaccurate description - ). In this context, I can try the server side. It should be fairly simple considering the document on asterisk web site. I am using a doorbell sip system (Grandstream GDS3710). It would be nice to integrate it in HA!!
GV

Would really be interested in this as well. Using a sip intercom in my house today, but have it hooked up to Linphone. Not really ideal to use a seperate cloud service just for this :confused:

@greengolfer The documentation for asterisk is incomplete and not so great (everything is between 4 to 7 levels down so it’s hard to find relevant things in the doc), the SIP part is not even documented

It might also be a big dependency for a small feature

There is another small python lib that might be more suited for HA https://sipsimpleclient.org/developer-guide/

What do you think?

@Tofandel My idea was to include the client part in HA, so that it can be seen in eg. lovelave. Then this webrtc client will need something to register to. It can be asterisk, it can be sylkserver (using the python lib you mentioned). It does not really matter. The “client” on HA will require some configuration to register to the SIP/webrtc server. This should be fairly standard. Then, anyone can use what they chose for the server… So, for me it is not a dependancy. Or, maybe, I am missing something.

My bad I though you were talking about implementing Asterisk into Home Assistant

Edit: Ok got it, so you have the Asterisk server running independently and you just need the lovelace SIP Module to be able to receive calls

While the SIP client is a fairly easy module, having a server side module to HA handle call routing and authentication would be a must, just for the perks of automation and security

Else it will be quite hard to do some very useful automation, say for instance:
Somebody is at the door, so call goes to the persons who are at home (which HA can know)

True. However, always start simple!!
The client only would already be nice. At the moment, I have a separate sip phone on my tablet. Integration in HA (at least the client) would already be a plus.
Which client would you consider? AFAIK sipml5 or sipjs (both implementing webrtc, hence easier integration on a web interface) would be good candidates.
GV

I was going for sipJS, easy to use and well documented

Intersting thread here… I also have an door intercom with camera, I think its also based on sip…

But how do you connect to the 2 wire system??

What do you mean by 2 wire system? The stuff that goes to your door lock?
In my case, I am using an arduino with an API.
So my plan is (if and when there is a webrtc client for HA) to have a button to open the door in lovelace that would be an HTTP call.
GV

It’s a kit like the link below, but completely separate…

https://shop.seculux.be/nl-be/facila-k193135-kit-video-intercom-dp193-15-3x-104737

So I need to connect to it…

The “problem” with this kind of device is that the protocol used between the doorbell side and the screen side is (very likely) proprietary. You need something either with an API to be able to use another kind of display or better something that is natively sip compliant.
The downside is that you need some kind of sip pbx as well. Howver, it is much more flexible.
I am using the Grandstream GDS3710. SIP compliant and API available. Good stuff :slight_smile:

GV

1 Like