Eteindre un PC via JEEDOM avec IOT LINK et JMQTT

Bonjour,
J’avance doucement sur ma config.
Je cherche à éteindre un PC W10 via JEEDOM (je préfère éviter un arrêt brutal avec une prise connectée).
J’ai activé le WOL qui fonctionne, ça fait partie de ma 1ere étape (via NETWORKS).
J’ai ensuite suivi ce tuto : https://youdom.net/controler-son-ses-ordinateurs-avec-jeedom-partie-2-surveiller-gerer-et-eteindre/ (très bien fait au passage).
Je remarque juste de IOT LINK n’est plus suivi maintenant, je ne sais donc pas si c’est toujours d’actualité, dans le doute, je teste quand même.
J’ai installé JMQTT (j’ai déjà MQTT Manager qui a installé MOSQUITO)
J’ai créé un broker sur JMQTT, aucun problème, il est OK
J’ai installé IOT LINK et modifié le fichier de config.
De retour sur JMQTT, je crée un équipement et, comme sur le tuto, je le lie au BROKER, en topic je mets « iotlink/# »
Je sauvegarde et…rien.
Aucune commande n’est créée.
Je suppose donc que le PC ne communique pas avec JEEDOM (qui est sur un PI4).
Si certains ont déjà eu ce souci ou sont en mesure de m’aider.
Sinon, si vous avez une autre solution, pour éteindre le PC (oui, le soir, quand mon fils joue sa vie, il ne se rend pas compte qu’il y a du monde autour de lui donc un petit SHUTDOWN peut rafraichir les idées :rofl:)
Merci et bon dimanche :slightly_smiling_face:

EDIT : J’ai tenté avec le script PHP mais j’ai un souci avec l’identification (j’ai bien mis le nom de l’utilisateur originel) mais le mot de passe, j’ai mis celui du compte microsoft, je ne pense pas que ce soit le bon…)

Bonjour,
si un serveur ssh est installé sur le pc et l’accès en root autorisé, ça devrait etre possible (quitté windows depuis plus de 15 ans donc plus trop à jour de ce que permet le windows actuel, mais faisable sur linux et Mac qui est sous Unix) et le plugin script.

Salut,
A priori, le plugin script peut lancer des commandes PowerShell

A partir de là , faire un script powershell pour allumer eteindre un pc à travers les commandes wake of lan est assez simple.
Si tu veux ,je dois avoir car je m’en sers au taf.

C’est une commande de ce style?
net rpc SHUTDOWN -f -t 1 -I 192.168.1.13 -U USER%PASSWORD

Je l’ai tentée, mais j’ai un souci de connexion (je pense à problème pour retrouver le mot de passe vu qu’on se connecte avec le compte microsoft)

c’est pas du powershell ça
un ex pour démarrer poste

$Mac = "xx-xx-7e-7a-a9-84"
$MacByteArray = $Mac -split "[:-]" | ForEach-Object { [Byte] "0x$_"}
[Byte[]] $MagicPacket = (,0xFF * 6) + ($MacByteArray  * 16)
$UdpClient = New-Object System.Net.Sockets.UdpClient
$UdpClient.Connect(([System.Net.IPAddress]::Broadcast),7)
$UdpClient.Send($MagicPacket,$MagicPacket.Length)
$UdpClient.Close()

pour arreter

$pc = (Get-Content C:\txt\computer.txt)
foreach ($ordi in $pc)
{
Write-Host $ordi
Stop-Computer -Force -ComputerName $ordi
}

a adapter ,car je m’en sert pour éteindre plusieurs ordi via le fichier txt . C’est le nom netbios dans ce cas.
dans ton cas, cela devrait suffire :

$ordi="mon_nom_de_pc"
Write-Host $ordi
Stop-Computer -Force -ComputerName $ordi

avec évidement le wake ok lan activé dans le bios du pc, et sur la carte réseau.

Le « NOM DU PC », c’est le nom qui apparaît sur windows (dans « systeme »)?
J’ai un message d’erreur concernant « Stop-computer » :

Erreur exécution de la commande [Aucun][Eteindre PC Océ][Test] : Erreur sur sudo chmod +x $ordi=« PCPortable » Write-Host 2>/dev/null;$ordi=« PCPortable » Write-Host $ordi Stop-Computer -Force -ComputerName $ordi 2>&1 valeur retournée : 127. Détails : sh: 4: Stop-Computer: not found

je pense pas que ça soit comme ça , il te faut créer un script powershell (extention.ps1) et te servir du plugin script pour le lancer. Commande à trouver , je sais pas trop comme ça, mais ça m’intéresse :slight_smile:

De mon côté ça fonctionne avec IOT Link.

Je ne comprends pas pourquoi les commandes ne remontent pas… Il y a moyen de voir les logs ou des debugs sur l’échange entre jmqtt et IOT ?

Vois tu ton PC avec MQTT Explorer ?

Désolé, stage d’une semaine loin de la maison…
J’ai re-bidouillé un peu et j’obtiens enfin une commande pour le PC de test (commande INFO LWT)
Je crée la commande « éteindre » comme dans le tuto.
Je l’ai sauvegardée puis lancée, une commande INFO s’est automatiquement créée.
J’ai beau lancer la commande éteindre, rien ne se passe…
Ce n’est plus le problème d’origine mais j’avance petit à petit…
Je vais essayer de voir ce qui peut poser problème.

Bonjour

je vois bien mon PC et IOT Link dans MQTT Explorer mais impossible de remonter les commandes dans un objet que j’ai ajouté sur MQTT Manager.
J’ai pris le topic iotlin/# mais rien n’y fait.

Salut
Tu dois faire une erreur mais sans mettre les copies d’écran, difficile de dire où.

Antoine
PS: à la base c’est pour jmqtt ce sujet :wink:

Capture d'écran 2024-03-30 151825

avec les captures d’écrans :

  • de l’objet dans MQTT Manager
  • et ce que voit MQTT Explorer

Et la commande?

aucune ne s’est créée, c’est justement ce qui m’échappe.

et quand j’ajoute le shutdown, sans surprise cela ne marche pas.

Dans le fichier de config IOT Link sur le PC, j’ai mis le login (jeedom) et mot de passe trouvé dans MQTT Manager. Et comme on peut le voir dans MQTT Explorer, j’ai bien l’équipement (avec tout un tas de fonctions si je dépile iotlink).

Mais je n’arrive pas à créer un objet dans Jeedom pour récupérer les infos.il reste désespérément vide.

J’ai trouvé la solution

Dans MQTT Manager, il faut mettre iotlink comme topic et non pas iotlink/#

Bonjour et merci pour les infos.
Je n’ai pas eu l’occasion de m’y replonger pour le moment…
Je viendrai faire un retour dés que j’ai du temps à y consacrer

Salut

Mon tuto iot de l’époque

Ça marche toujours chez moi. Si ça peut aider

Bonjour,
Les liens 1 et 2 ne fonctionnent plus (j’étais déjà allé sur ton sujet il y a quelques temps)