You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2019-05-23 09:25:44

romulf
Member
From: Rennes
Registered: 2007-04-26
Posts: 4

plugin "champs supplementaires" et API

Bonjour tout le monde,
Nous utilisons depuis quelques jours le plugin "champs supplémentaires" avec GLPI et je cherche a modifier un script powershell  d'interrogation de machine pour qu'il récupère aussi les nouveaux champs.
mais je n'ai pas trouvé la bonne url à utiliser sad

Est-ce que quelqu'un connait la syntaxe de l'appel pour ce plugin?


pour info:
  GLPI 9.4.2 +  FusionInventory    9.3
  plugin Champs supplémentaires    1.8.2

Offline

#2 2019-06-05 16:47:33

romulf
Member
From: Rennes
Registered: 2007-04-26
Posts: 4

Re: plugin "champs supplementaires" et API

personne n'a de solution..
Pour l’instant, j'arrive a trouver la liste des champs supplémentaire avec la requête suivante:

Invoke-RestMethod "http://glpi/apirest.php//pluginFieldsContainer/"  -Method Get -Headers $HeadersRequest 

mais comment récupérer  les valeurs des champs pour un ordinateur donné ?

Offline

#3 2019-07-03 16:26:09

SilentBob999
Member
Registered: 2019-05-25
Posts: 12

Re: plugin "champs supplementaires" et API

romulf wrote:

personne n'a de solution..
Pour l’instant, j'arrive a trouver la liste des champs supplémentaire avec la requête suivante:

Invoke-RestMethod "http://glpi/apirest.php//pluginFieldsContainer/"  -Method Get -Headers $HeadersRequest 

mais comment récupérer  les valeurs des champs pour un ordinateur donné ?

Bonjour,
Ta commande viens de me faire réalisé une méthode beaucoup plus simple pour trouver la bonne syntax wink  merci.

Basé sur ta commande précédente, si tes champs pour « itemtypes=Computer » sont dans un bloc nommé « ordinateur » et que tu veux récupérer les éléments du « Computer » id 8. Tu peux faire :

/computer/8/PluginFieldsComputerordinateur

La majuscule de l’itemtypes est importante, et le nom est en miniuscule.  PluginFieldsItemtypesblocname

Via code ;  Si tu veux récupérer les champs supplémentaires sur un objet « computer », tu peux faire un « /listSearchOptions/computer/ ».
Par exemple, si tu utilises le module powershell de Jean-Christophe(https://forum.glpi-project.org/viewtopic.php?id=169938) tu peux utiliser la commande si dessous pour voir les champs additionnels :

Get-GlpiSearchOptions -ItemType computer -Creds $CredGlpi | Where-Object table -Like "*plugin_fields*"

Ensuite tu peux faire quelques trucs :
-    Avec les id récupéré, tu peux faire un « forcedisplay » lors de la recherche d’un item.
-    Tu peux regarder les uid et utiliser le nom central comme un sous-item de Computer. Ex :
    o    Uid =  Computer.PluginFieldsComputerordinateur.hostnamefield
    o    Pour récupérer les champs supplémentaires du Computer ID 8 :
            « /computer/8/PluginFieldsComputerordinateur »

Last edited by SilentBob999 (2019-07-03 16:28:15)

Offline

#4 2020-04-20 18:13:44

romulf
Member
From: Rennes
Registered: 2007-04-26
Posts: 4

Re: plugin "champs supplementaires" et API

merci  SilentBob999
c'est bien ça!
il faut surtout faire attention au majuscule

Offline

#5 2020-07-17 13:09:22

cyberdam
Member
Registered: 2008-01-16
Posts: 50

Re: plugin "champs supplementaires" et API

Bonjour

J'essaye d'utiliser le script powershell pour récupérer des infos venant des champs supplémentaires, mais je n'y arrive pas.
Quand je récupère la liste avec listSearchOptions/computer
J'obtiens :
  "5197": {
    "name": "FusInv - Dernier contact",
    "table": "glpi_plugin_fusioninventory_agents",
    "field": "last_contact",
    "datatype": "",
    "nosearch": false,
    "nodisplay": false,
    "available_searchtypes": ["contains", "notcontains"],
    "uid": "Computer.PluginFusioninventoryAgent.last_contact"
  },"76665": {
    "name": "wsus - Plage Horaire MAJ WSUS",
    "table": "glpi_plugin_fields_plagehorairemajwsusfielddropdowns",
    "field": "completename",
    "datatype": "dropdown",
    "nosearch": false,
    "nodisplay": false,
    "available_searchtypes": ["contains", "notcontains", "equals", "notequals", "under", "notunder"],
    "uid": "Computer.UNKNOWN.PluginFieldsPlagehorairemajwsusfieldDropdown.completename"
  }

Et ensuite pour avoir les bonnes info sur un ordinateur je devrais faire :
Get-GlpiSubItems -ItemType computer -Creds $GlpiCreds -ID 5634
et PluginFieldsPlagehorairemajwsusfieldDropdown mais ca ne fonctionne pas, il me retourne un false
Or quand je mets ceci : PluginFusioninventoryAgent ca fonctionne bien il me retourne bien les infos mais de fusioninventory (forcément)

Si je me trompe pas, je pense qu'il y a un soucis avec le UNKNOWN.PluginFieldsPlagehorairemajwsusfieldDropdown.completename"

Car l'idée, c'est de récupérer un champs dropdown de plage horaire style : 04:00 - 06:00 afin de lancer une tache de mise à jours windows update.
Merci

Cordialement

Offline

Board footer

Powered by FluxBB