本文为您介绍号码隐私保护服务.Net SDK的使用方法及示例。

前提条件

  • 已经注册阿里云账号并生成访问密钥(AccessKey)。详细步骤请参见获取AccessKey
  • 您需要开通号码隐私保护并完成购买号码等操作。具体流程,请参见入门概览
  • 安装.Net环境,.Net环境最低要求net framework 4.5 或 .Net Core 2.0。

SDK依赖信息

SDK包名称:aliyun-net-sdk-dyplsapi

SDK版本:1.3.1
说明 此处的版本号为示例版本号,具体以OpenAPI开发者门户依赖信息为准。

SDK包管理平台:nuget

SDK 安装命令
dotnet add package aliyun-net-sdk-dyplsapi --version 1.3.1

安装.NET SDK核心库

  • 使用依赖包工具安装(推荐)

    您可以通过NuGet程序包管理器来安装,在解决方案资源管理器面板中,右键单击您的项目选择管理NuGet程序包菜单,在打开的NuGet管理面板中单击浏览选项卡输入aliyun-net-sdk-core,选择并单击安装即可。

  • 通过.NET CLI工具来安装核心库
    dotnet add package aliyun-net-sdk-core
  • 自行下载安装

    您可以使用git clone或其它手段下载aliyun-net-sdk-core并自行添加解决方案。下载安装包,请参见SDK 核心库

添加AXB号码的绑定关系

说明 调用接口前需配置环境变量,通过环境变量读取访问凭证。

AccessKey ID和AccessKey Secret的环境变量名:SECRET_AK_ENV 、SECRET_SK_ENV。配置详情请参见配置访问凭证

  • 代码示例
    using System;
    using System.Collections.Generic;
    using Aliyun.Acs.Core;
    using Aliyun.Acs.Core.Exceptions;
    using Aliyun.Acs.Core.Profile;
    using Aliyun.Acs.Core.Auth;
    using Aliyun.Acs.Dyplsapi.Model.V20170525;
    
    namespace AlibabaCloud.SDK.Sample
    {
        class Program
        {
            static void Main(string[] args)
            {
                // 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。
                // 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。
                // 本示例以把AccessKey ID和AccessKey Secret保存在环境变量为例说明,来实现API访问的身份验证。
                AlibabaCloudCredentialsProvider provider = new AccessKeyCredentialProvider(Environment.GetEnvironmentVariable("SECRET_AK_ENV"), Environment.GetEnvironmentVariable("SECRET_SK_ENV"));
                /* use STS Token
                AlibabaCloudCredentialsProvider provider = new StsCredentialProvider(Environment.GetEnvironmentVariable("SECRET_AK_ENV"), Environment.GetEnvironmentVariable("SECRET_SK_ENV"), "<your-sts-token>");
                */
                IClientProfile profile = DefaultProfile.GetProfile("cn-shanghai");
                DefaultAcsClient client = new DefaultAcsClient(profile, provider);
    
                var request = new BindAxbRequest();
                request.PoolKey = "FC5526*****";
                request.PhoneNoA = "150****0000";
                request.PhoneNoB = "150****0000";
                request.PhoneNoX = "150****0000";
                request.Expiration = "2021-09-05 12:00:00";
                request.ExpectCity = "北京";
                request.IsRecordingEnabled = true;
                request.OutId = "abcdef";
                request.OutOrderId = "34553330****";
                request.CallRestrict = "CONTROL_AX_DISABLE";
                request.CallDisplayType = 1;
                request.RingConfig = "{\"AXBRing_B\":\"100000001\",\"AXBRing_A\":\"100000001\"}";
                request.ASRModelId = "7ee372834d2f4cc7ac0d0ab****";
                request.CallTimeout = 10;
                try {
                    var response = client.GetAcsResponse(request);
                    Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content));
                }
                catch (ServerException e)
                {
                    Console.WriteLine(e);
                }
                catch (ClientException e)
                {
                    Console.WriteLine(e);
                }
            }
        }
    }
  • 结果示例
    {
      "SecretBindDTO" : {
        "Extension" : "130",
        "SecretNo" : "170****0000",
        "SubsId" : "10000007683*****"
      },
      "Message" : "OK",
      "RequestId" : "9297B722-A016-43FB-B51A-E54050D9369D",
      "Code" : "OK"
    }

相关文档

  • 如果您想了解更多示例,请参见OpenAPI开发者门户
    说明 登录开发者门户平台,SDK版本选择时,请选择原版 SDK
  • 号码隐私保护相关API,请参见API概览