J’imagine que par « ressourceId » vous parlez de la propriété _id retourné dans les réponses de l’API ? Dans mon cas cela ne correspond pas. Ou alors je me suis peut-être mal exprimé.
Voici un exemple concret de ce que j’obtiens avec un appel à /api/core/io (j’ai extrait les éléments qui m’intéressent) :
Elément correspondant à une commande relai que je sais contrôlée par un Tempo
{
« _id »: 65538,
« name »: « [IPX]Relay cmd 3 »,
« link0 »: 10485764,
« link1 »: 12648450,
« virtual »: false,
« on »: false
}
au moyen de la valeur link0 10485764 je tombe sur l’output de mon tempo
{
« _id »: 65588,
« name »: « [TEMPO N°1]Output »,
« link0 »: 13697024,
« link1 »: 10485764,
« virtual »: false,
« on »: false
}
dont le link0 me permet de trouver le start du tempo
{
« _id »: 65583,
« name »: « [TEMPO N°1]Start »,
« link0 »: 0,
« link1 »: 13697024,
« virtual »: false,
« on »: false
}
Le tempo lui-même à quant à lui l’id 1310720 . Trouvé au moyen de la requête /api/object/timer dont la réponse contient
{
« _id »: 1310720,
« name »: « TEMPO N°1 »,
« errorStatus »: « 0x0000 »,
« func »: « tempo »,
« bSecond »: true,
« bOnOff »: false,
« bSingle »: false,
« ioStart »: « off »,
« ioEnable »: « on »,
« anaCounter1 »: 0,
« anaTime1 »: 5,
« ioOut »: « off »
}
Par contre je n’ai pas trouvé comment mettre en relation cet objet avec les IO identifiés plus haut. Je note que le « name » du start et de l’output ont toujours la même structure et contiennent le nom de l’objet entre [ ]. Je pourrais m’en servir pour vérifier si un objet de type « func »: « tempo » correspond. Il y éventuellement le cas, certes un peu tordu, où plusieurs tempo auraient le même nom qui pourraient poser problème. Même si je ne vois pas l’intérêt d’en avoir deux avec le même nom, c’est techniquement possible.