Problème Localisation ios cloud

Salut,

Personellement j’ai l’erreur suivante après l’exécution du script :

Setup Time Zone
Py iCloud Services
Two-factor authentication required. Your trusted devices are:
  0: SMS to *******99
Which device would you like to use? [0]: 0
Please enter validation code: ******
Failed to verify verification code
Traceback (most recent call last):
  File "/home/pyicloud/.local/bin/tstpyicloud.py", line 37, in <module>
    sys.exit(1)
NameError: name 'sys' is not defined

J’ai bien vérifié et essayé plusieurs fois, pas d’erreur au moment de rentrer le code.

J’ai installé click et lancé le script en Python3 sur les conseils de @Mips :

python3 /home/pyicloud/.local/bin/tstpyicloud.py

Niveau config, je suis sur une VM Debian 10 créé pour ce test sous Proxmox.
Pas de connexion https.

Si quelqu’un a une idée…

Merci.

ca me l’a fait aussi la 1ere fois j’ai recommencé et plus de souci

Effectivement, en insistant ça passe, merci.
Autre point étonnant, je reçois un code sur mon iPhone et un code différent par SMS. :man_shrugging:t2:

C’est le code sms qui fonctionne normalement

Dernière précision, si vous redémarrez la machine, au prochain lancement du script, re sms pour ré entrer le code avant de pouvoir avoir l’info de la position

1 « J'aime »

Salut,

Je voulais pouvoir faire varier la fréquence d’interrogation depuis Jeedom en fonction de l’horaire.

Si ça peut éviter à quelqu’un (comme moi :wink:) de chercher comment faire, je poste la solution que j’ai trouvée.

J’utilise pour cela le plugin SSHcommander, j’ai créé un équipement qui pointe vers la VM qui fait tourner pyicloud (ça pourrait-être également Jeedom) sur lequel j’ai créé des commandes « Cron 01 », « Cron 60 »…

J’utilise la commande suivante pour ajouter un cron à la crontab (cron 60 pour cet exemple) :

(crontab -u [user] -l ; echo "0 * * * * python3 /home/[user]/.local/bin/tstpyicloud.py") | crontab -u [user] -

Et celle-ci pour supprimer le cron de cet équipement de la crontab :

crontab -u [user] -l | grep -v 'python3 /home/[user]/.local/bin/tstpyicloud.py'  | crontab -u [user] -

Bien évidemment [user] est à remplacer par le user de la machine qui fait tourner pyicloud et pour rester dans l’exemple de @Dartagnan j’ai conservé tstpyicloud.py comme nom de fichier à lancer.

@+.

Pour ceux qui veulent compléter le code python et obtenir la batterie, faire sonner vous trouverez sur le site suivant toutes les exemples de code :wink:

Genre pour avoir la batterie, ajouté cela après le print location

iphone_status = api.devices[0].status()
battery = str(int(float(iphone_status['batteryLevel']) * 100))
print(battery+"%")

Pensé a changer le api.devices[0] le 0 par l’id de votre equipement
vous pouvez ajouter print(iphone_status) si vous voulez sinon vous pouvez enlever cette ligne iphone_status= …

1 « J'aime »

J’ai pas encore testé mais je me demandais comment remontait l’info dans Jeedom.
J’utilise le plugin Géoloc. Va t’il ajouter une ligne info automatiquement où est-ce qu’il y a une manip à faire ?

Merci.

Ben da.s le script porpose y a un appel vers jeedom

Je comprends bien qu’en envoyant des coordonnées géographiques au plugin Géoloc il les affiche sur une carte mais que fait-il avec le niveau de batterie ? Comment récupérer cette valeur envoyée par pyicloud pour l’exploiter dans Jeedom ?
Merci.

Dans le script de base on ne fait qu’envoyer la position…

Si tu veux le niveau de batterie il faut ajouter un appel avec une URL jeedom comme pour la position mais sur li fo batterie

Merci à tous pour vos commentaires et tuto !! Mais étant encore assez novice dans Jeedom, est ce que quelqu’un peux m’indiquer comment excuter une commande sur debian :thinking: :lying_face:

As-tu un Debian en ligne de code (accès via ssh en utilisant un terminal) ou un Debian avec une interface graphique (un bureau + écran) ?

Je sais pas si cela réponds à ta question :upside_down_face:, mais je suis en VM Jeedom sur Freebox Delta.

Lo,

Il te suffit d’ouvrir un terminal de type putty et d’indiquer l’adresse IP de ta VM port 22,
Une fenêtre s’ouvre, tu devras te loger avec l’identifiant et le mot de passe renseigné lors de l’installation de ta VM,
Il te restera à coller tes lignes …,

Au plaisir, bonne journée,

1 « J'aime »

Bonjour,

oui certain

Bonjour, des nouvelles de la résolution tu problème sur le plugin ?

Bonjour, la réponse est dans ce sujet. 36 messages plus haut.

2 « J'aime »

Toujours aucune nouvelles …

Bonjour à tous
question bête, comment trouver l’id de l’équipement?
Merci