StateManagementScriptableApi - Global
A StateManagementScriptableApi fornece um conjunto de métodos para manipular estados operacionais de IC e aplicar ações de IC.
Os métodos StateManagementScriptableApi aderem às restrições e permissões especificadas por ações de IC não permitidas, ações de IC compatíveis e transições operacionais não permitidas. Se um método tentar executar uma operação restrita, a operação será bloqueada, um erro será registrado e uma tarefa será criada, se apropriado.
Os métodos StateManagementScriptableApi são métodos estáticos. Você acessa os métodos usando o objeto global SNC.StateManagementScriptableApi.
StateManagementScriptableApi - addBulkCIAction(cadeia de caracteres requestorId, cadeia de caracteres sysIdList, cadeia de caracteres ciActionName, cadeia de caracteres ciActionListOld, cadeia de caracteres leasingTime)
Adicione uma ação de IC a uma lista de ICs.
| Nome | Tipo | Descrição |
|---|---|---|
| ID do solicitante | Cadeia de caracteres | Um sys_id de um contexto de fluxo de trabalho ou o GUID retornado do método registerOperator(). |
| sysIdList | Cadeia de caracteres | Uma lista separada por vírgulas de sys_ids de IC. |
| ciActionName | Cadeia de caracteres | O nome da ação de IC. |
| ciActionListOld | Cadeia de caracteres | (Opcional) Uma lista separada por vírgulas de ações de IC antigas em que todos os ICs devem estar. |
| leasingTime | Cadeia de caracteres | (Opcional) Duração de tempo pela qual o leasing é válido para a Ação de IC especificada. No formato HH:MM:SS. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Uma cadeia de caracteres no formato JSON com pares de nome-valor para
|
StateManagementScriptableApi - estenderCIActionLease(cadeia de caracteres requestorId, cadeia de caracteres ciSysId, cadeia de caracteres ciActionName, cadeia de caracteres leasingTime)
Estenda o tempo de leasing da ação de IC para o usuário registrado. Se o leasing anterior tiver expirado, o novo tempo de leasing começará agora.
| Nome | Tipo | Descrição |
|---|---|---|
| ID do solicitante | Cadeia de caracteres | Um sys_id de um contexto de fluxo de trabalho ou o GUID retornado do método registerOperator(). |
| ciSysId | Cadeia de caracteres | O sys_id do IC. |
| ciActionName | Cadeia de caracteres | O nome da ação de IC. |
| leasingTime | Cadeia de caracteres | Duração de tempo pela qual o leasing é válido para a Ação de IC especificada. No formato HH:MM:SS. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Uma cadeia de caracteres no formato JSON com pares de nome-valor para
|
StateManagementScriptableApi - getCIActions(cadeia de caracteres ciSysId)
Retorna uma lista de ações de IC ativas para o IC especificado.
| Nome | Tipo | Descrição |
|---|---|---|
| ciSysId | Cadeia de caracteres | Sys_id do IC. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Uma cadeia de caracteres no formato JSON com pares de nome-valor. Valores possíveis:
|
O exemplo a seguir mostra como obter ações ativas para uma lista de itens de configuração.
// Store sys_ids of configuration items for which to get data
var CIArray = ["a9c0c8d2c6112276018f7705562f9cb0","0c43bc4fc61122750182c132411702f2","46bbf419a9fe1981009802288c1eb79d","46a4381ca9fe1981005c3e99af3cd164","0c43bcbdc61122750182c132e9b6565d"];
var output = '';
// looping above array to fetch each sys_id and passing to method
for(var i=0; i < CIArray.length; i++) {
// passing sys_id of CI stored in array to method
output = SNC.StateManagementScriptableApi.getCIActions(CIArray[i]);
// print a JSON formatted string with name-value pairs
gs.print(output);
}
Saída:
{"ciActions":["no_active_action"],"result":true}
{"ciActions":["no_active_action"],"result":true}
{"ciActions":["no_active_action"],"result":true}
{"ciActions":["no_active_action"],"result":true}
{"ciActions":["no_active_action"],"result":true}
StateManagementScriptableApi - getOperationalState(cadeia de caracteres ciSysId)
Retorna o estado operacional do IC.
| Nome | Tipo | Descrição |
|---|---|---|
| ciSysId | Cadeia de caracteres | Sys_id do IC. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Uma cadeia de caracteres no formato JSON com pares de nome-valor. Valores possíveis:
|
O exemplo a seguir mostra como obter os estados operacionais de uma lista de itens de configuração especificados.
// Store sys_ids of configuration items for which to get the operational state.
var CIArray = ["0c43bc4fc61122750182c132411702f2","46bbf419a9fe1981009802288c1eb79d","46a4381ca9fe1981005c3e99af3cd164","0c43bcbdc61122750182c132e9b6565d","a9c0c8d2c6112276018f7705562f9cb0"];
var output = '';
// Loop the array to fetch each sys_id and pass to the method.
for(var i=0;i<CIArray.length;i++) {
// Pass sys_id of CI stored in array to the method
output = SNC.StateManagementScriptableApi.getOperationalState(CIArray[i]);
// prints a JSON formatted string with name-value pairs
gs.print(output);
}
Saída:
*** Script: {"operationalState":"Operational","result":true}
*** Script: {"operationalState":"Operational","result":true}
*** Script: {"operationalState":"Operational","result":true}
*** Script: {"operationalState":"Operational","result":true}
ci_state_management : INVALID_SYS_ID: Invalid sys_id [a9c0c8d2c6112276018f7705562f9cb0]: no thrown error
*** Script: {"errors":[{"error":"INVALID_SYS_ID","message":"Invalid sys_id [a9c0c8d2c6112276018f7705562f9cb0]"}],"operationalState":"unknown","result":false}
StateManagementScriptableApi - isCompatibleCIAction(cadeia de caracteres actionName, cadeia de caracteres otherActionName)
Determina se as duas ações especificadas são compatíveis.
| Nome | Tipo | Descrição |
|---|---|---|
| actionName | Cadeia de caracteres | Um nome de ação de IC |
| outroNomeAção | Cadeia de caracteres | Um nome de ação de IC |
| Tipo | Descrição |
|---|---|
| Booliano | Retorna verdadeiro se as duas ações de IC especificadas forem compatíveis. |
StateManagementScriptableApi - isLeaseExpired(cadeia de caracteres requestorId, cadeia de caracteres ciSysId, cadeia de caracteres ciActionName)
Determina se o leasing expirou para o solicitante de uma Ação de IC especificada.
| Nome | Tipo | Descrição |
|---|---|---|
| ID do solicitante | Cadeia de caracteres | Um sys_id de um contexto de fluxo de trabalho ou o GUID retornado do método registerOperator(). |
| ciSysId | Cadeia de caracteres | O sys_id do IC. |
| ciActionName | Cadeia de caracteres | Nome da ação de IC. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Uma cadeia de caracteres no formato JSON com pares de nome-valor para
|
StateManagementScriptableApi - isNotAllowedAction(cadeia de caracteres ciType, cadeia de caracteres opsLabel, cadeia de caracteres actionName)
Para um tipo de IC, determine se uma ação de IC não é permitida para um estado operacional.
| Nome | Tipo | Descrição |
|---|---|---|
| ciType | Cadeia de caracteres | O tipo de IC |
| opsLabel | Cadeia de caracteres | O estado operacional |
| actionName | Cadeia de caracteres | O nome da ação de IC |
| Tipo | Descrição |
|---|---|
| Booliano | Retorna verdadeiro se a ação não for permitida no tipo de IC especificado no estado operacional especificado. |
StateManagementScriptableApi - isNotAllowedOpsTransition(cadeia de caracteres ciType, cadeia de caracteres opsLabel, cadeia de caracterestransitionOpsLabel)
Para um tipo de IC, determine se uma transição de estado operacional não é permitida.
| Nome | Tipo | Descrição |
|---|---|---|
| ciType | Cadeia de caracteres | O tipo de IC |
| opsLabel | Cadeia de caracteres | O rótulo do estado operacional inicial. |
| TransitionOpsLabel | Cadeia de caracteres | O rótulo do estado operacional final. |
| Tipo | Descrição |
|---|---|
| Booliano | Retorna verdadeiro se a transição do estado operacional especificada não for permitida no tipo de IC especificado. |
StateManagementScriptableApi - isValidRequestor(cadeia de caracteres requestorId)
Determina se o solicitante especificado é um usuário de fluxo de trabalho ativo válido ou um usuário registrado.
| Nome | Tipo | Descrição |
|---|---|---|
| ID do solicitante | Cadeia de caracteres | Sys_id de um contexto de fluxo de trabalho ou o GUID retornado do método registerOperator(). |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Pares de nome-valor no formato JSON. Valores possíveis:
|
Este exemplo mostra como usar o método isValidRequestor() para verificar se um operador é um usuário registrado.
var output = SNC.StateManagementScriptableApi.registerOperator();
var jsonUtil = new JSON();
var result = jsonUtil.decode(output);
var requestorId = result.requestorId; // Fetching requestorId
output = SNC.StateManagementScriptableApi.isValidRequestor(requestorId);
gs.info(output);
Saída:
{"result":true}
StateManagementScriptableApi - registerOperator()
Registra um operador para um usuário sem fluxo de trabalho.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Uma cadeia de caracteres no formato JSON com pares de nome-valor para
|
var output = SNC.StateManagementScriptableApi.registerOperator();
var jsonUntil = new JSON();
var result = jsonUntil.decode(output);
var requestorId = result.requestorId;
StateManagementScriptableApi - removeBulkCIAction(cadeia de caracteres requestorId, cadeia de caracteres sysIdList, cadeia de caracteres ciActionName)
Remove uma ação de IC de uma lista de ICs.
| Nome | Tipo | Descrição |
|---|---|---|
| ID do solicitante | Cadeia de caracteres | Um sys_id de um contexto de fluxo de trabalho ou o GUID retornado do método registerOperator(). |
| sysIdList | Cadeia de caracteres | Uma lista separada por vírgulas de sys_ids de IC |
| ciActionName | Cadeia de caracteres | O nome da ação de IC |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Uma cadeia de caracteres no formato JSON com pares de nome-valor para
|
StateManagementScriptableApi - setBulkCIOperationalState(cadeia de caracteres requestorId, cadeia de caracteres sysIdList, cadeia de caracteres opsLabel, cadeia de caracteres opsStateListOld)
Defina o estado operacional da lista de ICs.
| Nome | Tipo | Descrição |
|---|---|---|
| ID do solicitante | Cadeia de caracteres | Um sys_id de um contexto de fluxo de trabalho ou o GUID retornado do método registerOperator(). |
| sysIdList | Cadeia de caracteres | Uma lista separada por vírgulas de sys_ids de IC. |
| opsLabel | Cadeia de caracteres | Este é o rótulo da cadeia de caracteres de uma opção operating_status. |
| opsStateListOld | Cadeia de caracteres | (Opcional) Uma lista separada por vírgulas de estados de IC antigos em que todos os ICs devem estar. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Uma cadeia de caracteres no formato JSON com pares de nome-valor para
|
var output = SNC.StateManagementScriptableApi.registerOperator();
var jsonUntil = new JSON();
var result = jsonUtil.decode(output);
var requestorId = result.requestorId;
// list of sys_ids to update
var sys_ids;
// Set list of sys_ids's Operational State to 'Repair in Progress'
output = SNC.StateManagementScriptableApi.setBulkCIOperationalState(requestorId, sys_ids,'Repair in Progress');
gs.print(output);
StateManagementScriptableApi - unregisterOperator(cadeia de caracteres requestorId)
Cancela o registro de um operador para usuários sem fluxo de trabalho.
| Nome | Tipo | Descrição |
|---|---|---|
| ID do solicitante | Cadeia de caracteres | Sys_id de um contexto de fluxo de trabalho ou o GUID retornado do método registerOperator(). |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Pares de nome-valor no formato JSON. Valores possíveis:
|
Este exemplo mostra como usar o método unregisterOperator() para cancelar o registro de um usuário registrado.
var output = SNC.StateManagementScriptableApi.registerOperator();
var jsonUtil = new JSON();
var result = jsonUtil.decode(output);
var requestorId = result.requestorId; // Fetching requestorId
output = SNC.StateManagementScriptableApi.unregisterOperator(requestorId);
gs.info(output);
Saída:
{"result":true}