Intégration de matériel Eufy

Hello,

je viens de me lancer également pour intégrer mes eufycam, @cadetlu, tu peux faire un « sudo docker system prune -a » pour tout purger et repartir de 0.

Edit : autant pour moi, l’information sur les ports disparait au bout d’un moment … la solution marche temporairement. Est ce que cette histoire de Capcha en est la cause ? Je reste bloqué à
« ConnectionRefusedError: [Errno 111] Connection refused »

Serait il possible d’expliquer plus en détail comment vous avez résolu ça avec Postman ?

1 « J'aime »

Pour ma part j’ai pas rencontré de problème de captcha mais si jamais tu as des soucis d’authentification, commence par retirer le 2FA et tente de t’authentifier sur le site https://mysecurity.eufylife.com/ depuis une machine qui est sur le même réseau que ton docker ; peut être que tu arrivera a avoir le captcha sur ton pc et que ça évitera de faire des manips plus compliqué pour le taper.

Merci d’avoir pris le temps de me répondre. Je n’ai pas activé le 2FA, et pas de capcha en me connectant sur le webservice. Même avec un VPN pas de capcha.

par contre en essayant sur mobile en Webservice et Non l’app, il m’indique que mon compte s’est connecté sur un autre device… Et cela en boucle avant d’avoir une erreur « 423 ».

J’ai également des logs d’erreurs sur mon Docker :

2022-05-18T20:34:15.357820802Z
2022-05-18T20:34:15.357952134Z
2022-05-18T20:34:15.357980671Z #
2022-05-18T20:34:15.358003652Z # Fatal error in , line 0
2022-05-18T20:34:15.358031022Z # unreachable code
2022-05-18T20:34:15.358053855Z #
2022-05-18T20:34:15.358075096Z #
2022-05-18T20:34:15.358096836Z #
2022-05-18T20:34:15.358119095Z #FailureMessage Object: 0xbefc857c
2022-05-18T20:34:15.390719220Z Trace/breakpoint trap (core dumped)

peut être une piste ?

Edit : Je me suis connecté via un autre compte car il me semblait avoir lu qu’il ne fallait pas se logger avec son compte principal dans le thread de Benoit_50, mais toujours la même erreur.

Edit 2 : A force j’ai eu le fameux Capcha sur le WebService ! Mais toujours impossible de me connecter Grrrr…

Bonjour, Idem @Elcho, j’ai une erreur : ConnectionRefusedError: [Errno 111] Connection refused

Pas de double authentification. et j’utilise un autre compte créé pour l’occasion.

Avez-vous une idée ?

Merci.

Hello @tomtom1983_63 ,

ton docker est sous jeedom également ? Tu as les mêmes logs d’erreurs que moi ?

Salut @Elcho, oui docker sous Jeedom. Je cherche à pouvoir gérer l’état de mes cameras Eufy en fonction de ma présence déjà prise en charge par Jeedom.
J’avais essayé une autre proposition via scripts python mais ça ne fonctionne pas non plus de mon côté (Caméras de sécurité type Arlo : Eufy).
Je n’ai jamais utilisé les docker auparavant.

OK, on est dans exactement dans la même situation. De mon côté j’essaye de récupérer le stream sur Jeedom, même si il semble que ce ne soit pas forcément utilisable dès à présent. J’utilise du docker sur Synology, mais je n’avais jamais réalisé sur Jeedom. On va continuer à chercher :slight_smile:

Si y’en a qui veulent que je jette un œil a distance pour les dépanner, envoyez moi un MP pour qu’on voit comment on peut faire.

Salut à tous. Merci pour ce fil super intéressant. Je viens en effet d’acquérir 2 Eufycam C Pro et impossible des les intégrer à Jeedom. L’autre méthode des scripts ne fonctionne pas et en ce qui concerne le docker, j’ai un message d’erreur dans les logs que voici :

2022-06-08T13:35:38.469783327Z
2022-06-08T13:35:38.469956138Z
2022-06-08T13:35:38.469982415Z #
2022-06-08T13:35:38.470005414Z # Fatal error in , line 0
2022-06-08T13:35:38.470026562Z # unreachable code
2022-06-08T13:35:38.470048691Z #
2022-06-08T13:35:38.470068672Z #
2022-06-08T13:35:38.470088486Z #
2022-06-08T13:35:38.470109875Z #FailureMessage Object: 0xbe94257c
2022-06-08T13:35:38.504568615Z Trace/breakpoint trap (core dumped)

Mais j’ai l’impression que mon docker est bien démarré. En suivant la procédure, je tombe sur le même message que d’autres : ConnectionRefusedError: [Errno 111] Connection refused

Si on peut m’aider SVP, à moins que cette solution ne soit plus fonctionnelle pour le moment ?

Merci.

Chez moi c’est toujours fonctionnel et je viens de le relancer pour vérifier qu’il n’y avait pas de problème avec des modifications récentes et je confirme que ça tourne toujours correctement :

Mais a priori vous avez tous la meme erreur, je vais essayer de voir d’ou vient le probleme avec @Elcho et je vous ferais un retour.

1 « J'aime »

Merci. Ça me rassure que ça fonctionne au moins chez toi. On va arriver à le faire tourner chez nous, il n’y a pas de raisons ! (même si les lois de l’informatique sont parfois impénétrables …).
Du coup, ça serait pas un problème de docker à la base, vu les logs que l’on a ?

Docker n’est pas en cause, c’est la bibliothèque dans le container qui renvoi « Connection refused ». J’en dirais plus des que j’en saurais un peu plus.

Si certains sont intéressés, le problème de @Elcho venait du fait que le container n’avait pas suffisamment de privilèges pour s’exécuter. C’est étroitement lié a raspbian et a l’utilisation de sudo du coup. Donc ceux qui utilisent des RPI avec Raspbian vous pouvez être concerné. Il faut ajouter l’argument « –privileged » dans la commande de connexion. Je le rajoute dans le tuto.

Résultat : -d --privileged --name Eufy-WS -e USERNAME=votreadresseemaileufy -e PASSWORD=votremotdepasseeufy -e COUNTRY=FR -e LANGUAGE=fr -p 3000:3000 bropat/eufy-security-ws

2 « J'aime »

Un GRAND merci ! Ça marche impec ! Si vous faites d’autres découvertes pour gérer ces caméras, n’hésitez pas à partager.

Merci à la communauté.

2 « J'aime »

A priori tout est faisable avec cette bibliothèque, la seule limite reste les besoins qu’on a :slight_smile:

1 « J'aime »

J’en profite pour ceux qui, comme moi, on un peu galéré avec le plugin Script. Pensez juste à bien nommer vos script avec l’extension .PY (en majuscules), sinon ça ne fonctionnera pas.

1 « J'aime »

Hello, merci à mcki2ler pour ton temps et la solution côté docker.

Et merci @Tiguy je suis en plein en train de galérer sur Script :slight_smile: Je vais tester car effectivement je l’ai sûrement mis en minuscule.

Mon objectif court terme c’est de récupérer le livestream sur une action manuelle sur Jeedom via RTSP, et de le couper après xx minutes afin de ne pas trop flinguer la batterie. Je ne sais pas si ça en inspire certains ?

Edit :
du coup j’ai créé 2 fichiers via putty dans le répertoire /var/www/html/data

Un pour lancer le stream cf ce que tu avais indiqué plus haut mcki2ler :

{
    "command": "device.start_rtsp_livestream",
    "serialNumber": "MonSerialNumber"
}

et un autre pour le stopper :

{
    "command": "device.stop_rtsp_livestream",
    "serialNumber": "MonSerialNumber"
}

et j’ai 0 message derrière. J’ai loupé une partie du tuto ? à un moment il était fait mention de « set_api_schema » ?

