Eufy Camera Integration

You might be confused.

The “normal” one you refer to is probably the built-in integration:

The one most were using before was:

This thread is regarding:

okay, maybe I expressed myself badly I installed the version of fuatakgun.

version

but i had no PTZ Sensors or Options how @DivanX10 said, see here

i have the Eufy 2K Indoor Camera , Model T8410

@DivanX10

i have the same model, can you make a screenshot of the sensor for PTZ control?

There are no sensors available out of the box for ptz but integration allows you to send commands to devices directly even there is no sensor built for it.

Please check webrtc GitHub repository, i have seen users of eufy_security integration shared their examples there.

To control the PTZ, you need to see if your camera has support. If there is, then you need to use the services, hijack_security.send_message. You can read more here

The code for the card itself, which also includes PTZ
type: entities
entities:
  - entity: sensor.persons_names_hall
    name: Name
  - entity: image_processing.detect_face_eufy_camera
    name: Number of persons
  - entity: input_number.deepstack_confidence_face
    name: Confidence
  - entity: sensor.agentdvr
    name: Occupied seats
  - type: custom:fold-entity-row
    head:
      entity: group.hall_camera_eufy_info_and_menu
      name: Setting up the camera
      icon: mdi:camera
      type: custom:multiple-entity-row
      show_state: false
      state_header: Status
    entities:
      - entity: group.hall_camera_eufy_info_and_menu
        type: custom:multiple-entity-row
        name: Camera Control
        show_state: false
        toggle: false
        icon: mdi:camera
        entities:
          - entity: ''
            name: Down
            type: button
            tap_action:
              action: call-service
              service: eufy_security.send_message
              service_data:
                message: |-
                  {
                    "messageId": "cmd Pan And Tilt Down", 
                    "command": "device.pan_and_tilt",
                    "serialNumber": "T8410XXXXXXXX",
                    "direction": 4
                  }
            icon: mdi:camera-control
          - entity: ''
            name: Left
            type: button
            tap_action:
              action: call-service
              service: eufy_security.send_message
              service_data:
                message: |-
                  {
                    "messageId": "cmd Pan And Tilt Left", 
                    "command": "device.pan_and_tilt",
                    "serialNumber": "T8410XXXXXXXX",
                    "direction": 1
                  }
            icon: mdi:camera-control
          - entity: ''
            name: Right
            type: button
            tap_action:
              action: call-service
              service: eufy_security.send_message
              service_data:
                message: |-
                  {
                    "messageId": "cmd Pan And Tilt Right", 
                    "command": "device.pan_and_tilt",
                    "serialNumber": "T8410XXXXXXXX",
                    "direction": 2
                  }
            icon: mdi:camera-control
          - entity: ''
            name: Up
            type: button
            tap_action:
              action: call-service
              service: eufy_security.send_message
              service_data:
                message: |-
                  {
                    "messageId": "cmd Pan And Tilt Up", 
                    "command": "device.pan_and_tilt",
                    "serialNumber": "T8410XXXXXXXX",
                    "direction": 3
                  }
            icon: mdi:camera-control
      - entity: switch.send_pictures_in_telegram
        name: Send a snapshot
        show_state: true
        toggle: true
      - entity: script.start_face_detection
        name: Recognize a face
      - entity: script.camera_in_hall_deleting_videofiles_in_the_agent_dvr_folder
        name: Delete Files
title: Camera
show_header_toggle: false
state_color: true

okay that works. but now i tried to add it to the overlay ptz control.

the problem is that i must send a number for direction, example 1.

then its no STRING its a NUMBER but the Integration wants a STRING.

i tried it different ways, here is my latest test with a script

the button

- type: custom:webrtc-camera
        entity: camera.kinderzimmer
        ui: true
        ptz:
          service: script.ptz_kinderzimmer
          data_left:
            direction: 1

the scirpt

service: eufy_security.send_message
data:
  message: |-
    {
      "messageId": "cmd Pan And Tilt Down", 
      "command": "device.pan_and_tilt",
      "serialNumber": "T8410P3121302681",
      "direction": {{ direction }}
    }

i tried it with quotes but no luck. i cant send a number as a string.

I’m not sure if this will work, since not all variables can work with service: eufy_security.send_message. If it doesn’t work with a variable, then don’t use variables and specify a specific number.

