Intégration caméras Arlo dans le plugin Jeemate

Hello @Mips, @scalz

J’ouvre ce sujet pour l’intégration du #plugin-arlo dans le #plugin-jeemate
Je vais dans un premier temps tenter une intégration manuelle.
@Mips : en regardant les sujet idem pour le #plugin-jeedomconnect je vois que tu parles d’une URL interne Jeedom pour le flux. Peux-tu me préciser que quelle URL il s’agit (quelle commande) ?

Merci d’avance à tous les 2

Xav

Salut,

Non pour le flux vidéo il n’y a pas d’url possible, en tout cas pas pour le moment.
C’est un peu complex chez Arlo pour ca: le flux n’est pas dispo en permanence; il faut être authentifié, faire un appel pour ouvrir le flux, on recoit des tokens en retour et il faut ensuite utiliser le flux dans les 10s-30s qui suivent sinon le flux est coupé de nouveau donc c’est un scénario vraiment compliqué à mettre en place de façon générique dans une app.

Pour démarrer l’enregistrement et prendre des captures je suppose que ca ne pose pas de problème, il suffit d’utiliser les bonnes commandes qui en principe on déjà le bon type générique.

Pour voir la dernière capture (telle que dispo sur jeedom), il faudrait savoir comment l’app jeemate utilise le lien. Est-ce que l’app:

  • appelle l’url en direct et que l’url est supposée être celle de la caméra accessible d’internet également?
  • appelle jeedom (le plugin ou le core sur /core/php/downloadFile.php?) en tant que « proxy » pour récupérer la capture?

selon le cas la commande à utiliser pourrait changer ou je devrai p-e en rajouter une

ok compris. Mais du coup, tu as contourné comment pour jeedomconnect ?
Je vais voir pour que le flux initial pointe sur la dernière capture mais comment faire pour lancer un stream du coup ?

Je n’ai pas contourné, il n’y a pas le flux vidéo dans jeedomconnect non plus, que les captures (comme indiqué dans la doc :wink:)
l’app attend aussi une url directe vers un flux qui est directement utilisable mais cela n’existe pas chez arlo, l’url est toujours dynamique avec authentification complex à mettre en place.

Dac !
on va donc essayer de faire comme pour jeedomconnect dans un premier temps :slight_smile:
Mes premiers tests avec les différentes URL ne sont pas concluants. @scalz, tu peux nous aiguiller sur le fonctionnement de ton « URL snapshot » ? Qu’attends tu en retour ?

PS : il faudrait qu’on creuse la partie « Home » de Apple qui permet un stream en direct. Ca pourrait peut-être nous aiguiller pour la suite et le stream :wink:
Si @nebz peut nous aider :stuck_out_tongue:

Apple et Google ont accès à une api plus « adaptée » dirons-nous qui permet une intégration bien plus propre et directe mais cette api n’est donc pas ouverte.

2 « J'aime »

Hello,

De ce que j’ai vu, Arlo fonctionne avec un trigger, qui lance le flux temporairement. Il y a (si je me rappelle bien) un plugin homebridge-arlo qui fait ça…

Mais je me trompe peut être…

@scalz petit up merci :wink:

salut,
dsl pour le délai de la réponse :sweat_smile:

en effet, pour le plugin camera officiel, je récupère le snapshot de la manière suivante:
plugins/camera/core/php/snapshot.php?id=ID&apikey=APIKEY

en même temps si j’écris mal ton pseudo, tu va avoir du mal à être averti :smiley:

Merci @Mips pour la correction ! Du coup, ca va nécessiter une adaptation du plugin Arlo. A la rigueur, il faudrait se mettre d’accord pour que la méthodologie soit la même pour JeeMate et JeedomConnect non ?

Pour le coup je vais rien pouvoir adapter si jeemate utilise un fichier du plugin camera, cela ne fonctionnera pas pour d’autres plugins:

@scalz, est-ce que pour vous ca serait une option d’utiliser une fonction du core?:

/core/php/downloadFile.php?apikey=[user_apikey|core_apikey]&pathfile=[path_to_file]

Oui oui :wink: je voulais dire d’adapter cette url pour celle de JeeMate

Perso, du moment qu’il y a moyen de récup le snapshot dans le core ou un plugin (pas obligé de passer par le plugin caméra, c’était pour l’exemple), ensuite je me débrouille donc vous prenez pas trop la tête :slight_smile:

Je pourrais tout à fait faire comme je fais avec d’autres plugins, c’est à dire faire une intégration auto du plugin. Car finalement, ce que je fais avec les intégrations autos, ce sont les widgets pour vos plugins dans JeeMate sans avoir à configurer les widgets à la main…

Si l’url du snapshot existe déjà dans le plugin Arlo, alors vous n’avez rien à faire de plus, et je peux voir avec l’un de vous en MP pour que j’effectue l’intégration de ce plugin.

Quand j’aurai fini mes chantiers en cours, je regarderai pour essayer de choper le live Arlo si possible

Vois avec @Xav-74 pour les tests alors puisque c’est l’auteur de la demande, moi je peux évidement donner les détails « techniques » nécessaires.

Dans le plugin il y a différent type d’équipements, dans la configuration de l’équipement la clé deviceType permet de déterminer le type et ici c’est le deviceType camera qui intéresse.
Sur les équipements camera il y a deux commandes qui peuvent être intéressantes pour récupérer la dernière capture:

  • logicalId: LastImage qui retourne ce format: /core/php/downloadFile.php?pathfile=plugins/arlo/data/records/xxx.jpg; il faut donc ajouter l’apikey de l’utilisateur
  • logicalId: LastLocalImageURL qui retourne plus ou moins la même chose mais avec l’url interne et l’apikey du core déjà remplie: http://xxxxxx/core/php/downloadFile.php?apikey=xxxxxxx&pathfile=plugins/arlo/data/records/5xxxxxxxxxxxxx2997.jpg;
    cette commande a le generic_type CAMERA_URL (p-e à tord parce que le plugin caméra utiliserait ce type générique pour l’url du flux? je ne sais pas car je n’ai pas le plugin caméra)

les autres équipements / commandes (y compris pour les caméras) ont les generic_type configurés comme il faut à priori, si utile je peux extraire la liste des commande/generic_type utilisés.

Pour le live cela ne fonctionnera pas sans des modifs dans le plugin et en gros le principe devra être:

  • exécuter une commande du plugin pour demander l’ouverture du stream; il se chargera de faire les appels nécessaire chez Arlo
  • cela va générer une url (qui pointera sur aws) d’un flux rtsp qui pourrait être mis à dispo dans une commande info
  • dans les 10s il faut lire le flux sinon il se coupe.

Donc c’est vraiment spécifique à la techno; my 2 cents, pas sur que ca apporte grand chose par rapport à l’app Arlo officielle que l’on a de toute façon installée sur notre mobile également :wink:

Avec plaisir pour les tests @scalz
Dis moi quand tu as de la dispo.

Xav

Merci pour les infos c’est ce dont j’avais besoin. A priori tu n’as rien à changer.

Concernant le live, ok on verra si c’est possible.
One app to rule them all, c’est un des concepts que j’essaie d’appliquer dans JeeMate, avoir le moins possible à switcher entre les apps, dans la mesure du possible… :slight_smile:

1 « J'aime »

pas de souci je te redis ça dans la semaine ça devrait etre faisable

2 « J'aime »

Intégration #plugin-arlo ok avec #plugin-jeemate :stuck_out_tongue_winking_eye:
Dispo dans la prochaine bêta !
Merci @scalz

5 « J'aime »