Imou Life - cloud integration

Thanks @janinho, @Despertaferro , will keep you posted then, it should take some more days to have a first beta version available to be tested (I’m trying to follow Home Assistant coding guidelines and since it is the first time, it is taking longer). As soon as I will have something ready I’ll drop a message here.

@janinho very nice project! I think the Versa fits well because is pretty compact and has also a magnetic mount which can be handy in your scenario. It has a 5V 1A input so just wonder how long can your battery last to keep it running :slight_smile:
Thanks

2 Likes

Wow, this is an awesome project! I have owned one Imou Rex 4MP version and looking for enable/disable privacy mode, LED light, etc… Can’t wait to integrate this to my HA integration! Thank you for making this project happen.

@janinho, @Despertaferro, @khuntop here we are with a first beta version :slight_smile:

It is available for now as a HACS custom repository, at GitHub - user2684/imou_life: Home Assistant custom component for controlling Imou devices.

Please follow installation, requirements and configurations instructions provided on Github for setting it up. It may of course still have bugs. Anything not working properly or any suggestion for making the documentation more clear, please let me know here or opening up issues on Github.

Initial support is for a limited set of switches only, those I could test on my devices. I can easily add more but I’d need to ask some details on your devices at a later stage.
Let me know if works of course :slight_smile: Thanks

6 Likes

Thank you for your hard work! It is easy to setup the integration and everything works fine. All camera switches and sensors work fine. Next step, is it possible to control on/off privacy mode? This is the most wanted feature I am looking for.

Thank you for this fantastic integration! I’m looking forward to buying the camera to test and I’ll tell you if it works. Report if there are any news too

@khuntop thanks for the update! Good news everything is working just fine so far!

To get the privacy switch in I need a favour from you:

  • ensure you have v0.1.1 installed
  • enable debug logging (instructions on GitHub)
  • restart HA
  • do a device discover like when you added your cameras
  • in the logs you should see for each discovered device a long detailed description with a list of capabilities and available switches
  • copy and paste it here, one snippet for each camera model in case you have multiple models
  • ensure of course there are not sensitive information in what you are pasting here (there should not since with 0.1.1 any sensitive data like tokens and so on are redacted from the logs)

Thanks!

Now, I have only one IMOU Rex Camera and here is the info in the logs

  • Device ID: {{DEVICE_SERIAL_NUMBER}}

    Name: Front Door

    Catalog: IPC

    Model: IPC-A46L-D

    Firmware: 2.800.0000000.11.R.220812

    Online: yes

    Capabilities:

      - Support access to wireless local area network (WLAN)
    
      - Support streaming media forwarding capability (MT)
    
      - Support Huashi WeChat Stream Encryption (HSEncrypt)
    
      - Support for cloud storage of China Vision WeChat platform (CloudStorage)
    
      - Support device local storage, such as SD card or hard disk (LocalStorage)
    
      - The device supports playback based on the file name (PlaybackByFilename)
    
      - The device has a breathing light (indicator light) (BreathingLight)
    
      - The device has remote debugging capabilities and supports log extraction (RemoteDebug) (RD)
    
      - Support device local recording settings (LocalRecord)
    
      - Cloud Upgrade (XUpgrade)
    
      - Device end loopback RTSP requires authentication (Auth)
    
      - Support user name password information verification and password modification (ModifyPassword)
    
      - Support device local storage enable switch (LocalStorageEnable)
    
      - Siren (Siren)
    
      - White Light (WhiteLight)
    
      - Real-time streaming supports private protocol to pull streaming (RTSV1)
    
      - Playback stream supports private protocol to pull stream (PBSV1)
    
      - Voice intercom streaming supports private protocol to pull streaming (TSV1)
    
      - Support 0x95 extension header encryption (ESV1)
    
      - Support time format setting (TimeFormat)
    
      - Device sound switch capability (PlaySound)
    
      - The device supports restarting (Reboot)
    
      - Infrared Light (InfraredLight)
    
      - Associated Device Alarm (LinkDevAlarm)
    
      - Abnormal alarm sound (AbAlarmSound)
    
      - The device supports SC security code (SCCode)
    
      - Support RD capability, support data burying point control, support debugging log upload (RDV2)
    
      - The device supports daily summer time (DaySummerTime)
    
      - The device supports weekly daylight saving time (WeekSummerTime)
    
      - Support TLS transmission (TLSEnable)
    
      - Support the device to capture multiple pictures (TimingGraphics)
    
      - Support Three code megre (TCM)
    
      - White light, does not support brightness adjustment ability (WLV2)
    
      - Local recording supports fast forward LocalRecordReplayForward (LRRF)
    
      - CDD
    
      - CDDV2
    
      - Direct log storage (DLS)
    
      - CDD-OSS
    
      - CDD-OBS
    
      - CDD-US3
    
      - CDD-BOS
    
      - CDD-COS
    
      - AUTODSTV2
    
      - Support motion detection alarm (AlarmMD)
    
      - Support PTZ operation (PT)
    
      - Supports audio encoding control (on or off), only affects real-time video, video         audio, and does not affect intercom audio control (AudioEncodeControlV2)
    
      - Support screen flip (FrameReverse)
    
      - Support remote linkage (RemoteControl)
    
      - motion-detect-window supports motion detection window settings (MDW)
    
      - motion-detect-sensitive supports motion detection sensitivity setting (MDS)
    
      - Support head detection (HeaderDetect)
    
      - Support collection points (CollectionPoint)
    
      - Support timed cruise (TimedCruise)
    
      - Support Smart Tracking (SmartTrack)
    
      - Support wifi report (WifiReport)
    
      - Wide Dynamic (WideDynamic)
    
      - Support to close the camera (CloseCamera)
    
      - Abnormal detection tone decibel threshold (CheckAbDecible)
    
      - Ranger2 only supports 4-way pan/tilt capability. Does not support zoom in and out Does not support        digital zoom operation (PT1)
    
      - CCSC
    
      - PTZS
    
      - RQD
    
      - CLOUDAIV1
    
      - EventFilter
    
      - WLM
    
      - RSRS
    
      - Support voice intercom (AudioTalk)
    
      - The device supports WIFI capability (WIFI)
    
      - motionDetect
    

    Available Switches:

      - Local Record (localRecord)
    
      - Motion detection (motionDetect)
    
      - Breathing light (breathingLight)
    
      - Smart Tracking (smartTrack)
    
      - Head Detection (headerDetect)
    
      - Device local storage (localStorageEnable)
    
      - White Light (whiteLight)
    
      - infrared light (infraredLight)
    
      - close camera (closeCamera)
    
      - easy4ip dedicated tls enable switch (tlsEnable)
    
      - Associated device alarm (linkDevAlarm)
    
      - Abnormal alarm sound (abAlarmSound)
    
      - Device sound (playSound)
    
      - Wide Dynamic (wideDynamic)
    

    Configured Switches:

      - Motion detection (motionDetect): OFF
    
      - Breathing light (breathingLight): OFF
    
      - Head Detection (headerDetect): OFF
    
      - Abnormal alarm sound (abAlarmSound): OFF
    

    Sensors:

      - Last alarm (lastAlarm):
    

    Binary Sensors:

      - Online (online): OFF

