Updated on 2023-07-17 GMT+08:00

Querying a Video Moderation Job

  1. This section describes how to query a video moderation job using the video moderation SDK and AK/SK.

    Replace the AK/SK in the sample code with the actual AK/SK. Use the withJobId method of the RunQueryVideoModerationJobRequest class to configure the ID of the moderation task, and then execute the code.

    using System;
    using System.Collections.Generic;
    using HuaweiCloud.SDK.Core;
    using HuaweiCloud.SDK.Core.Auth;
    using HuaweiCloud.SDK.Moderation;
    using HuaweiCloud.SDK.Moderation.V3;
    using HuaweiCloud.SDK.Moderation.V3.Model;
    
    namespace RunQueryVideoModerationJobSolution
    {
        class Program
        {
            static void Main(string[] args)
            {
            //Enter your AK/SK.
                const string ak = "<YOUR AK>";
                const string sk = "<YOUR SK>";
    
                var config = HttpConfig.GetDefaultConfig();
                config.IgnoreSslVerification = true;
                var auth = new BasicCredentials(ak, sk);
    
                var client = ModerationClient.NewBuilder()
                        .WithCredential(auth)
                        .WithRegion(ModerationRegion.ValueOf("xxx"))  //Replace xxx with the region where the service is located.
                        .WithHttpConfig(config)
                        .Build();
    
                var req = new RunQueryVideoModerationJobRequest
                {
                    JobId = "xxxx"    //Enter your job ID.
                };
    
                try
                {
                    var resp = client.RunQueryVideoModerationJob(req);
                    var respStatusCode = resp.HttpStatusCode;
                    Console.WriteLine(respStatusCode);
    Console.WriteLine(JsonConvert.DeserializeObject(resp.HttpBody));
                }
                catch (RequestTimeoutException requestTimeoutException)
                {
                    Console.WriteLine(requestTimeoutException.ErrorMessage);
                }
                catch (ServiceResponseException clientRequestException)
                {
                    Console.WriteLine(clientRequestException.HttpStatusCode);
                    Console.WriteLine(clientRequestException.ErrorCode);
                    Console.WriteLine(clientRequestException.ErrorMsg);
                }
                catch (ConnectionException connectionException)
                {
                    Console.WriteLine(connectionException.ErrorMessage);
                }
            }
        }
    }
  2. The console returns the query result of the video moderation job.
    200
    {
        "request_id":"xxxx",
        "job_id":"xxx",
        "status":"succeeded",
        "request_params":{
            "data":{
                "url":"xxxx",
                "frame_interval":5
            },
            "event_type":"default",
            "image_categories":[
                "porn",
                "terrorism",
                "image_text"
            ],
            "audio_categories":[
                "porn",
                "ad",
                "moan",
                "abuse"
            ],
            "callback":"xxx"
        },
        "create_time":"2022-07-30T08:57:11.011Z",
        "update_time":"2022-07-30T08:57:14.014Z",
        "result":{
            "suggestion":"block",
            "image_detail":[
                {
                    "suggestion":"block",
                    "category":"porn",
                    "ocr_text":"123",
                    "time":0,
                    "detail":[
                        {
                            "confidence":0.676015138626099,
                            "category":"porn",
                            "suggestion":"block",
                            "label":"pornography"
                        },
                        {
                            "confidence":0.666015138626099,
                            "category":"porn",
                            "suggestion":"review",
                            "label":"sexy_female"
                        },
                        {
                            "confidence":0.666015138626099,
                            "category":"xxx",
                            "suggestion":"block",
                            "label":"leader"
                        },
                        {
                            "confidence":0.691423773765564,
                            "category":"xxx",
                            "suggestion":"block",
                            "face_location":{
                                "top_left_x":12,
                                "top_left_y":13,
                                "bottom_right_x":200,
                                "bottom_right_y":240
                            },
                            "label":"leader"
                        },
                        {
                            "confidence":0.691423773765564,
                            "category":"porn",
                            "suggestion":"block",
                            "face_location":{
                                "top_left_x":12,
                                "top_left_y":13,
                                "bottom_right_x":100,
                                "bottom_right_y":2000
                            },
                            "label":"leader"
                        },
                        {
                            "confidence":0.891423773765564,
                            "category":"image_text",
                            "suggestion":"block",
                            "label":"qr_code"
                        },
                        {
                            "confidence":0.891423773765564,
                            "category":"image_text",
                            "suggestion":"block",
                            "label":"qr_code",
                            "qr_content":"xxxxxxxxx",
                            "qr_location":{
                                "top_left_x":12,
                                "top_left_y":13,
                                "bottom_right_x":100,
                                "bottom_right_y":2000
                            }
                        },
                        {
                            "confidence":0.891423773765564,
                            "category":"image_text",
                            "suggestion":"block",
                            "label":"porn",
                            "segments":[
                                {
                                    "segment":"xxx"
                                },
                                {
                                    "segment":"xx"
                                }
                            ]
                        }
                    ]
                }
            ],
            "audio_detail":[
                {
                    "suggestion":"block",
                    "label":"porn",
                    "audio_text":"xxxxx",
                    "end_time":10,
                    "start_time":0,
                    "detail":[
                        {
                            "confidence":0.999117187582349,
                            "label":"porn",
                            "suggestion":"block",
                            "segments":[
                                {
                                    "segment":"xxx"
                                }
                            ]
                        },
                        {
                            "confidence":0.885117187582349,
                            "label":"porn",
                            "suggestion":"block"
                        }
                    ]
                }
            ]
        }
    }