WebSocket is a communications protocol that is widely adopted for data transmission.
Link IoT Edge offers WebSocket drivers that allow you to easily connect IoT devices.
Link IoT Edge offers various WebSocket drivers based on the gateway CPU architecture.
You can use the IoT Platform console to deploy WebSocket drivers to gateways.
If you want to use WebSocket drivers to connect devices, you must ensure the compliance
with the WebSocket protocol for Link IoT Edge. For more information, see Link IoT Edge device connection protocol (WebSocket).
You can establish direct connections between WebSocket drivers and WebSocket devices.

You can also use gateways to connect WebSocket drivers and WebSocket devices.

This topic provides an example of how to use WebSocket drivers. The procedure is described
as follows.
Note Before using WebSocket drivers, make sure that you have created edge instances and
published gateways based on the instructions provided in
Set up an environment.
Step 1: Assign a driver
- Log on to the IoT Platform console. In the left-side navigation pane, choose . On the page that appears, find an existing edge instance, and click View in the Actions column.
- On the Instance Details page, click the Devices & Drivers tab, and click the
+
icon on the right side of All Drivers.
- In the Assign Driver dialog box, select Official Drivers from the drop-down list. Find the required WebSocket driver based on the gateway
CPU architecture, and click Assign in the Actions column. Then, click Close.
Step 2: Configure the driver
- On the Devices & Drivers tab, click the WebSocket driver that has been assigned to the edge instance, and click Driver Configurations next to Devices.
On the page that appears, specify the parameters as prompted, and click
OK.
Table 1. Parameters
Parameter |
Description |
IP Address |
The listening IP address of the WebSocket driver. The default value is the IP address
of the machine where the driver resides.
|
Port Number |
The listening port number of the WebSocket driver. The value ranges from 1 to 65535.
The default value is 17682.
|
Encrypt |
Specifies whether to enable Transport Layer Security (TLS) encryption. By default,
TLS encryption is disabled. If you select Yes, you must upload certificate files for public and private keys.
- Public Key File: Upload a certificate file for the public key. The certificate file
must use the .cer format.
- Private Key File: Upload a certificate file for the private key. The certificate file
must use the .pvk format.
|
- Optional. On the right side of Devices, click Container Configurations. On the page that appears, configure the container settings for the driver. After
you complete the configuration, click Save.
Note You can specify Container Configurations only when the Instance Type parameter is set to Pro Edition.
Table 2. Parameters
Parameter |
Description |
Host Mode |
Specifies whether to isolate the container network from the host network. The valid
values are described as follows:
- Yes: This value indicates that the container network is the same as the host network.
- No: This value indicates that the container network is isolated from the host network.
If you select this option, you must configure the Network Port Mapping settings.
|
Network Port Mapping |
The mappings between host network ports and container network ports. This parameter
is available only when Host Mode is set to No. The network where the function runs is isolated from the host network. You can map
the listening port of the function in the container to a host network port. This allows
client programs on various hosts to access the services that are provided by the function.
You can specify a maximum of 10 entries.
For example, the fc-http-server function runs in a host container, and provides services by using socket port 80.
The client programs on other hosts cannot access the fc-http-server function by accessing port 80 on the current host. To enable the client programs
on other hosts to access the fc-http-server function, you must map the network port (port 80) in the container where the function
runs to a host network port, such as port 8080. Then, the client programs on other
hosts can access the IP address:port 8080 in the host network, and use the services provided by the fc-http-server function.
|
Privilege Mode |
Specifies whether to enable the privilege mode. Root users of containers can access
host services only as general users. If you want to change the system time or run
the mount command in containers, you must be granted the required root permissions.
In this scenario, you must enable the privilege mode for the containers.
Note If you enable the privilege mode, applications and programs in the containers are
granted the host root permissions, and all the host devices are mapped to the containers.
Therefore, you do not need to configure the Device Mapping settings.
|
Device Mapping |
The device mappings. This parameter is available only when you select No for Privilege Mode. The network where the device management system resides is isolated from the host
network. To enable a function to access a host device such as a serial interface,
you must map the device to the container where the function runs. You can specify
a maximum of 10 entries.
|
Volume Mapping |
The volume mappings. The network where the file system resides is isolated from the
host network. To enable a function to access a host file, you must map the file to
the container where the function runs. You can specify a maximum of 10 entries.
|
Step 3: Assign a sub-device
- In the Devices section, click Assign Sub-device. In the WebSocket driver settings, assign a device to the edge instance.
You can select an existing WebSocket device or create a new device. To create a device,
follow these steps:
- On the Assign Sub-device page that appears on the right side of the console, click Add Sub-device.
- In the Add Device dialog box, click Create Product to create a product to which the WebSocket device belongs.

- In the Create Product dialog box, specify the required parameters, and click OK.
Table 3. Parameters
Parameter |
Description |
Product Name |
The name of the product. The product name must be unique for the current account.
The product name must be 4 to 30 characters in length, and can contain letters, digits,
underscores (_), hyphens (-), at signs (@), and parentheses ().
|
Gateway Connection Protocol |
The protocol that is used by the gateway. In this example, Custom is selected.
|
Authentication Mode |
The authentication method. Select an authentication method that is suitable for your
devices. For more information, see Authenticate devices.
|
Product Description |
Optional. The description of the product. |
- In the Add Device dialog box, add a WebSocket device. In this step, specify a value for the DeviceName parameter, and then click OK.
- Assign the WebSocket device to the edge instance.
- After the WebSocket device is assigned to the edge instance, click Device Configurations in the Actions column. In the dialog box that appears, configure the device settings to connect
the device to the WebSocket driver.
The Device IP parameter is optional. This parameter indicates the IP address of the device or the
gateway that is connected to the device.
Note If you specify this parameter, Link IoT Edge connects only the devices from the specified
IP address.
Step 4: Deploy the edge instance
In the upper-right corner of the Instance Details page, click Deploy to deploy the edge instance.