OSS content moderation

更新时间:
复制 MD 格式

This topic describes how to use the .NET SDK for OSS content moderation.

Prerequisites

The .NET dependencies must be installed. For instructions, see Install .NET dependencies.

Note

You must use the required .NET version described in the Installation topic to install the dependencies. Otherwise, subsequent operation calls fail.

Get OSS content moderation data

Use the following code sample to retrieve OSS content moderation data:

Note

The following code provides a basic example. For details about API parameters, see the OSS Content Moderation API documentation.

using System;
using Newtonsoft.Json;
using Aliyun.Acs.Core;
using Aliyun.Acs.Core.Profile;
using Aliyun.Acs.Green.Model.V20170823;
using System.Collections.Generic;

namespace csharp_sdk_sample
{
    class Program
    {
        static void Main(string[] args)
        {
            /**
             * Common ways to get environment variables:
             *     Get the AccessKey ID of a Resource Access Management (RAM) user: Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID");
             *     Get the AccessKey secret of a RAM user: Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
             */
            DefaultProfile profile = DefaultProfile.GetProfile(
                    "cn-shanghai",
                    "Get the AccessKey ID of the RAM user from an environment variable",
                    "Get the AccessKey secret of the RAM user from an environment variable");
            DefaultAcsClient client = new DefaultAcsClient(profile);

            DescribeOssResultItemsRequest describeKeywordLibRequest = new DescribeOssResultItemsRequest();
            describeKeywordLibRequest.ResourceType = "VIDEO";
            describeKeywordLibRequest.Scene = "porn";
            describeKeywordLibRequest.Stock = false;
            describeKeywordLibRequest.StartDate = "2021-10-11 00:00:00 +0800";
            describeKeywordLibRequest.EndDate = "2021-10-12 15:00:53 +0800";
            try
            {
                DescribeOssResultItemsResponse describeOssResultItemsResponse = client.GetAcsResponse(describeKeywordLibRequest);
                Console.WriteLine(System.Text.Encoding.Default.GetString(describeOssResultItemsResponse.HttpResponse.Content));
            }
            catch (Exception ex)
            {
                Console.WriteLine("Failed with error info: {0}", ex.Message);
            }
        }
    }
}

Mark OSS moderation results

You can use this API to mark and manage OSS scan results. You can call this API to perform operations such as deleting content, marking content as normal, ignoring content, or unfreezing content.

Note

The following code provides a basic example. For details about API parameters, see the OSS Content Moderation API.

using System;
using Newtonsoft.Json;
using Aliyun.Acs.Core;
using Aliyun.Acs.Core.Profile;
using Aliyun.Acs.Green.Model.V20170823;
using System.Collections.Generic;

namespace csharp_sdk_sample
{
    class Program
    {
        static void Main(string[] args)
        {
            /**
             * Common ways to get environment variables:
             *     Get the AccessKey ID of a RAM user: Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID");
             *     Get the AccessKey secret of a RAM user: Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
             */
            DefaultProfile profile = DefaultProfile.GetProfile(
                    "cn-shanghai",
                    "Get the AccessKey ID of the RAM user from an environment variable",
                    "Get the AccessKey secret of the RAM user from an environment variable");
            DefaultAcsClient client = new DefaultAcsClient(profile);

            MarkOssResultRequest markOssResultRequest = new MarkOssResultRequest();
            markOssResultRequest.ResourceType = "VIDEO";
            markOssResultRequest.Scene = "terrorism";
            markOssResultRequest.Stock = false;
            markOssResultRequest.Ids = JsonConvert.SerializeObject(new List<long> { 24930001L });
            markOssResultRequest.Operation = "ignore";
            try
            {
                MarkOssResultResponse markOssResultResponse = client.GetAcsResponse(markOssResultRequest);
                Console.WriteLine(System.Text.Encoding.Default.GetString(markOssResultResponse.HttpResponse.Content));
            }
            catch (Exception ex)
            {
                Console.WriteLine("Failed with error info: {0}", ex.Message);
            }
        }
    }
}

Export OSS content moderation results as a file

Use the following code sample to export OSS content moderation results as a file:

Note

The following code provides a basic example. For details about API parameters, see the OSS Content Moderation API.

using System;
using Newtonsoft.Json;
using Aliyun.Acs.Core;
using Aliyun.Acs.Core.Profile;
using Aliyun.Acs.Green.Model.V20170823;
using System.Collections.Generic;

namespace csharp_sdk_sample
{
    class Program
    {
        static void Main(string[] args)
        {
            /**
             * Common ways to get environment variables:
             *     Get the AccessKey ID of a RAM user: Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID");
             *     Get the AccessKey secret of a RAM user: Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
             */
            DefaultProfile profile = DefaultProfile.GetProfile(
                    "cn-shanghai",
                    "Get the AccessKey ID of the RAM user from an environment variable",
                    "Get the AccessKey secret of the RAM user from an environment variable");
            DefaultAcsClient client = new DefaultAcsClient(profile);

            ExportOssResultRequest exportOssResultRequest = new ExportOssResultRequest();
            exportOssResultRequest.ResourceType = "VIDEO";
            exportOssResultRequest.Scene = "porn";
            exportOssResultRequest.Stock = false;
            exportOssResultRequest.StartDate = "2021-10-11 00:00:00 +0800";
            exportOssResultRequest.EndDate = "2021-10-12 15:00:53 +0800";
            try
            {
                ExportOssResultResponse exportOssResultResponse = client.GetAcsResponse(exportOssResultRequest);
                Console.WriteLine(System.Text.Encoding.Default.GetString(exportOssResultResponse.HttpResponse.Content));
            }
            catch (Exception ex)
            {
                Console.WriteLine("Failed with error info: {0}", ex.Message);
            }
        }
    }
}