Hikvision DS-KV8213-WME1 ONVIF not working

misho

n3wb
Oct 12, 2015
8
3
Bulgaria
Hello,

I am trying to connect Hikvision DS-KV8213-WME1 to DAHUA NVR5208-4KS2 V4.002.0000000.4.R (ONVIF protocol), but without success.
DS-KV8213-WME1 firmware is V2.2.53 build 220816.
I don't see any option on DS-KV8213-WME1 about configuring a separated ONVIF account.
I am trying to access the camera (intercom) via RSTP but it's also does not working rtsp:/admin:XXXXXXXXXXXXXX@192.168.1.22:554/Streaming/Channels/101/
VLC asking for password... (password is correct, but still asking.
I have enable SSH and try to connect via SSH (root and admin password, but it says... wrong password).
Any ideas ?

I have another problem too. I am trying to connect this intercom to asterisk PBX but it wants to work.
Register Status is: Registered but when push the button says: Calling failed.
I configured the PBX and intercom according to the instructions I found.

Thanks in advance!
 
Try a different password. Just a simple one to test. There are some characters that do not work. Not sure which ones though.
 
Hello! Thanks! I reduced the password which was 20 characters to 11 characters (lowercase and uppercase letters and numbers) and now I can watch stream via VLC (10 seconds delay before i see image). But NVR says: "the login return time is up"
I can't figure out since Hikvision has a limit of 8 to 16 characters... Why it allowed me to set a 20 character password. I can now also make an ssh connection, but there is only one command there.
SSH Support Commands:
getHardInfo help Debug
I don't know what is the password to enter Debug mode...
I'm coming to the conclusion that the 10 second delay that goes by to see an image the NVR thinks there is a problem and doesn't want to establish a connection.
 
  • Like
Reactions: David L
Hello! Thanks! I reduced the password which was 20 characters to 11 characters (lowercase and uppercase letters and numbers) and now I can watch stream via VLC (10 seconds delay before i see image). But NVR says: "the login return time is up"
I can't figure out since Hikvision has a limit of 8 to 16 characters... Why it allowed me to set a 20 character password. I can now also make an ssh connection, but there is only one command there.
SSH Support Commands:
getHardInfo help Debug
I don't know what is the password to enter Debug mode...
I'm coming to the conclusion that the 10 second delay that goes by to see an image the NVR thinks there is a problem and doesn't want to establish a connection.
You may need to play with Resolution and bitrate. Lowering them can help network/bandwidth issues...but it is not the fix. My NVR is a Blue Iris PC so I don't have a lot of knowledge with other NVRs, but I know 4K can me a problem with some so lowering the Res. of the CAMs can help...
 
try:
http://<username>:<password>@<IP address of IPC>:<HTTP port>/ISAPI/Streaming/channels/102/httpPrev

ID# after 'channels' in query string means main stream or sub stream and channel number. If the ID is 102, we will get
sub stream of the 1st channel. If the ID is 101, we will get main stream

for example below, the camera's ip is 172.28.1.52 and NVR ip is 172.28.1.70

with RTSP authentication disabled in the camera:

Get sub stream from IP camera
rtsp:/172.28.1.52:554/Streaming/Channels/102/?transportmode=unicast
Get 1st IP camera from a hybrid DVR
rtsp:/172.28.1.70:554/Streaming/Channels/1701/?transportmode=unicast
Get channel 0 from DVR
rtsp:/admin:12345@172.28.1.70/Streaming/channels/001/?transportmode=unicast

with RSTP authentication:
get mainstream from ip camera
rtsp:/admin:12345@172.28.1.52:554/Streaming/Channels/101/?transportmode=multicast.
 
  • Like
Reactions: David L
Can you guys Ping from your NVRs? If so, I would try to ping the Camera from the NVR.
 
You may need to play with Resolution and bitrate. Lowering them can help network/bandwidth issues...but it is not the fix. My NVR is a Blue Iris PC so I don't have a lot of knowledge with other NVRs, but I know 4K can me a problem with some so lowering the Res. of the CAMs can help...
I tried. Doesn't want to connect with nvr.
try:
http://<username>:<password>@<IP address of IPC>:<HTTP port>/ISAPI/Streaming/channels/102/httpPrev

ID# after 'channels' in query string means main stream or sub stream and channel number. If the ID is 102, we will get
sub stream of the 1st channel. If the ID is 101, we will get main stream

for example below, the camera's ip is 172.28.1.52 and NVR ip is 172.28.1.70

with RTSP authentication disabled in the camera:

Get sub stream from IP camera
rtsp:/172.28.1.52:554/Streaming/Channels/102/?transportmode=unicast
Get 1st IP camera from a hybrid DVR
rtsp:/172.28.1.70:554/Streaming/Channels/1701/?transportmode=unicast
Get channel 0 from DVR
rtsp:/admin:12345@172.28.1.70/Streaming/channels/001/?transportmode=unicast

with RSTP authentication:
get mainstream from ip camera
rtsp:/admin:12345@172.28.1.52:554/Streaming/Channels/101/?transportmode=multicast.
This intercom (Hikvision DS-KV8213-WME1 ) does not support these protocols. And there are no settings.
If it was a Hikvision ip camera all this is available as settings…
There is only one admin user and only one option to change the password.
Can you guys Ping from your NVRs? If so, I would try to ping the Camera from the NVR.
Connectivity between all devices is perfect. Latency is less than 0.7ms.
And there is no packet loss.
Maybe I should write to Hikvision.
 
  • Like
Reactions: David L
There is only one admin user and only one option to change the password.


wifi or LAN connection?

Because it sounds like it was activated with a wifi app instead of setting up the camera password and wifi through its LAN port.

I would reset it up by its LAN connection and disable the RSTP authentication. There are several versions on ONVIF and most are not compatible with others.
Authentication with all these cameras is a useless item since a real hacker on your network would just have to monitor communication and capture the packet with the unencrypted username and password.

But the only way I have set up their doorbells is with their NVR first, but I think their audio only works with their app and ivms4200
 
  • Like
Reactions: David L
The intercom is connected via Ethernet( Power over Ethernet) . I don't see how I can turn off rstp authentication. I know the communication is in plain format, but to be able to listen to the traffic it needs to be in the middle (Man in the middle attack - and tcpdump or wireshark or port mirroring ).
Quite a few people have managed to connect this type of intercom to an asterisk and not use their devices(Hikvision). I don't like cloud based services.
 
I have DS-KV8113-WME1 (one button model) working with asterisk. it was not simple task to setup it, as builtin SIP client doesn't like any protocol options unknown to it and drops connection without any error notification. Fortunately, I've got somewhere some working config and made further changes, call forwarding, audio recording, voice mail, etc according to my requirements. ATM this setup works stable and I can receive video calls from doorbell on my phone, with linphone app.

I didn't manage to setup motion events. Also found RSTP not stable enough, as after several connections doorbell stops sending video and only reboot helps.
 
  • Like
Reactions: misho
Hello,

Thank you for the reply!

I would appreciate it if you could give me some pointers. I'm a Linux admin and I think I'll have no problem handling the settings.
I even think it's good to have it described somewhere publicly so that someone else can configure everything if they want to.
I have a working asterisk server configured. I use a linphone too. Even video calling between 2 android devices works.
What firmware version does the intercom have? How did you connect the intercom? Ethernet or wifi?
 
Hi, when you enable the intercom as SIP extension, you also need to setup the number for calling, thats why you get 'calling failed' , i have a ds-kd8003 , but setup should be the same +-
i only have 1 button , to call, but i have a keypad, so i can call mutliple rooms, each room you can define with a SIP nr

i also used asterisk, registered as an extension first, but remember, if you register the outdoor as extension, if you have also indoor stations, early video is gone, only vide after pickup


1667915794419.png
1667915811552.png
 
as for SSH, that will not work, you can enable SSH, but its useless, the commands only come avaible if you enter the password, and the password is a combination, that only hikvision can generate, so its for personel only
 
Intercom KV8113-WME1 Firmware Version: V2.2.43 build 210407.
I don't have indoor unit, so my setup most probably will not work with it.
I setup asterisk SIP, didn't have time to switch to PJSIP yet.
For yearly video you'll need to to activate "Accept early media" in Linphone app settings.

Hope this helps.

My asterisk server has cctv.lan domain name.

I assign Intercom SIP # 100. And setup it to call # 101.

Intercom Network SIP configuration.
Doorbell  Configuration.png

Intercom settings
Configuration.png

Number settings
Number Settings.png

Asterisk Configuration

sip.conf

Code:
[general]
context=default

; transport=ws,wss
; avpf=yes

disallow=all    ; Windows Messenger will choose wrong codecs if you allow=all
allow=alaw,ulaw

videosupport=yes
allow=h264

; Intercom
[100]
type=friend
host=dynamic
;  SIP password
secret=****
; required for video call
; => https://voip4learn.blogspot.com/2014/10/what-is-asterisk-sipconf-canreinvite.html
canreinvite=no

[101]
type=friend
host=dynamic
secret=*****

...

extensions.conf

Code:
[general]
static=yes
writeprotect=no
priorityjumping=no
autofallthrough=yes
clearglobalvars=no

[default]
exten => 100,1,Dial(SIP/100,60)
; This doesn't work. Intercom drops session
; exten => 101/100,1,Playback(one-moment-please)
exten => 101/100,1,Ringing()
exten => 101/100,n,Wait(2)
exten => 101/100,n,Answer(500)
exten => 101/100,n,Record(/var/spool/asterisk/record/call%d:ulaw,,2)
; First attempt: local SIP ## 101,102 and external with linphone
exten => 101/100,n,Dial(SIP/101&SIP/102&SIP/xxxxxxxx@sip.linphone.org,30)
; Second attempt: another external with linphone
exten => 101/100,n,Dial(SIP/yyyyyyyy@sip.linphone.org,20)
; Voice mail
exten => 101/100,n,Playback(transfer,skip)         ; "Please hold while..."
exten => 101/100,n,Ringing()
exten => 101/100,n,Wait(2)
exten => 101/100,n,Answer(500)
exten => 101/100,n,Playback(vm-intro)
exten => 101/100,n,Record(/var/spool/asterisk/record/message%d:ulaw,,20)
exten => 101/100,n,Playback(beep)
exten => 101/100,n,Hangup(16)
 
Last edited:
  • Like
Reactions: misho
i tried chan_sip or pjsip, they both work
Early video works , but ONLY if you call to 1 extension, 1 to 1 call
if you enable followme/queue/groups , then NO early video, only after picking up

You dont need to have an indoor, to register the device on SIP
 
I have to check early video again, but it seems it works on all phones(at the same time) where asterisk forwards Intercom call.
 
do you use queue in asterisk ? lemme know, i only have early video if i do just 1 to 1 call, not queue

maybe you can share config? extensions/dialplan ?
 
@hiklinux are you using Home Assistant? If you are interested, I have written add-ons for it, based on python by using the SDK from Hikvision..

I can capture motion, callstate, call dismissed, tamper. But also open door events, badge I'd...

I also send commands to open door based on ISAPI or sdk
 
Hi, offcourse, i created the addon here:
it just runs as a backround script, but the addon for HA is passint some variables, like username/pass/IP ... so adapt the script to hardcode them or pass them as atributes for example
Also the events for motion and stuff, you see in script i do an REST api call, you can modify that too...
the SDK needs a librarry, it should run on x64 / windows (linux/windows/debian) Alpine is NOT supported, RPI with aarch64 shoud-ld, but i never tested, but i included the lib folder...


Anywya, regardng to your sip config,
1) why is that canreinite important? Is it only needed on extension 100??
2) in your dialplan, if you call 101 , do 101 and 102 and linphone user all ring simultanously? i thougth that that didnt work, that only 1 extension was ringing , if 101 is not avaible , then goto 102
So do they all ring at the same time? and with early vidoe?
3) i also see you call externally a linhone user based on sip.linphone.org, how do you that ? i also call linhome users; i created an outbound trunk that registers on linhome flexisip, with that trunk i do an outbound call
4) is that also the full config you posted for 100 or 101?
5) exten => 101/100,1.... What does that mean? The forward slash? Why do put also /100 there? Does that mean 101 can only be called from 100 ?

thnx!!
 
Last edited: