本文为您介绍如何调用CancelCall接口取消ClickToDial接口发起的呼叫。
前提条件
调用CancelCall接口取消语音双呼前,您需要先成功调用ClickToDial接口发起语音双呼并获取CallId。
代码示例
本示例展示了调用CancelCall接口取消语音双呼。接口详情,请参见CancelCall。
如果您需要进行调试,推荐使用阿里云OpenAPI 开发者门户。
说明
调用接口前,需配置环境变量,通过环境变量读取访问凭证。AccessKey ID和AccessKey Secret的环境变量名:VMS_AK_ENV 、VMS_SK_ENV。配置详情请参见配置访问凭证。
// This file is auto-generated, don't edit it. Thanks.
package com.aliyun;
import com.aliyun.tea.*;
public class Client {
/**
* 使用AK&SK初始化账号Client
* @param accessKeyId
* @param accessKeySecret
* @param regionId
* @return Client
* @throws Exception
*/
public static com.aliyun.dyvmsapi20170525.Client createClient(
String accessKeyId,
String accessKeySecret,
String regionId
) throws Exception {
com.aliyun.tearpc.models.Config config = new com.aliyun.tearpc.models.Config();
// 您的AccessKey ID
config.accessKeyId = accessKeyId;
// 您的AccessKey Secret
config.accessKeySecret = accessKeySecret;
// 您的可用区ID
config.regionId = regionId;
return new com.aliyun.dyvmsapi20170525.Client(config);
}
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
// 阿里云账号AccessKey ID拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户
// 此处以把AccessKey ID和AccessKey Secret保存在环境变量为例说明。 您也可以根据业务需要,保存到配置文件里
// 强烈建议不要把AccessKey ID和 AccessKey Secret保存到代码里,会存在密钥泄漏风险
com.aliyun.dyvmsapi20170525.Client client = Client.createClient(
System.getenv("VMS_AK_ENV"),
System.getenv("VMS_SK_ENV"),
"regionId"
);
com.aliyun.dyvmsapi20170525.models.CancelCallRequest request = com.aliyun.dyvmsapi20170525.models.CancelCallRequest.build(
TeaConverter.buildMap(
// 通话的唯一回执ID。
new TeaPair("callId", "117059405036^10385912xx")
)
);
// 发起请求
com.aliyun.dyvmsapi20170525.models.CancelCallResponse response = client.cancelCall(
request
);
}
}
# This file is auto-generated, don't edit it. Thanks.
from alibabacloud_dyvmsapi20170525.client import Client as DyvmsapiClientClient
from alibabacloud_tea_rpc import models as _rpc_models
from alibabacloud_dyvmsapi20170525 import models as dyvmsapi_client_models
class Client:
@staticmethod
def create_client(access_key_id, access_key_secret, region_id):
"""
使用AK&SK初始化账号Client
:type access_key_id: str
:param access_key_id:
:type access_key_secret: str
:param access_key_secret:
:type region_id: str
:param region_id:
:return: Client
@throws Exception
"""
config = _rpc_models.Config(
)
# 您的AccessKey ID
config.access_key_id = access_key_id
# 您的AccessKey Secret
config.access_key_secret = access_key_secret
# 您的可用区ID
config.region_id = region_id
return DyvmsapiClientClient(config)
@staticmethod
def main(args):
"""
:param args:
@throws Exception
"""
# 阿里云账号AccessKey ID拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户
# 此处以把AccessKey ID和AccessKey Secret保存在环境变量为例说明。 您也可以根据业务需要,保存到配置文件里
# 强烈建议不要把AccessKey ID和AccessKey Secret保存到代码里,会存在密钥泄漏风险
client = create_client(os.getenv("VMS_AK_ENV"), os.getenv("VMS_SK_ENV"), "regionId")
request = dyvmsapi_client_models.CancelCallRequest(
call_id="117059405036^10385912xx"
)
# 发起请求
response = client.cancel_call(request)
def __init__(self):
pass
// This file is auto-generated, don't edit it. Thanks.
package client
import (
"os"
dyvmsapiclient "github.com/alibabacloud-go/dyvmsapi-20170525/client"
rpc "github.com/alibabacloud-go/tea-rpc/client"
"github.com/alibabacloud-go/tea/tea"
)
/**
* 使用AK&SK初始化账号Client
* @param accessKeyId
* @param accessKeySecret
* @param regionId
* @return Client
* @throws Exception
*/
func CreateClient (accessKeyId *string, accessKeySecret *string, regionId *string) (_result *dyvmsapiclient.Client) {
config := &rpc.Config{}
// 您的AccessKey ID
config.AccessKeyId = accessKeyId
// 您的AccessKey Secret
config.AccessKeySecret = accessKeySecret
// 您的可用区ID
config.RegionId = regionId
_result = &dyvmsapiclient.Client{}
_result, _err = dyvmsapiclient.NewClient(config)
return _result
}
/**
* @param args
* @throws Exception
*/
func Main (args []*string) (_err error) {
// 阿里云账号AccessKey ID拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户
// 此处以把AccessKey ID和 AccessKey Secret 保存在环境变量为例说明。 您也可以根据业务需要,保存到配置文件里
// 强烈建议不要把AccessKey ID和 AccessKey Secret 保存到代码里,会存在密钥泄漏风险
client := CreateClient(os.Getenv("VMS_AK_ENV"), os.Getenv("VMS_SK_ENV"), tea.String("regionId"))
// 通话的唯一回执ID。
CallId: tea.String("117059405036^10385912xx"),
}
// 发起请求
response, _err := client.CancelCall(request)
if _err != nil {
return _err
}
return _err
}
<?php
// This file is auto-generated, don't edit it. Thanks.
namespace DarabonbaSDK;
use AlibabaCloud\SDK\Dyvmsapi\V20170525\Dyvmsapi;
use AlibabaCloud\Tea\Rpc\Rpc\Config;
use AlibabaCloud\SDK\Dyvmsapi\V20170525\Models\CancelCallRequest;
use AlibabaCloud\SDK\Dyvmsapi\V20170525\Models\CancelCallResponse;
class Client {
/**
* 使用AK&SK初始化账号Client
* @param string $accessKeyId
* @param string $accessKeySecret
* @param string $regionId
* @return Dyvmsapi Client
*/
public static function createClient($accessKeyId, $accessKeySecret, $regionId){
$config = new Config([]);
// 您的AccessKey ID
$config->accessKeyId = $accessKeyId;
// 您的AccessKey Secret
$config->accessKeySecret = $accessKeySecret;
// 您的可用区ID
$config->regionId = $regionId;
return new Dyvmsapi($config);
}
/**
* @param array $args
* @return void
*/
public static function main($args){
// 阿里云账号AccessKey ID拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户
// 此处以把AccessKey ID和AccessKey Secret保存在环境变量为例说明。 您也可以根据业务需要,保存到配置文件里
// 强烈建议不要把AccessKey ID和AccessKey Secret保存到代码里,会存在密钥泄漏风险
$client = self::createClient(getenv("VMS_AK_ENV"), getenv("VMS_SK_ENV"), "regionId");
$request = new CancelCallRequest([
// 通话的唯一回执ID。
"callId" => "117059405036^10385912xx"
]);
// 发起请求
$response = $client->cancelCall($request);
}
}
// This file is auto-generated, don't edit it. Thanks.
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Threading.Tasks;
using Tea;
using Tea.Utils;
namespace com.aliyun
{
public class Client
{
/**
* 使用AK&SK初始化账号Client
* @param accessKeyId
* @param accessKeySecret
* @param regionId
* @return Client
* @throws Exception
*/
public static AlibabaCloud.SDK.Dyvmsapi20170525.Client CreateClient(string accessKeyId, string accessKeySecret, string regionId)
{
AlibabaCloud.RPCClient.Models.Config config = new AlibabaCloud.RPCClient.Models.Config();
// 您的AccessKey ID
config.AccessKeyId = accessKeyId;
// 您的AccessKey Secret
config.AccessKeySecret = accessKeySecret;
// 您的可用区ID
config.RegionId = regionId;
return new AlibabaCloud.SDK.Dyvmsapi20170525.Client(config);
}
/**
* @param args
* @throws Exception
*/
public static void Main(string[] args)
{
// 阿里云账号AccessKey ID拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户
// 此处以把AccessKey ID和 AccessKey Secret保存在环境变量为例说明。 您也可以根据业务需要,保存到配置文件里
// 强烈建议不要把AccessKey ID和AccessKey Secret保存到代码里,会存在密钥泄漏风险
AlibabaCloud.SDK.Dyvmsapi20170525.Client client = Client.CreateClient(Environment.GetEnvironmentVariable("VMS_AK_ENV"), Environment.GetEnvironmentVariable("VMS_SK_ENV"), "regionId");
AlibabaCloud.SDK.Dyvmsapi20170525.Models.CancelCallRequest request = new AlibabaCloud.SDK.Dyvmsapi20170525.Models.CancelCallRequest
{
// 通话的唯一回执ID。
CallId = "117059405036^10385912xx",
};
// 发起请求
AlibabaCloud.SDK.Dyvmsapi20170525.Models.CancelCallResponse response = client.CancelCall(request);
}
}
}
// This file is auto-generated, don't edit it
import DyvmsapiClient, * as $DyvmsapiClient from '@alicloud/dyvmsapi20170525';
import RPC, * as $RPC from '@alicloud/rpc-client';
import * as $tea from '@alicloud/tea-typescript';
export default class Client {
/**
* 使用AK&SK初始化账号Client
* @param accessKeyId
* @param accessKeySecret
* @param regionId
* @return Client
* @throws Exception
*/
static createClient(accessKeyId: string, accessKeySecret: string, regionId: string): DyvmsapiClient {
let config = new $RPC.Config({ });
// 您的AccessKey ID
config.accessKeyId = accessKeyId;
// 您的AccessKey Secret
config.accessKeySecret = accessKeySecret;
// 您的可用区ID
config.regionId = regionId;
return new DyvmsapiClient(config);
}
/**
* @param args
* @throws Exception
*/
static async main(args: string[]): Promise<void> {
// 阿里云账号AccessKey ID拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户
// 此处以把AccessKey ID和 AccessKey Secret 保存在环境变量为例说明。 您也可以根据业务需要,保存到配置文件里
// 强烈建议不要把 AccessKey ID和 AccessKey Secret 保存到代码里,会存在密钥泄漏风险
let client = Client.createClient(process.env.VMS_AK_ENV, process.env.VMS_SK_ENV, "regionId");
let request = new $DyvmsapiClient.CancelCallRequest({
// 通话的唯一回执ID。
callId: "117059405036^10385912xx",
});
// 发起请求
let response = await client.cancelCall(request);
}
}
执行结果
正常的结果如下所示:
{
"Status":"true",
"Message":"OK",
"RequestId":"D9CB3933-9FE3-4870-BA8E-2BEE91B6****",
"Code":"OK"
}
调用SDK返回错误码,详情请参见错误码。
反馈
- 本页导读 (1)
文档反馈