IoTIoT

Compute
Elastic Cloud Server
Bare Metal Server
Auto Scaling
Image Management Service
Dedicated Host
FunctionGraph
Networking
Virtual Private Cloud
Elastic IP
Elastic Load Balance
NAT Gateway
Direct Connect
Virtual Private Network
Domain Name Service
VPC Endpoint
Cloud Connect
Enterprise Switch
Security & Compliance
Anti-DDoS
Web Application Firewall
Host Security Service
Data Encryption Workshop
Database Security Service
Advanced Anti-DDoS
Data Security Center
Container Guard Service
Situation Awareness
Managed Threat Detection
Compass
Cloud Certificate Manager
Anti-DDoS Service
Databases
Relational Database Service
Document Database Service
Data Admin Service
Data Replication Service
GaussDB NoSQL
GaussDB(for MySQL)
Distributed Database Middleware
GaussDB(for openGauss)
Developer Services
ServiceStage
Distributed Cache Service
Simple Message Notification
Application Performance Management
Application Operations Management
Blockchain
API Gateway
Cloud Performance Test Service
Distributed Message Service for Kafka
Distributed Message Service for RabbitMQ
Distributed Message Service for RocketMQ
Cloud Service Engine
DevCloud
ProjectMan
CodeHub
CloudRelease
CloudPipeline
CloudBuild
CloudDeploy
Cloud Communications
Message & SMS
Cloud Ecosystem
Marketplace
Partner Center
User Support
My Account
Billing Center
Cost Center
Resource Center
Enterprise Management
Service Tickets
HUAWEI CLOUD (International) FAQs
ICP License Service
Support Plans
Customer Operation Capabilities
Partner Support Plans
Professional Services
enterprise-collaboration
Meeting
IoT
IoT
Intelligent EdgeFabric
DeveloperTools
SDK Developer Guide
API Request Signing Guide
Terraform
Koo Command Line Interface
Updated at: Feb 24, 2022 GMT+08:00

Releasing Data

API Function

This API is used by the gateway to release data of directly connected devices or indirectly connected devices to the IoT platform. For data releasing scenarios, the released data can be defined as a topic. In addition, the package body needs to be assembled to the input parameters. The data is transparently transmitted internally instead of being assembled.

API Description

1
HW_INT IOTA_MqttDataPub (HW_UINT uiCookie, const HW_UCHAR *pucTopic, HW_UINT uiQos, const HW_BYTES *pbstrServiceData);

Parameter Description

Parameter

Mandatory or Optional

Type

Description

uiCookie

Optional

unsign int

The value ranges from 1 to 65535.

pucTopic

Mandatory

String

Specifies the topic for releasing data. The value must end with \0.

uiQos

Mandatory

unsign int

Specifies the value of MQTT. Default value: 1

pbstrServiceData

Mandatory

HW_BYTES

Specifies the package for releasing data.

Return Value

For details, see 4.2 Function Return Values.

Output

Broadcast Name

Broadcast Parameter

Member

Description

IOTA_TOPIC_MQTT_DATA_PUB_RSP

HW_MSG object

EN_IOTA_DATATRANS_IE_RESULT

Specifies the data release result.

  • 0: indicating that the data is released.
  • 1: indicates that the data releasing fails.

Example

1
2
3
HW_BYTES bstrBody; 
...
IOTA_MqttDataPub (1211, "/huawei/v1/devices/336d9bac-9ebf-44e9-95cf-efac5f05da3a/services/Storage", 1, bstrBody);

The device waits for the data reporting result.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
//Developers call this API to register the function for subsequent processing after the device service data is reported.
HW_iNT Device_DataPubResultHandler(HW_UiNT uiCookie, HW_MSG pstMsg) 
{
    uiResult = HW_MsgGetUint(pstMsg, EN_IOTA_DATATRANS_IE_RESULT);
    if (HW_SUCCESS != uiResult) 
    {
        // retry with uiCookie 
        return 0;
    }
    return 0;
}
//After the device is added, register a broadcast to receive the service data reporting result: HW_BroadCastReg("IOTA_TOPIC_MQTT_DATA_PUB_RSP", Device_AddResultHandler);

Did you find this page helpful?

Failed to submit the feedback. Please try again later.

Which of the following issues have you encountered?







Please complete at least one feedback item.

Content most length 200 character

Content is empty.

OK Cancel