Bref j’avance aussi petit à petit :wink:

Bonne soirée à tous,

Salut,
Cela fait un moment que je voulais regarder pour manipuler mes périphériques eufy (caméras de différents modèles + doorbell).
Je penses que je vais commencer à regarder pour développer un plugin utilisant ce container.
Ne vous enflamez pas je n’ai pas beaucoup de temps de libre donc dans un premier temps je vais faire en local les fonctionnalités dont j’ai besoin :smiley: sans script de déploiement.

Je vais partir à priori sur un daemon en .net 6 étant donné que je suis dev C# :wink:

Pour le moment tout passe bien en postman et j’ai déjà une partie du code C# qui me permet de faire ce dont j’ai besoin.
Le plus long pour moi va clairement être l’intégration dans jeedom car PHP n’est pas un langage que j’affectionne particulièrement (même si j’ai déjà des plugins persos pour notamment récupérer en quasi temps réel les infos de ma passerelle envoy ce que ne permet pas de faire les plugins présent actuellement sur le market :D)

Je vous tiendrais au courant de mon avancé si je trouve le temps d’avancer dessus lol

Hello,

ça n’avance pas vraiment mon histoire pour récupérer le flux en direct via rtsp sur la base d’une action manuelle, + désactivation au bout de x minutes via scenario.

@mcki2ler si tu as quelques pistes sur l’utilisation des scripts pour remplir ce besoin comme on l’avait évoqué, je suis preneur :wink:

Merci !

et @a.berton welcome sur ce threat :slight_smile:

Salut @Elcho
Oui j’arrive à faire ça sans soucis via postman.
Je ne l’ai pas fait par script mais ça fonctionne bien sur une de mes caméras qui fonctionne sur batterie.
La première chose est d’activer la propriété rtsp sur ta caméra. Cette commande est à faire une seule fois. Tu peux vérifier en faisant un get property de ta caméra qu’il est bien à True.

Attention pour une raison que j’ignore au début le json m’affichait « True » et non pas True.
Le fait que ce soit une string j’avais systématiquement une erreur renvoyée lorsque je faisais mon start_rtsp_livestream.

{
    "command": "device.set_property",
    "serialNumber": "",
    "name": "rtspStream",
    "value": "True"
}

Ensuite tu start le flux live RTSP. Attention il existe deux commandes bien différente. Une te renois un flux RTPS et l’autre active le flux live RTSP de ta caméra (je me suis fait avoir au début et ça ne fonctionnait pas).

Donc tu lance cette commande:

{
    "command": "device.start_rtsp_livestream",
    "serialNumber": ""
}

Ensuite si tu ne le connais pas tu peux récupérer l’url de ton flux live via cette commande:

{
    "command": "device.get_properties",
    "serialNumber": ""
}

et tu utilise le champ: rtspStreamUrl

Si tu ouvre un flux réseau dans VLC avec cette url aura bien ta vidéo (ou via le plugin caméra de jeedom c’est ce que j’utilise.

Bien penser à faire la commande de stop après quelques secondes/minutes pour ne pas vider ta batterie :wink:

{
    "command": "device.stop_rtsp_livestream",
    "serialNumber": ""
}

Finalement pour le plugin j’ai bossé un peu dessus ce soir et j’avance plutôt bien. J’ai finalement fait le demon en python histoire de ne pas trop me prendre la tête avec les dépendances. Je commence à remonter doucement des infos sur mon jeedom.

Avec un peu de chance demain j’aurai la création des équipements qui sera fonctionnelle :smiley:

Les trucs les plus interessants à récupérer pour moi ce sont les events qui viennent de ma sonnette et de mes caméras. Je vais enfin pour faire sonner mes googles home quand quelqu’un sonne. J’avais acheté un echo juste pour ça… (la homebase est à l’exterieure à mi distance car le portail est à plus de 60m de la maison)…