RunPollingCommand
Runs a specified polling command one time. This is useful for initiating a local playbook context before running a polling scheduled task. This automation runs using the default Limited User role, unless you explicitly change the permissions. For more information, see the section about permissions here: - For Cortex XSOAR 6 see https://docs-cortex.paloaltonetworks.com/r/Cortex-XSOAR/6.x/Cortex-XSOAR-Playbook-Design-Guide/Automations - For Cortex XSOAR 8 Cloud see https://docs-cortex.paloaltonetworks.com/r/Cortex-XSOAR/8/Cortex-XSOAR-Cloud-Documentation/Create-a-script - For Cortex XSOAR 8.7 On-prem see https://docs-cortex.paloaltonetworks.com/r/Cortex-XSOAR/8.7/Cortex-XSOAR-On-prem-Documentation/Create-a-script
- Type
- python
- Pack
- CommonScripts
Source
import demistomock as demisto # noqa: F401
from CommonServerPython import * # noqa: F401
def prepare_arg_dict(ids_arg_name, ids, additional_arg_names, additional_arg_values, using_instance=""):
if not isinstance(ids, list):
ids = [ids]
for i, _val in enumerate(ids):
ids[i] = str(ids[i])
args_names = [str(name).strip() for name in argToList(additional_arg_names)]
args_values = [str(value).strip() for value in argToList(additional_arg_values)]
if len(args_names) != len(args_values):
raise ValueError(
"arg names and arg values lists does not match, please check your inputs:\n"
f"arg names ({len(args_names)}): {args_names}\narg values ({len(args_values)}): {args_values}"
)
args = dict(zip(args_names, args_values))
args[ids_arg_name] = ",".join(argToList(ids))
if using_instance:
args["using"] = str(using_instance)
return args
def main(args): # pragma: no cover
try:
encoded_id = args.get("ids")
additional_polling_command_arg_names = args.get("additionalPollingCommandArgNames")
additional_polling_command_arg_values = args.get("additionalPollingCommandArgValues")
using = args.get("using", "")
using_instance = using
args = prepare_arg_dict(
args.get("pollingCommandArgName"),
encoded_id,
additional_polling_command_arg_names,
additional_polling_command_arg_values,
using_instance,
)
demisto.results(demisto.executeCommand(demisto.getArg("pollingCommand"), args))
except Exception as exp:
return_error(f"An error occurred: {exp}", error=exp)
if __name__ in ["__main__", "builtin", "builtins"]:
main(demisto.args())
README
Runs a one time specified polling command. This is useful for initiating a local playbook context before running a polling scheduled task.
Script Data
| Name | Description |
|---|---|
| Script Type | python |
| Tags | - |
| Cortex XSOAR Version | 4.0.0+ |
Inputs
| Argument Name | Description |
|---|---|
| ids | The list of IDs to poll. |
| pollingCommand | The name of the polling command to run. |
| pollingCommandArgName | The name of the argument of the polling command. |
| additionalPollingCommandArgNames | The comma-separated arguments of the polling command. |
| additionalPollingCommandArgValues | The comma-separated arguments values of the polling command. |
Outputs
There are no outputs for this script.