Seite 1 von 1

SetProductProperty in script

Verfasst: 04 Apr 2014, 18:22
von Lai
Hallo,
gibt es eine Möglichkeit die Product Properties in einem script zu ändern?

nachdem diese Frage hier zwar gestllt aber icht beantwortet wurde.
viewtopic.php?f=7&t=4394

stelle ich sie nochmals.

ich möchte im paket myProduct bei der Installation vom client die Property myBoolProperty
unter gewissen umständen auf true setzen lassen.

Ich habe in der Dokumentation zu diesem Thema relativ wenig gefunden
und mir aus dem oben gennanten Beitrag folgenden code zusammengereimt.

wie sollte das wirklich ausschauen?

Code: Alles auswählen

DefStringList $configStates$

set $configStates$ = addtolist($configStates$, "[newmap]")
set $configStates$ = addtolist($configStates$, "type=BoolProductProperty")
set $configStates$ = addtolist($configStates$, "productId=myProduct")
set $configStates$ = addtolist($configStates$, "propertyId=myBoolProperty")
set $configStates$ = addtolist($configStates$, "values= true")
set $configStates$ = addtolist($configStates$, "objectId=%opsiserviceUser%")
          
markErrorNumber
OpsiServiceHashList_configState_updateObjects
if errorsOccuredSinceMark > 0
   isFatalError
endif
     
[OpsiServiceHashList_configState_updateObjects]
"method":   "setProductProperty"
"HashList": "$configStates$"
"params": [
          ]

Re: SetProductProperty in script

Verfasst: 04 Apr 2014, 20:58
von tobias
Hi,

schau mal hier:
wiki/userspace:windows_updates#windows_ ... lternative

Da mache ich genau das.
Zwar zweckentfremde ich die Porperties als Reporting Feld aber das spielt ja keine Rolle.

Re: SetProductProperty in script

Verfasst: 07 Apr 2014, 12:48
von r.witzel

Code: Alles auswählen

opsiservicecall_write_property

Code: Alles auswählen

[opsiservicecall_write_property]
        "method": "setProductProperty"
        "params": [
                                "$ProductId$",
                                "Name der Property",
                                "Wert der Property",
                                "%opsiserviceUser%"
                        ]

Re: SetProductProperty in script

Verfasst: 07 Apr 2014, 15:10
von Lai
Hallo,

danke das wars ich hab das dank der Hilfe von tobias zwar schon herausgefunden
aber das ist jetzt die Quintessenz des Ganzen.

das Problem in meinem Ansatz war das ich OpsiServiceHashList verwendet habe anstatt opsiServiceCall.

falls man mehrere Werte zurückschreiben will:

Code: Alles auswählen

DefVar $ReportProperty$
DefVar $ReportValue$

Code: Alles auswählen

set $ReportProperty$ ="Property1"
set $ReportValue$    ="Value1"
opsiServiceCall_configState_Report

set $ReportProperty$ ="Property2"
set $ReportValue$    ="Value2"
opsiServiceCall_configState_Report

set $ReportProperty$ ="Property3"
set $ReportValue$    ="Value3"
opsiServiceCall_configState_Report

Code: Alles auswählen

[opsiServiceCall_configState_Report]
"method": "setProductProperty"
"params": [
            "$ProductID$",
            "$ReportProperty$",
            "$ReportValue$",
            "%hostid%"
          ]