Creating a People Flow Counting (Edge) Task
Function
This API is used to create a people flow counting (edge) task.
URI
POST /v2/{project_id}/services/c-flowcount-edge/tasks
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Project ID. For details about how to obtain the project ID and name, see Obtaining the Project ID and Name. |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
String |
User token. For details about how to obtain a user token, see Authentication. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
name |
Yes |
String |
Job name. It can contain up to 100 characters and can include uppercase and lowercase letters, digits, hyphens (-), and underscores (_). |
description |
No |
String |
Job description. It can contain up to 500 characters. Minimum: 0 Maximum: 500 |
schedule |
No |
TaskSchedule object |
Task schedule. Only the weekly mode is supported. |
input |
Yes |
TaskInput object |
Input configuration of a job |
output |
Yes |
TaskOutput object |
Output configuration of a job. At least one output mode must be configured. |
config |
No |
FlowCountServiceConfig object |
Job configuration parameters. |
service_version |
Yes |
String |
Service version. The value must match the regular expression ^[a-z0-9.]{3,32}$. Minimum: 3 Maximum: 32 |
is_saved_as_template |
No |
Boolean |
Whether to save the job configuration as a template. |
resource_order_id |
No |
String |
Resource order ID, which corresponds to the associated algorithm. This parameter is only mandatory for commercial algorithms and must match the regular expression ^[a-z0-9-_]{4,36}$. Minimum: 4 Maximum: 36 |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
type |
Yes |
String |
Type of a scheduled task. This parameter is mandatory for scheduled tasks. The options are weekly and monthly. |
timezone |
Yes |
String |
Time zone where a user is located. This parameter is mandatory for scheduled jobs. The value is accurate to the minute. |
days_of_week |
No |
Array of integers |
Days in a week when a task is executed. This parameter is mandatory only for weekly tasks. The values 1 to 7 indicate Monday to Sunday respectively. Minimum: 1 Maximum: 7 Array Length: 1 - 7 |
days_of_month |
No |
Array of integers |
Days in a month when a task is executed. This parameter is mandatory only for monthly tasks. The values 1 to 31 indicate the first day to the 31st day of a month. Minimum: 1 Maximum: 31 |
periods |
No |
Array<Array<>> |
Time segment configuration. Select at least one time segment for executing a weekly or monthly job. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
type |
Yes |
String |
Task input type, which is mandatory when you create a task. The video_source type cannot be changed to other types. The following types are supported: obs (files stored in OBS, supported only by cloud tasks), url (specified file URL or stream request URL, supported only by cloud tasks), edgecamera (edge camera bound to IEF, supported only by edge tasks), restful (stream request URL obtained from a user-specified streaming server through a RESTful API, supported by both cloud and edge tasks), vcn (VCN device, supported only by edge tasks), and video_source (video sources managed in VIAS, supported by both cloud and edge tasks). You are advised to use the video_source type. Other types will be discontinued in the future. Options:
|
data |
Yes |
Array of TaskInputData objects |
Input details of a task, which is mandatory. The configuration varies according to the input type. Multiple inputs are allowed during creation, but only one input is allowed for update.
Array Length: 1 - 50 |
vcn |
No |
TaskInputVcn object |
VCN server information. This parameter is mandatory only when the input type is vcn. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
video_source_id |
No |
String |
Video source ID. This parameter is mandatory when the input type is video_source. |
stream_name |
No |
String |
Name of a video stream. |
bucket |
No |
String |
OBS bucket name. This parameter is mandatory when the input type is obs. Maximum: 63 |
path |
No |
String |
OBS path. This parameter is mandatory when the input type is obs. Maximum: 1023 |
url |
No |
String |
File URL or RESTful request URL for obtaining a video stream. This parameter is mandatory when the input type is url or edgerestful. The value contains a maximum of 1000 characters. Maximum: 1000 |
headers |
No |
Object |
Headers carried in the RESTful request for obtaining a video stream. This parameter is optional when the input type is edgerestful. The value is key-value pairs in JSON format. A maximum of 10 key-value pairs are allowed. |
certificate_check |
No |
Boolean |
Whether to verify the certificate of the HTTPS request. This parameter is mandatory when the input type is edgerestful. The value can be true or false. |
rtsp_path_in_response |
No |
String |
Video stream address in the response body for the RESTful request. This parameter is mandatory when the input type is edgerestful. The value contains a maximum of 1024 characters. Maximum: 1024 |
device_id |
No |
String |
VCN ID. This parameter is mandatory when the input type is vcn. |
stream_type |
No |
Integer |
Stream type used for analysis. This parameter is optional when the input type is vcn. The value ranges from 1 to 3. The value 1 indicates primary stream, the value 2 indicates secondary stream 1, and the value 3 indicates secondary stream 2. Minimum: 1 Maximum: 3 |
id |
No |
String |
ID of the edge device mounted to IEF. This parameter is mandatory when the input type is edgecamera. Maximum: 63 |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
ip |
Yes |
String |
IP address of the VCN server. This parameter is mandatory only when the input type is vcn. |
port |
Yes |
Integer |
Port number of the VCN server. This parameter is mandatory only when the input type is vcn. Minimum: 0 Maximum: 65535 |
username |
Yes |
String |
Account name of a VCN server. This parameter is mandatory only when the input type is vcn. The value must match the regular expression ^.{1,100}$. |
password |
Yes |
String |
Password of a VCN server account. This parameter is mandatory only when the input type is vcn. The value must match the regular expression ^.{1,1000}$. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
obs |
No |
TaskOutputObs object |
Configuration information when the output type is obs. |
dis |
No |
TaskOutputDis object |
Configuration information when the output type is dis. |
webhook |
No |
TaskOutputWebhook object |
Configuration information when the output type is webhook. |
event_center |
No |
Boolean |
Whether to send alarms to the event center. This parameter is valid for cloud jobs. Default: false |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
bucket |
Yes |
String |
OBS bucket name. This parameter is mandatory when the OBS output type is used. The verification rule is (pattern: " ^[a-z0-9](?!.[-.][-.].)([a-z0-9-.]{1,61})[a-z0-9]$ "). Maximum: 63 |
path |
Yes |
String |
OBS path. This parameter is mandatory when the OBS output type is used. The verification rule is ^(?![/.\s])(?!.//.)([^:*?"<>|]{0,1023})(?<![.\s])$. Maximum: 1023 |
data_category |
No |
Array of strings |
List of job output types. This parameter is optional and is required only for some services. The output contains data in the dataCategory list. Array Length: 0 - 10 |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
stream_name |
Yes |
String |
DIS stream name. This parameter is mandatory when the dis type is used. Maximum: 64 |
data_category |
No |
Array of strings |
List of job output types. This parameter is optional and is required only for some services. The output contains data in the dataCategory list. Array Length: 0 - 10 |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
url |
Yes |
String |
Result callback address. This parameter is mandatory when the output type is webhook. Maximum: 1000 |
headers |
Yes |
Object |
Headers carried in result callback. This parameter is mandatory when the output type is webhook. The value is key-value pairs in JSON format. A maximum of 10 key-value pairs are allowed, and a minimum of 1 key-value pair is allowed. |
data_category |
No |
Array of strings |
List of job output types. This parameter is optional and is required only for some services. The output contains data in the dataCategory list. Array Length: 0 - 10 |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
common |
No |
FlowCountCommon object |
Job runtime configuration items customized by the service publisher. The value must be in JSON format. For details about the configuration items, see the description of the corresponding algorithm service. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
line_count_interval |
No |
Integer |
Interval for collecting the number of people per second who cross a particular straight line in a video. The value ranges from 1 to 86400 and the default value is 2. Minimum: 1 Maximum: 86400 Default: 2 |
region_count_interval |
No |
Integer |
Interval for collecting the number of people per second who cross through a particular area. The value ranges from 1 to 86400 and the default value is 2. Minimum: 1 Maximum: 86400 Default: 2 |
line_detection_sw |
No |
Integer |
Whether to collect the number of people who cross a particular straight line in a video. 0: disabled. 1: enabled. The default value is 1. Minimum: 0 Maximum: 1 Default: 1 |
region_detection_sw |
No |
Integer |
Whether to collect the number of people who cross through a particular area. 0: disabled. 1: enabled. The default value is 1. Minimum: 0 Maximum: 1 Default: 1 |
heatmap_detection_sw |
No |
Integer |
Whether to enable heatmap detection. 0: disabled. 1: enabled. The default value is 0. Minimum: 0 Maximum: 1 Default: 0 |
heatmap_detection_interval |
No |
Integer |
Heatmap detection period, in seconds. The value ranges from 10 to 86400 and the default value is 10. Minimum: 10 Maximum: 86400 Default: 10 |
heatmap_point_interval |
No |
Integer |
Hotspot update period, in frames. In a heatmap detection period, hotspot values gradually accumulate. The value ranges from 1 to 10000 and the default value is 4. Minimum: 1 Maximum: 10000 Default: 4 |
target_roi |
No |
String |
Corresponds to the Target ROI parameter on the console.
|
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
tasks |
Array of TaskResponse objects |
ID list of tasks created in VIAS |
Status code: 400
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code |
error_msg |
String |
Error information |
detail |
String |
Error details |
params |
Array of strings |
Error parameters Array Length: 0 - 1 |
reason |
String |
Error cause |
advice |
String |
Suggestion |
Status code: 500
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code |
error_msg |
String |
Error information |
detail |
String |
Error details |
params |
Array of strings |
Error parameters Array Length: 0 - 1 |
reason |
String |
Error cause |
advice |
String |
Suggestion |
Example Requests
-
This request is used to create a people flow counting (edge) task, with the input type set to video_source and the output type set to dis.
POST /v2/{project_id}/services/c-flowcount-edge/tasks { "name" : "flowcount-task", "description" : "flowcount task test", "input" : { "type" : "video_source", "data" : [ { "video_source_id" : "xxxxxxx-xxxxxxx-xxxxxxx-xxxxx-xxxxxx" } ] }, "output" : { "dis" : { "stream_name" : "dis-test" } }, "service_version" : "3.0", "resource_order_id" : "840a5cf90d4a4bbaa71f251dfe8fe64e", "config" : { "common" : { "line_count_interval" : 2, "region_count_interval" : 2, "line_detection_sw" : 1, "region_detection_sw" : 1, "target_roi" : "{\"lines\":[{\"data\":[[560,680],[1185,506]],\"properties\":{\"side1_name\":\"Side1\",\"side2_name\":\"Side2\"}}],\"polygons\":[{\"data\":[[0,0],[0,1080],[1920,1080],[1920,0]]}]}", "heatmap_detection_sw" : 0, "heatmap_detection_interval" : 60, "heatmap_point_interval" : 4 } } }
-
This request is used to create a people flow counting task, with the input type set to restful and the output type set to webhook.
POST /v2/{project_id}/services/c-flowcount-edge/tasks { "name" : "flowcount-task", "description" : "flowcount task test", "input" : { "type" : "restful", "data" : [ { "url" : "https://restfultest", "certificate_check" : false, "node_id" : "aec5857c-222f-4aa9-be39-23654e118886", "rtsp_path_in_response" : "http://testpath" } ] }, "output" : { "webhook" : { "url" : "https://127.0.0.1:8080/webhook", "headers" : { "x-auth-token" : "tokentest" } } }, "service_version" : "3.0", "resource_order_id" : "840a5cf90d4a4bbaa71f251dfe8fe64e", "config" : { "common" : { "line_count_interval" : 2, "region_count_interval" : 2, "line_detection_sw" : 1, "region_detection_sw" : 1, "target_roi" : "{\"lines\":[{\"data\":[[560,680],[1185,506]],\"properties\":{\"side1_name\":\"Side1\",\"side2_name\":\"Side2\"}}],\"polygons\":[{\"data\":[[0,0],[0,1080],[1920,1080],[1920,0]]}]}", "heatmap_detection_sw" : 0, "heatmap_detection_interval" : 60, "heatmap_point_interval" : 4 } } }
-
This request is used to create a people flow counting task, with the input type set to edgecamera and the output type set to dis.
POST /v2/{project_id}/services/c-flowcount-edge/tasks { "name" : "flowcount-task", "description" : "flowcount task test", "input" : { "type" : "edgecamera", "data" : [ { "id" : "aec5857c-222f-4aa9-be39-23654e118886", "index" : 0 } ] }, "output" : { "dis" : { "stream_name" : "dis-test" } }, "service_version" : "3.0", "resource_order_id" : "840a5cf90d4a4bbaa71f251dfe8fe64e", "config" : { "common" : { "line_count_interval" : 2, "region_count_interval" : 2, "line_detection_sw" : 1, "region_detection_sw" : 1, "target_roi" : "{\"lines\":[{\"data\":[[560,680],[1185,506]],\"properties\":{\"side1_name\":\"Side1\",\"side2_name\":\"Side2\"}}],\"polygons\":[{\"data\":[[0,0],[0,1080],[1920,1080],[1920,0]]}]}xyf", "heatmap_detection_sw" : 0, "heatmap_detection_interval" : 60, "heatmap_point_interval" : 4 } } }
-
This request is used to create a people flow counting (edge) task, with the input type set to vcn and the output type set to dis.
POST /v2/{project_id}/services/c-flowcount-edge/tasks { "name" : "flowcount-task", "description" : "flowcount task test", "input" : { "type" : "vcn", "data" : [ { "device_id" : "aec5857c-222f-4aa9-be39-23654e118886", "stream_type" : 2 } ], "vcn" : { "ip" : "127.0.0.1", "port" : 8080, "username" : "vcntest", "password" : "123456abcd" } }, "output" : { "dis" : { "stream_name" : "dis-test" } }, "service_version" : "3.0", "resource_order_id" : "840a5cf90d4a4bbaa71f251dfe8fe64e", "config" : { "common" : { "line_count_interval" : 2, "region_count_interval" : 2, "line_detection_sw" : 1, "region_detection_sw" : 1, "target_roi" : "{\"lines\":[{\"data\":[[560,680],[1185,506]],\"properties\":{\"side1_name\":\"Side1\",\"side2_name\":\"Side2\"}}],\"polygons\":[{\"data\":[[0,0],[0,1080],[1920,1080],[1920,0]]}]}", "heatmap_detection_sw" : 0, "heatmap_detection_interval" : 60, "heatmap_point_interval" : 4 } } }
Example Responses
Status code: 200
Operation successful
{ "tasks" : [ { "id" : "20690c67d71549c39085a3b28c18f24f" } ] }
Status Codes
Status Code |
Description |
---|---|
200 |
Operation successful |
400 |
Request error |
500 |
Internal error |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot