Closed janstenpickle closed 1 year ago
Just to be complete, could you add the response to the GetAbility command for the RLC-812A? (Turn on debug logging in the HomeAssistant component and restart the Reolink integration, the debug log schould include the very long list of capabilities).
Besides the floodlight, is the RLC-812A working properly with HomeAssistant? I will then add it to the supported list in the documentation.
@janstenpickle on which firmware version are you?
Just to be complete, could you add the response to the GetAbility command for the RLC-812A?
I used your library directly, I hope that's OK (print(json.dumps(host._abilities))
):
{
"3g":{
"permit":0,
"ver":0
},
"abilityChn":[
{
"aiTrack":{
"permit":0,
"ver":0
},
"alarmAudio":{
"permit":6,
"ver":1
},
"alarmIoIn":{
"permit":0,
"ver":0
},
"alarmIoOut":{
"permit":0,
"ver":0
},
"alarmMd":{
"permit":6,
"ver":1
},
"alarmRf":{
"permit":0,
"ver":0
},
"batAnalysis":{
"permit":0,
"ver":0
},
"battery":{
"permit":0,
"ver":0
},
"cameraMode":{
"permit":6,
"ver":0
},
"disableAutoFocus":{
"permit":0,
"ver":0
},
"enc":{
"permit":6,
"ver":1
},
"floodLight":{
"permit":0,
"ver":0
},
"ftp":{
"permit":6,
"ver":6
},
"image":{
"permit":6,
"ver":1
},
"indicatorLight":{
"permit":0,
"ver":0
},
"isp":{
"permit":6,
"ver":1
},
"isp3Dnr":{
"permit":0,
"ver":0
},
"ispAntiFlick":{
"permit":6,
"ver":1
},
"ispBackLight":{
"permit":0,
"ver":0
},
"ispBright":{
"permit":6,
"ver":1
},
"ispContrast":{
"permit":6,
"ver":1
},
"ispDayNight":{
"permit":0,
"ver":0
},
"ispExposureMode":{
"permit":0,
"ver":0
},
"ispFlip":{
"permit":6,
"ver":1
},
"ispHue":{
"permit":0,
"ver":0
},
"ispMirror":{
"permit":6,
"ver":1
},
"ispSatruation":{
"permit":6,
"ver":1
},
"ispSharpen":{
"permit":6,
"ver":1
},
"ispWhiteBalance":{
"permit":0,
"ver":0
},
"ledControl":{
"permit":0,
"ver":0
},
"live":{
"permit":4,
"ver":1
},
"mainEncType":{
"permit":1,
"ver":1
},
"mask":{
"permit":6,
"ver":1
},
"mdTriggerAudio":{
"permit":0,
"ver":0
},
"mdTriggerRecord":{
"permit":0,
"ver":0
},
"mdWithPir":{
"permit":0,
"ver":0
},
"osd":{
"permit":6,
"ver":1
},
"powerLed":{
"permit":0,
"ver":0
},
"ptzCtrl":{
"permit":0,
"ver":0
},
"ptzDirection":{
"permit":1,
"ver":0
},
"ptzPatrol":{
"permit":0,
"ver":0
},
"ptzPreset":{
"permit":0,
"ver":0
},
"ptzTattern":{
"permit":0,
"ver":0
},
"ptzType":{
"permit":0,
"ver":0
},
"recCfg":{
"permit":6,
"ver":1
},
"recDownload":{
"permit":6,
"ver":1
},
"recReplay":{
"permit":6,
"ver":1
},
"recSchedule":{
"permit":6,
"ver":2
},
"shelterCfg":{
"permit":6,
"ver":1
},
"snap":{
"permit":6,
"ver":1
},
"supportAiAnimal":{
"permit":0,
"ver":0
},
"supportAiDetectConfig":{
"permit":6,
"ver":1
},
"supportAiFace":{
"permit":0,
"ver":0
},
"supportAiPeople":{
"permit":6,
"ver":1
},
"supportAiSensitivity":{
"permit":6,
"ver":1
},
"supportAiStayTime":{
"permit":0,
"ver":0
},
"supportAiTargetSize":{
"permit":6,
"ver":1
},
"supportAiTrackClassify":{
"permit":0,
"ver":0
},
"supportAiVehicle":{
"permit":6,
"ver":1
},
"supportAoAdjust":{
"permit":0,
"ver":1
},
"supportFLBrightness":{
"permit":6,
"ver":1
},
"supportFLIntelligent":{
"permit":0,
"ver":0
},
"supportFLKeepOn":{
"permit":6,
"ver":1
},
"supportFLSchedule":{
"permit":6,
"ver":1
},
"supportFLswitch":{
"permit":6,
"ver":1
},
"supportGop":{
"permit":0,
"ver":1
},
"supportPtzCheck":{
"permit":0,
"ver":0
},
"supportWhiteDark":{
"permit":6,
"ver":1
},
"videoClip":{
"permit":6,
"ver":2
},
"waterMark":{
"permit":6,
"ver":1
},
"white_balance":{
"permit":6,
"ver":0
}
}
],
"alarmAudio":{
"permit":6,
"ver":1
},
"alarmDisconnet":{
"permit":6,
"ver":1
},
"alarmHddErr":{
"permit":6,
"ver":1
},
"alarmHddFull":{
"permit":6,
"ver":1
},
"alarmIpConflict":{
"permit":6,
"ver":1
},
"auth":{
"permit":6,
"ver":1
},
"autoMaint":{
"permit":6,
"ver":1
},
"cloudStorage":{
"permit":0,
"ver":0
},
"customAudio":{
"permit":1,
"ver":1
},
"dateFormat":{
"permit":6,
"ver":1
},
"ddns":{
"permit":6,
"ver":9
},
"ddnsCfg":{
"permit":6,
"ver":1
},
"devInfo":{
"permit":4,
"ver":1
},
"devName":{
"permit":6,
"ver":2
},
"disableAutoFocus":{
"permit":0,
"ver":0
},
"disk":{
"permit":6,
"ver":1
},
"display":{
"permit":6,
"ver":1
},
"email":{
"permit":6,
"ver":3
},
"emailInterval":{
"permit":6,
"ver":1
},
"emailSchedule":{
"permit":6,
"ver":1
},
"exportCfg":{
"permit":4,
"ver":0
},
"ftpAutoDir":{
"permit":6,
"ver":0
},
"ftpExtStream":{
"permit":6,
"ver":1
},
"ftpPic":{
"permit":0,
"ver":0
},
"ftpSubStream":{
"permit":6,
"ver":1
},
"ftpTest":{
"permit":6,
"ver":0
},
"hourFmt":{
"permit":6,
"ver":2
},
"http":{
"permit":6,
"ver":1
},
"httpFlv":{
"permit":6,
"ver":1
},
"https":{
"permit":6,
"ver":1
},
"importCfg":{
"permit":1,
"ver":0
},
"ipcManager":{
"permit":6,
"ver":1
},
"ledControl":{
"permit":0,
"ver":0
},
"localLink":{
"permit":6,
"ver":1
},
"log":{
"permit":6,
"ver":1
},
"mediaPort":{
"permit":6,
"ver":1
},
"ntp":{
"permit":6,
"ver":1
},
"online":{
"permit":6,
"ver":1
},
"onvif":{
"permit":6,
"ver":1
},
"p2p":{
"permit":6,
"ver":1
},
"performance":{
"permit":4,
"ver":1
},
"pppoe":{
"permit":6,
"ver":0
},
"push":{
"permit":6,
"ver":1
},
"pushSchedule":{
"permit":6,
"ver":1
},
"reboot":{
"permit":1,
"ver":1
},
"recExtensionTimeList":{
"permit":6,
"ver":1
},
"recOverWrite":{
"permit":6,
"ver":1
},
"recPackDuration":{
"permit":6,
"ver":0
},
"recPreRecord":{
"permit":6,
"ver":1
},
"restore":{
"permit":1,
"ver":1
},
"rtmp":{
"permit":6,
"ver":1
},
"rtsp":{
"permit":6,
"ver":2
},
"scheduleVersion":{
"permit":6,
"ver":1
},
"sdCard":{
"permit":6,
"ver":1
},
"showQrCode":{
"permit":6,
"ver":0
},
"simMoudule":{
"permit":6,
"ver":0
},
"supportAudioAlarm":{
"permit":6,
"ver":1
},
"supportAudioAlarmEnable":{
"permit":6,
"ver":1
},
"supportAudioAlarmSchedule":{
"permit":6,
"ver":1
},
"supportAudioAlarmTaskEnable":{
"permit":6,
"ver":1
},
"supportBuzzer":{
"permit":0,
"ver":0
},
"supportBuzzerEnable":{
"permit":0,
"ver":0
},
"supportBuzzerTask":{
"permit":0,
"ver":0
},
"supportBuzzerTaskEnable":{
"permit":0,
"ver":0
},
"supportEmailEnable":{
"permit":6,
"ver":1
},
"supportEmailTaskEnable":{
"permit":6,
"ver":1
},
"supportFtpEnable":{
"permit":6,
"ver":1
},
"supportFtpTask":{
"permit":6,
"ver":1
},
"supportFtpTaskEnable":{
"permit":6,
"ver":1
},
"supportRecScheduleEnable":{
"permit":6,
"ver":1
},
"supportRecordEnable":{
"permit":6,
"ver":1
},
"talk":{
"permit":4,
"ver":1
},
"time":{
"permit":6,
"ver":2
},
"tvSystem":{
"permit":6,
"ver":0
},
"upgrade":{
"permit":1,
"ver":2
},
"upnp":{
"permit":6,
"ver":1
},
"user":{
"permit":6,
"ver":1
},
"videoClip":{
"permit":6,
"ver":2
},
"wifi":{
"permit":0,
"ver":0
},
"wifiTest":{
"permit":6,
"ver":0
}
}
Besides the floodlight, is the RLC-812A working properly with HomeAssistant?
Yep it seems to work just fine. The only thing I've notices is that the motion detection doesn't always trigger in HA when video has been recorded. I'm not sure if that's a more general problem with other cameras. I need to do some more debugging before reporting anything though!
on which firmware version are you?
v3.0.0.585_21090213
I think the latest firmware version for the RLC-812A is v3.1.0.920_22040613, could you update to that version from the Reolink Download center https://reolink.com/download-center/?
I see a supportFLBrightness
that is 1 for both your RLC-812A and my TrackMix, so I might start using that instead of this model list to be more robust, will do some more debugging tonight.
Thank you very much for sharing and making this PR!
I think the latest firmware version for the RLC-812A is v3.1.0.920_22040613, could you update to that version from the Reolink Download center reolink.com/download-center?
Yes of course, I'll do that now. It's a bit odd that it didn't auto update...
Thank you very much for sharing and making this PR!
Thank you as well, this API is... complicated. I've only just got the camera so am still experimenting, I hope to be able to contribute where I can.
OK, just updated. The floodlight capability still isn't listed, but here's the abilities since the update:
{
"3g":{
"permit":0,
"ver":0
},
"abilityChn":[
{
"aiTrack":{
"permit":0,
"ver":0
},
"alarmAudio":{
"permit":6,
"ver":1
},
"alarmIoIn":{
"permit":0,
"ver":0
},
"alarmIoOut":{
"permit":0,
"ver":0
},
"alarmMd":{
"permit":6,
"ver":1
},
"alarmRf":{
"permit":0,
"ver":0
},
"batAnalysis":{
"permit":0,
"ver":0
},
"battery":{
"permit":0,
"ver":0
},
"cameraMode":{
"permit":6,
"ver":0
},
"disableAutoFocus":{
"permit":0,
"ver":0
},
"enc":{
"permit":6,
"ver":1
},
"floodLight":{
"permit":0,
"ver":0
},
"ftp":{
"permit":6,
"ver":6
},
"image":{
"permit":6,
"ver":1
},
"indicatorLight":{
"permit":0,
"ver":0
},
"isp":{
"permit":6,
"ver":1
},
"isp3Dnr":{
"permit":0,
"ver":0
},
"ispAntiFlick":{
"permit":6,
"ver":1
},
"ispBackLight":{
"permit":0,
"ver":0
},
"ispBright":{
"permit":6,
"ver":1
},
"ispContrast":{
"permit":6,
"ver":1
},
"ispDayNight":{
"permit":0,
"ver":0
},
"ispExposureMode":{
"permit":0,
"ver":0
},
"ispFlip":{
"permit":6,
"ver":1
},
"ispHue":{
"permit":0,
"ver":0
},
"ispMirror":{
"permit":6,
"ver":1
},
"ispSatruation":{
"permit":6,
"ver":1
},
"ispSharpen":{
"permit":6,
"ver":1
},
"ispWhiteBalance":{
"permit":6,
"ver":0
},
"ledControl":{
"permit":0,
"ver":0
},
"live":{
"permit":4,
"ver":1
},
"mainEncType":{
"permit":0,
"ver":1
},
"mask":{
"permit":6,
"ver":1
},
"mdTriggerAudio":{
"permit":0,
"ver":0
},
"mdTriggerRecord":{
"permit":0,
"ver":0
},
"mdWithPir":{
"permit":0,
"ver":0
},
"osd":{
"permit":6,
"ver":1
},
"powerLed":{
"permit":0,
"ver":0
},
"ptzCtrl":{
"permit":0,
"ver":0
},
"ptzDirection":{
"permit":1,
"ver":0
},
"ptzPatrol":{
"permit":0,
"ver":0
},
"ptzPreset":{
"permit":0,
"ver":0
},
"ptzTattern":{
"permit":0,
"ver":0
},
"ptzType":{
"permit":0,
"ver":0
},
"recCfg":{
"permit":6,
"ver":1
},
"recDownload":{
"permit":6,
"ver":1
},
"recReplay":{
"permit":6,
"ver":1
},
"recSchedule":{
"permit":6,
"ver":2
},
"shelterCfg":{
"permit":6,
"ver":1
},
"snap":{
"permit":6,
"ver":1
},
"supportAi":{
"permit":6,
"ver":1
},
"supportAiAnimal":{
"permit":0,
"ver":0
},
"supportAiDetectConfig":{
"permit":6,
"ver":1
},
"supportAiDogCat":{
"permit":6,
"ver":1
},
"supportAiFace":{
"permit":0,
"ver":0
},
"supportAiPeople":{
"permit":6,
"ver":1
},
"supportAiSensitivity":{
"permit":6,
"ver":1
},
"supportAiStayTime":{
"permit":6,
"ver":1
},
"supportAiTargetSize":{
"permit":6,
"ver":1
},
"supportAiTrackClassify":{
"permit":0,
"ver":0
},
"supportAiVehicle":{
"permit":6,
"ver":1
},
"supportAoAdjust":{
"permit":0,
"ver":1
},
"supportFLBrightness":{
"permit":6,
"ver":1
},
"supportFLIntelligent":{
"permit":6,
"ver":1
},
"supportFLKeepOn":{
"permit":6,
"ver":1
},
"supportFLSchedule":{
"permit":6,
"ver":1
},
"supportFLswitch":{
"permit":6,
"ver":1
},
"supportGop":{
"permit":0,
"ver":0
},
"supportPtzCheck":{
"permit":0,
"ver":0
},
"supportThresholdAdjust":{
"permit":0,
"ver":0
},
"supportWhiteDark":{
"permit":6,
"ver":1
},
"videoClip":{
"permit":6,
"ver":2
},
"waterMark":{
"permit":6,
"ver":1
},
"white_balance":{
"permit":6,
"ver":0
}
}
],
"alarmAudio":{
"permit":6,
"ver":1
},
"alarmDisconnet":{
"permit":6,
"ver":1
},
"alarmHddErr":{
"permit":6,
"ver":1
},
"alarmHddFull":{
"permit":6,
"ver":1
},
"alarmIpConflict":{
"permit":6,
"ver":1
},
"auth":{
"permit":6,
"ver":1
},
"autoMaint":{
"permit":6,
"ver":1
},
"cloudStorage":{
"permit":0,
"ver":0
},
"customAudio":{
"permit":1,
"ver":1
},
"dateFormat":{
"permit":6,
"ver":1
},
"ddns":{
"permit":6,
"ver":9
},
"ddnsCfg":{
"permit":6,
"ver":1
},
"devInfo":{
"permit":4,
"ver":1
},
"devName":{
"permit":6,
"ver":2
},
"disableAutoFocus":{
"permit":0,
"ver":0
},
"disk":{
"permit":0,
"ver":0
},
"display":{
"permit":6,
"ver":1
},
"email":{
"permit":6,
"ver":3
},
"emailInterval":{
"permit":6,
"ver":1
},
"emailSchedule":{
"permit":6,
"ver":1
},
"exportCfg":{
"permit":4,
"ver":0
},
"ftpAutoDir":{
"permit":6,
"ver":1
},
"ftpExtStream":{
"permit":6,
"ver":1
},
"ftpPic":{
"permit":0,
"ver":0
},
"ftpSubStream":{
"permit":6,
"ver":1
},
"ftpTest":{
"permit":6,
"ver":0
},
"hourFmt":{
"permit":6,
"ver":2
},
"http":{
"permit":6,
"ver":3
},
"httpFlv":{
"permit":6,
"ver":1
},
"https":{
"permit":6,
"ver":3
},
"importCfg":{
"permit":1,
"ver":0
},
"ipcManager":{
"permit":6,
"ver":1
},
"ledControl":{
"permit":0,
"ver":0
},
"localLink":{
"permit":6,
"ver":1
},
"log":{
"permit":6,
"ver":1
},
"mediaPort":{
"permit":6,
"ver":1
},
"ntp":{
"permit":6,
"ver":1
},
"online":{
"permit":6,
"ver":1
},
"onvif":{
"permit":6,
"ver":3
},
"p2p":{
"permit":6,
"ver":1
},
"performance":{
"permit":4,
"ver":1
},
"pppoe":{
"permit":6,
"ver":0
},
"push":{
"permit":6,
"ver":1
},
"pushSchedule":{
"permit":6,
"ver":1
},
"reboot":{
"permit":1,
"ver":1
},
"recExtensionTimeList":{
"permit":6,
"ver":1
},
"recOverWrite":{
"permit":6,
"ver":1
},
"recPackDuration":{
"permit":6,
"ver":0
},
"recPreRecord":{
"permit":6,
"ver":1
},
"restore":{
"permit":1,
"ver":1
},
"rtmp":{
"permit":6,
"ver":3
},
"rtsp":{
"permit":6,
"ver":3
},
"scheduleVersion":{
"permit":6,
"ver":1
},
"sdCard":{
"permit":6,
"ver":1
},
"showQrCode":{
"permit":6,
"ver":0
},
"simMoudule":{
"permit":6,
"ver":0
},
"supportAudioAlarm":{
"permit":6,
"ver":1
},
"supportAudioAlarmEnable":{
"permit":6,
"ver":1
},
"supportAudioAlarmSchedule":{
"permit":6,
"ver":1
},
"supportAudioAlarmTaskEnable":{
"permit":6,
"ver":1
},
"supportBuzzer":{
"permit":0,
"ver":0
},
"supportBuzzerEnable":{
"permit":0,
"ver":0
},
"supportBuzzerTask":{
"permit":0,
"ver":0
},
"supportBuzzerTaskEnable":{
"permit":0,
"ver":0
},
"supportEmailEnable":{
"permit":6,
"ver":1
},
"supportEmailTaskEnable":{
"permit":6,
"ver":1
},
"supportFtpCoverPicture":{
"permit":6,
"ver":1
},
"supportFtpCoverVideo":{
"permit":6,
"ver":1
},
"supportFtpDirYM":{
"permit":6,
"ver":1
},
"supportFtpEnable":{
"permit":6,
"ver":1
},
"supportFtpPicCaptureMode":{
"permit":6,
"ver":1
},
"supportFtpPicResoCustom":{
"permit":6,
"ver":0
},
"supportFtpPictureSwap":{
"permit":6,
"ver":1
},
"supportFtpTask":{
"permit":6,
"ver":1
},
"supportFtpTaskEnable":{
"permit":6,
"ver":1
},
"supportFtpVideoSwap":{
"permit":6,
"ver":1
},
"supportFtpsEncrypt":{
"permit":6,
"ver":1
},
"supportHttpEnable":{
"permit":6,
"ver":1
},
"supportHttpsEnable":{
"permit":6,
"ver":1
},
"supportOnvifEnable":{
"permit":6,
"ver":1
},
"supportPushInterval":{
"permit":6,
"ver":1
},
"supportRecScheduleEnable":{
"permit":6,
"ver":1
},
"supportRecordEnable":{
"permit":6,
"ver":1
},
"supportRtmpEnable":{
"permit":6,
"ver":1
},
"supportRtspEnable":{
"permit":6,
"ver":1
},
"talk":{
"permit":4,
"ver":1
},
"time":{
"permit":6,
"ver":2
},
"tvSystem":{
"permit":6,
"ver":0
},
"upgrade":{
"permit":1,
"ver":2
},
"upnp":{
"permit":6,
"ver":1
},
"user":{
"permit":6,
"ver":1
},
"videoClip":{
"permit":6,
"ver":2
},
"wifi":{
"permit":0,
"ver":0
},
"wifiTest":{
"permit":6,
"ver":0
}
}
Yes of course, I'll do that now. It's a bit odd that it didn't auto update...
Auto update/check for update of reolink is broken in many models.
Thank you as well, this API is... complicated. I've only just got the camera so am still experimenting, I hope to be able to contribute where I can.
Yea there are a lot of settings in the API and this library is also not the most tidy, I forked it form previous projects and am trying to clean up as much as I can.
The documentation of this library is a big mess at the moment and at some point I will need to spend some serious time on cleaning up the documentation and properly documenting all available methods/fuctions with proper example scripts. Something like I did for my motion_blinds library which is up to date: https://github.com/starkillerOG/motion-blinds
Nice, thanks. I'll try and contribute where I can. I wanted to look into the web socket functionality if it's available on my model
Thank you very much for this PR, the debug responses and the help!
I schould have fixed the problem with this commit: https://github.com/starkillerOG/reolink_aio/commit/14800d8b16303ffca1093e626fa598a9213db522 that gets rid of the FLOODLIGHT_MODEL list and uses the supportFLBrightness
flag instead.
I checked with the doorbell, E1 zoom, RLC-811A and TrackMix and they are all consistant and reporting floodlight capability correctly now.
I think using the supportFLBrightness
flag is a cleaner and more robust solution than a hard-coded model list.
Therefore I will close this PR.
Please do make more PRs, I can use all the help I can get!
@janstenpickle do you have any documentation on the web socket functionality, I have seen the anouncement that it is coming, but I have not seen any example or documentation yet....
@janstenpickle do you have any documentation on the web socket functionality, I have seen the anouncement that it is coming, but I have not seen any example or documentation yet....
I just saw it mentioned in the v7 (I think) API docs, but I haven't tried it yet. As you say it might not be available right now
Thanks for all the work on this and in HA!
Just a small contribution: my RLC-812A also misreports the floodlight capability. I've tested the
WhiteLed
API commands with it and they seem to work ok, just the floodlight capability is missing.