Hikvision Doorbell / Videointercom integration

What’s wrong here ??7

Andy@iobroker:~/doorbell/examples$ python3 hik_isapi_callsignal.py
Traceback (most recent call last):
  File "/home/Andy/doorbell/examples/hik_isapi_callsignal.py", line 1, in <module>
    from hcnetsdk import HCNetSDK, NET_DVR_DEVICEINFO_V30, NET_DVR_DEVICEINFO_V30, NET_DVR_XML_CONFIG_INPUT, NET_DVR_XML_CONFIG_OUTPUT
ImportError: cannot import name 'NET_DVR_XML_CONFIG_INPUT' from 'hcnetsdk' (/home/Andy/doorbell/examples/hcnetsdk.py)
Andy@iobroker:~/doorbell/examples$

and hik.py :

Andy@iobroker:~/doorbell/examples$ python3 hik.py
loop[2] find 2 mac and 0 ip
Segmentation fault
Andy@iobroker:~/doorbell/examples$ uname -a
Linux iobroker 5.15.53-1-pve #1 SMP PVE 5.15.53-1 (Fri, 26 Aug 2022 16:53:52 +0200) x86_64 GNU/Linux
Andy@iobroker:~/doorbell/examples$

I need a bit of context to help you.
What version are you using? How are you running this software?
Can you please open an issue in github so we can better diagnose and discuss the problem?

:triangular_flag_on_post: :triangular_flag_on_post: :triangular_flag_on_post: :triangular_flag_on_post: :triangular_flag_on_post: New UPDATE: Two Way Audio :triangular_flag_on_post: :triangular_flag_on_post: :triangular_flag_on_post: :triangular_flag_on_post: :triangular_flag_on_post:

Guys, first steps are being made in Two Way Audio based on ISAPI, just want to give you guys an heads up… Yes, we are now able to send a spotify playlist to our doorbell :slight_smile: :slight_smile:

Hopefully next steps, lovelace card for sending audio!

1 Like

Это очень круто. Спасибо.
Подскажите а как сделать карту с двусторонним аудио в HA?
И как интегрировать Домофон DS-KH6320 в HA? В нем есть 2 реле, 8 настраиваемых датчиков, двусторонние аудио, 4 сцены и пароль для сигнализации. Домофон DS-KH6320 можно использовать как дополнительную сигнализацию.

This is very cool. Thank you.
Tell me how to make a card with two-way audio in HA?
And how to integrate Intercom DS-KH6320 into HA? It has 2 relays, 8 configurable sensors, two-way audio, 4 scenes, and an alarm password. Intercom DS-KH6320 can be used as an additional alarm.

Hi, for integration for sensors, make sure to install the BETA addon, it has more stuff… No alarm input sensors yet, but try to test us and enable debug mode as described, create an issue thread and show us the output, so we can help making the sensors

For two way audio, you can use official SIP, or alternate approach is my baresip addon

For two way audi based on ISAPI, there is no card yet, the webrtc card doesnt have a microphone service “yet” … but you can use go2rtc for that, all described here:
GitHub - AlexxIT/WebRTC: Home Assistant custom component for viewing almost any camera stream in real time using WebRTC and other technologies.

For guys want to test out, since documentation is not yet availble on github

Installed this addon, make sure to use “master”

Then configure like below:

streams:
  hikvision:
    - rtsp://admin:[email protected]:554/Streaming/Channels/102
    - isapi://admin:[email protected]/

Then add virtual mediaplayer:

media_player:
  - platform: webrtc
    name: Hikvision
    stream: hikvision
    audio: pcmu

Then send something with TTS service!! :slight_smile:

Hi, is it possible to call a http-event to my local server if someone press the doorbell
DS-KD8003-IME1
V2.2.56 build 220916

  1. is it possible to open the door from a sip-phone? (Fritz-Box-Router an SIP-Devices)

Hi, yes, see first post, you can install the Doorbell Addon, that will give sensor in HA
If you want to enable SIP on the devices, you can open door by sending ‘#’ during call , dtmf method = info

thx, i read it, but i dont want run home-assistant only for notification for the doorbell.
i also tried to call callStatus, but the response ist always idle.

ist there no way to get a notification via http?

‘#’ works, thanks a lot!

Yes, ISAPI for callstatus doesnt work on 8003 models, because you need to grab if from indoor panel, and indoor panel doesnt support port 80 , so no isapi there… Only alternative is to use SDK instead or go the SIP road… The addon also works as standalone, and if you are patient, there will be an mqtt version… to make it even easier

okay thank you for your fast answer!
i will install home assistant on a old raspi 3 i found :slight_smile:
then i will install the addon, thank you!

1 Like

make sure its not too OLD :slight_smile: , the SDK is limited to aarch64 and amd64

its aarch64 :muscle:

ok, now everthing works fine :slight_smile:
but there ist one last question.
push doorbell → sip → phone rings → phone ‘#’ → door open → perfekt

push doorbell → sip → phone rings → curl RemoteControlDoor via extern → door open → but phone is ringing :frowning:

yes, thats normal , you are sending an ISAPI command, SIP doesnt know that, why do you want to send ISAPI when you can use # sip in call ?

If you want to drop the call , look at the addon again, you can send a “reject” signal to your indoor

i have no hikvision indoor devices, i want to open the door also from my local running node app.
is there no way to say DS-KD8003-IME1 please stop the sip call :slight_smile:

i have one idea, start a sip-device-client from my nodejs app an let them also call from the outdoor, an reject from there, but its a lot of codes only therefore…

hmm, maybe when configuring pure SIP without indoor, try to send the “reject” signal from my addon to 8003 , not tested yet, dont know if that works…

Try this one sending to 8003 , but dont know if it works when pure SIP

curl -i --digest -u admin:xxx -d '{"CallSignal":{"cmdType":"reject"}}' -H "Content-Type: application/json" -X PUT http://192.168.0.x/ISAPI/VideoIntercom/callSignal?format=json

make sure to make a call when sending reject, otherwise it will give an error output

curl -i --digest -u admin:*** -d '{"CallSignal":{"cmdType":"reject"}}' -H "Content-Type: application/json" -X PUT http://192.168.5.135/ISAPI/VideoIntercom/callSignal?format=json

{
“statusCode”: 6,
“statusString”: “Invalid Content”,
“subStatusCode”: “badXmlContent”,
“errorCode”: 1610612739,
“errorMsg”: “Wrong XMLcontent”
}

can i change to not only sip?