scriptWait: Get the status of the script
Function Description:
Get the status of the script.
Corresponding JS API:
scriptWait(scriptname)
Whether to support multiple devices:
No
Resource Information:
| Method | GET | 
|---|---|
| URL | .../script/:task_id | 
| Requires authentication? | Yes | 
Method Parameters:
| Parameter | Type | Required | Description | 
|---|---|---|---|
| task_id | Long | Yes | The task ID of the execution script. | 
Response Parameters:
A JSON string representing an array of objects with the following fields:
| Field | Type | Description | 
|---|---|---|
| status | Boolean | Return true for success and null for failure | 
| value | String/Int | 
		String. If the value of status is a null object, an error message or empty string is returned. Int. If the value of status is true, returns the state of the script. 0: Execution script error -1: The script is running -2: The script stops normally -3: The script stopped abnormally -4: Script pause  | 
    
Request Example:
http://localhost:8090/TotalControl/v1/script/1527754185949?token=270eq7lXQK8bXYsJ
Response Example:
If this API executes successfully, it returns:
{
    "status": true,
    "value": -2
}
If the value of HTTP status code is 200, but the value of status is a null object, it returns:
{
    "status": null,
    "value": "<Error message>"
}
Example:
Warm tip:
Get the token needed for Total Control script development,see here.
RingoJS Example:
// Import the packages
var {request} = require("ringo/httpclient");
var base64 = require("ringo/base64");
// The username and password are separated by a single : and sent on the wire base64 encoded
var userpass = base64.encode("sigma:3D391497");
// First step: Get the API token
var gettoken = request({
	method: "GET",
	url: "http://localhost:8090/TotalControl/v1/login",
	headers: {
		"Authorization": userpass
	}
});
var ret_token = JSON.parse(gettoken.content); 
var token = ret_token.value.token; 
print("//The value of token is:" + token);
// Second step: Execute this REST API
var resp = request({
	method: "GET",
	url: "http://localhost:8090/TotalControl/v1/script/1555401269482",
	data: {
		"token": token,
	}
});
var obj = JSON.parse(resp.content); 
ret =obj.status;
if (ret == true) {
	print("//Executed successfully,Return value: \n"+resp.content);	
} else if (ret != true & resp.status == 200){
	print("An error message is returned: "+resp.content);
} else {
	print("This API failed to execute.");
}
The running result of the RingoJS:
If it executes successfully, it will return:
//The value of token is:veLZf8EL7gUoyFOL
//Executed successfully,Return value: 
{"status":true,"value":-2}
Python Example:
#!/user/bin/python
#-*- coding:utf-8 -*-
import base64
import requests
# The username and password are separated by a single : and sent on the wire base64 encoded
user_pass = 'sigma:3D391497'
encodeStr = base64.b64encode(user_pass.encode("UTF-8"))
# First step: Get the API token
LoginUrl = "http://localhost:8090/TotalControl/v1/login"
response = requests.get(LoginUrl, headers={'Authorization':encodeStr})
print("Get the token,Return value: ",response.json())
token = response.json()['value']['token']
print("The value of token is: ",token)
# Second step: Execute this REST API
if token is not None:
    APIUrl = "http://localhost:8090/TotalControl/v1/script/1555401269482"
    data = {
        "token": token
    }
    response = requests.get(url=APIUrl, params=data)
    ret = response.json()['status']
    # Determine if this REST API is executed successfully
    if ret is True:
        print("Executed successfully,Return value: ", response.json())
    elif response.status_code == 200 and ret is not True:
        print("An error message is returned: ",response.json())
    else:
        print("This API failed to execute.")
else:
    print("Failed to get token.")
The running result of the python:
If it executes successfully, it will return:
Get the token,Return value:  {'status': True, 'value': {'token': 'veLZf8EL7gUoyFOL'}}
The value of token is:  veLZf8EL7gUoyFOL
Executed successfully,Return value:  {'status': True, 'value': -2}