Automatic connection device

Function Description:

Automatic connection device, and return device id.

Corresponding JS API:
Device.connectAll()
Whether to support multiple devices:

Yes

Resource Information:

Method POST
URL .../devices/connections
Requires authentication? Yes


Response Parameters:

A JSON string representing an array of objects with the following fields:

Field Type Description
ids String Device id


Request Example:
http://localhost:8090/TotalControl/v1/devices/connections?token=270eq7lXQK8bXYsJ
Response Example:

If this API executes successfully, it returns:

{
    "ids":[
        "device@795844152",
        "device@795812215"
    ]
}


Example:

Automatic connection device, and return device id.

When the phone is connected to the computer, the Total Control is displayed as shown below.
After executing this API, all devices are automatically connected and return device id.

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: Get the device id value of the master device
var getdevice = request({
	method: "POST",
	url: "http://localhost:8090/TotalControl/v1/devices/connections",
	data: {
		"token": token
	}
	});
print("//Get the device id,Return value: "+getdevice.content);
var device = JSON.parse(getdevice.content).ids; 
print("//The value of device ID is:"+ device);
The running result of the RingoJS:

If it executes successfully, it will return:

//The value of token is:p150XKR61SaJ6z9G
//Get the device id,Return value: {"ids":["device@33254183","device@230441652"]}
//The value of device ID is:device@33254183,device@230441652
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: Get the device id value of the master device
if token is not None:
    GetDeviceUrl = "http://localhost:8090/TotalControl/v1/devices/connections?token=" + token
    response = requests.post(url=GetDeviceUrl)
    print("Get the device id,Return value: ", response.json())
    device = response.json()['ids']

    if device is not None:
        print("The value of device id is: ", device)
    else:
        print("Failed to get device id.")
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': 'SPQxpZO2Qz79oFWG'}}
The value of token is:  SPQxpZO2Qz79oFWG
Get the device id,Return value:  {'ids': ['device@33254183', 'device@230441652']}
The value of device id is:  ['device@33254183', 'device@230441652']