For example, I slightly rewrote the code taken from here

   - type: vertical-stack
        cards: 
          - type: 'custom:webrtc-camera'
            url: 'rtsp://admin:[email protected]:554//h264Preview_01_main'
    #        entity: camera.loungereolink_profile000_mainstream
          - type: glance
            entities:
              - entity: ''
                name: Down
                type: button
                tap_action:
                  action: call-service
                  service: eufy_security.send_message
                  service_data:
                    message: |-
                      {
                        "messageId": "cmd Pan And Tilt Down", 
                        "command": "device.pan_and_tilt",
                        "serialNumber": "T8410XXXXXXXX",
                        "direction": 4
                      }
                icon: mdi:camera-control

Possible values:

ROTATE360 = 0
LEFT = 1
RIGHT = 2
UP = 3
DOWN = 4

that works, but i want to integrate it in the webrtc built in Ptz control.

thats my problem.i must use a script for it.

i get the value from my button to the script, BUT the value for example : 1 is than a Number, and the integration accepts no number, it must be a string.

my code, the script that accepts the values, here only the 2

service: eufy_security.send_message
data:
  message: |-
    {
      "messageId": "cmd Pan And Tilt Down", 
      "command": "device.pan_and_tilt",
      "serialNumber": "XXX",
      "direction": 
          {% if direction == "left" %} 2
          {% endif %}
    }

and my webrtc card

- type: custom:webrtc-camera
        entity: camera.kinderzimmer
        ui: true
        webrtc: true
        ptz:
          service: script.ptz_kinderzimmer
          data_left:
            direction: left
          data_right:
            direction: right
          data_up:
            direction: up
          data_down:
            direction: down 

when i now click he says the data must be a string.
when i add the if condition in the script the STRING turns into a NUMBER. and that not works

Why do you need webrtc integration? Pay attention to AgentDVR, it has a built-in webrtc and a video stream without delays. There is a video output card for AgentDVR. Create a video card + PTZ buttons

the problem is not the webrtc the problem is the eufy integration, why acctepts the direction no number values??

its a Number, 0-4 , NO String.
i spent hours for a problem, that’s just incredible, “direction” has to accept a number as a value. This is simply a mistake in integration

Please check here for webrtc + eufy_security + ptz controls. [Feature request] PTZ for Eufy Indoor Cam Pan&Tilt · Issue #217 · AlexxIT/WebRTC · GitHub

1 Like

is it possible to zoom?
over the eufy handy app it works.

Can i ask something here?
I have an eufycam 2 (model T8114)

Sometimes theres a heron in my garden, and i want to see it on my cam, but it doesnt record it.
Is that normal? Camera is set to “all motions”.

Secondly, theres a dog outside my house, that does his day job… i also want to record that, so i know which dog/human it is.
Will another eufycam 2 record it? The dog?
Should i jump on this?

@anon63427907, you still have plans for official integration?

Hello,

Can you please assist me I have followed all guides and still having the same issue.
I can get a live feed working for my camera (Eufy Floodlight Pro 2, model T8423) this works for 3 minutes and then cuts off. I can see this is normal but unsure how to keep a constant live feed showing? This is with using WebRTC.

When using Eufy Security addon i can get all types on things working such as turning the flood lights on. But still not the live feed.

Is this going to be the case with these cameras or is there a work around? I can’t see the point of using these cameras If I can’t get a live feed.

Thank you in advance for any help / advice.

Is this topic still alive?

2 Likes

Has anyone from HomeAssistant outreached to Eufy for an official partnership? The sheer volume of comments on this thread is staggering.

2 Likes

So I have got this installed and it’s working pretty good. I guess my only question would be the little preview thumbnails like emotion and stuff outside they’re really old is there anyway to get them to update to be current?

Return Status Code Not 200 - Receiving Status Code 423

New Setup, system connects to devices, then received Status return code not 200. and continues this way, until a restart of the add-on in HAOS. (Receiving Status Code 423). So something is causing it to lock the account?

Please see attachment. At a loss as to what is the cause here. I have 16 Eufy Cameras, created a separate account for HA, etc. API request limit on Eufy API servers??

after some tweaking…and last event not showing as they have been, noticed that the Floodlight last evet is no longer available and not entirely sure why…nothing has changed and all other camera last event show just fine

I second that! Also have the same goal - replicate videos somewhere else on the network. Would love to know if you come up with anything.

Is there a sensor for the doorbell button?