Great thanks! It must be the closeCamera switch, I’ll add it along the weekend then.
I’ll also add linkDevAlarm, whiteLight and smartTrack which all seem useful to control.

Theoretically I could have all of them automatically added but each switch means a new periodic api call and I’m afraid if too many could hit the daily limit of imou Cloud api, especially if one have multiple cameras.
And also it may be confusing for the user I think to have too many not significant switches, if this makes sense.

Thanks

1 Like

Thank you! That makes sense. I’m looking forward to.

Hello I own sevral imou IPC-C22C and your integration works great, but I need some help. I’m probably OT but I have tried everithing without success. Using the ONVIF integration I can only stream (add) one camera at the time; as sson as I try to add second onvif camera I get the message that the camera has already been added and the integration crashes. Any clue on how I could solve that problem?
thanks and gratz for the integration again.

@isiden1 I think you hit the same issue I had. Have a look at my post here and check if the workaround I’ve used works for you as well: Onvif multiple camera configuration - #15 by user2684
Thanks

Yesssss thanks, I’ve been tracking that post for almost one year and I’ve missed your answer of 2 weeks ago…
I can confirm that now everything works fine. Thanks again :slight_smile:

Hello,

does this integration support Imou video doorbells (Imou DB61)?

@dlogic I’m very optimistic it would since the underlaying APIs are the same. But I’d need to have a look at your device capabilities to confirm since I don’t have one to test.
Can you please go through the steps highlighted on Imou Life - cloud integration - #11 by user2684 to discover your device and share the ouput from the debug logs?
Thanks

@khuntop and all, I’ve just made available version 0.1.2. If previous versions have been installed via HACS, the update should show up in the HACS interface as you are used to.

In this release, instead of adding the new switches we discussed in the last few days, I went for an approach which I hope can be even more flexible: for each device ALL the discovered switches are added as entities but only a few (the one we selected) are enabled by default in HA, the others show up as disabled. In this way a user can enable it without requiring any change to the integration’s code.
Minor but nice change, I’ve added icons and logos :wink: After the upgrade, the new switches should show up without the need to remove and re-add the device back again.

Let me know if it works as expected (would be nice also if you can share a screenshot of the device in HA, just for my own curiosity)

Please of course still consider this integration as an early beta since not tested extensively.
Thanks

2 Likes

I already have the Imou versa camera and unfortunately in the app it can’t control the white light, it’s ridiculous, it only turns on automatically with a specific night mode. I have already discussed with the customer support center that a firmware update must required.

Can you tell me if you have the same model of versa IPC-C22F-C and if you have a switch to turn on the light?

Regarding your integration, it works to turn on the status LED but not the siren, I have already done the update integration and more switches have come out, although I don’t know if everything work.

Thank you for your hard work again! for version 0.1.1 when I turn on breathing light or other switches sometimes it shows error “expire token” but after updated to version 0.1.2 everything works fine so far.

@janinho regarding the Versa, unfortunately you’re right. Actually I did start looking at the API specifically for finding out an undocumented way to manipulate the white light. I discovered that it doesn’t turn on on motion as advertised but only if you change the night mode to a specific value but in this case will stay on all the time which is not ideal. Maybe an option can be to capture the motion event, change the night mode through the api for e.g. a minute and then restoring its value back. I will look into this down the road. Still not ideal of course.

The siren should be associated with the “Associated device alarm” (I took the name of the switches from the api documentation which is probably a poor translation from Chinese). If you enable it, you should see the siren switch you have in the app enabled.

Thanks for the screenshot! Was it you enabling all the switches right? Just to confirm they showed up as disabled as they should after the upgrade.
Thanks

@khuntop thanks, I’m afraid the access token expired issue is still there also with 0.1.2, it is what I’m working on right now which is critical to be fixed, thanks for pointing it out! (temporary workaround is to manually reload the integration when it shows up).

Hello, version 0.1.3 just release should have the expired access token issue fixed :slight_smile:
Thanks

1 Like