开发者社区 问答 正文

短信查询API(QuerySendDetails)---PHP



短信发送记录查询接口(QuerySendDetails)



入参列表

参数名称参数类型必填与否样例取值参数说明
PhoneNumberString必须15000000000短信接收号码
BizIdString可选1234^1234发送流水号,从调用发送接口返回值中获取
SendDateString必须20170525短信发送日期格式yyyyMMdd,支持最近30天记录查询
PageSizeNumber必须10页大小Max=50
CurrentPageNumber必须1当前页码


出参列表

出参名称出参类型样例取值参数说明
RequestIdString8906582E-6722请求ID
CodeStringOK状态码-返回OK代表请求成功,其他错误码详见错误码列表
MessageString请求成功状态码的描述
TotalCountNumber100发送总条数
TotalPageNumber10总页数
smsSendDetailDTOsObject-发送明细结构体,详见Demo样例


Demo样例

出参名称出参类型样例取值参数说明
phoneNumString13000000000手机号码
sendStatusNumber1发送状态 1:等待回执,2:发送失败,3:发送成功
errCodeStringDELIVERED运营商短信错误码
templateCodeStringSMS_000模板ID
contentString【阿里云】你好!短信内容
sendDateObject2017-05-25 00:00:00发送时间
receiveDateString2017-05-25 00:00:00接收时间
outIdString123外部流水扩展字段


技术对接步骤



1:下载SDK工具包


SDK工具包中一共包含了2个类库,一个aliyun-php-sdk-core包,另外一个是alicom-dysms-api包,将这两个包添加到工程类库中依赖。
SDK&DEMO[ 下载地址]

2: 编写样例程序

<pre style='background: rgb(246, 246, 246); font: 12px/1.6 "YaHei Consolas Hybrid", Consolas, "Meiryo UI", "Malgun Gothic", "Segoe UI", "Trebuchet MS", Helvetica, monospace, monospace; padding: 10px; outline: 0px; border-radius: 3px; border: 1px solid rgb(221, 221, 221); color: rgb(51, 51, 51); text-transform: none; text-indent: 0px; letter-spacing: normal; overflow: auto; margin-top: 0px; margin-right: 0px; margin-bottom: 0px !important; margin-left: 0px; word-spacing: 0px; white-space: pre-wrap; word-wrap: break-word; box-sizing: border-box; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;' prettyprinted?="" linenums="">
  1.     //此处需要替换成自己的AK信息
  2.     $accessKeyId = "yourAccessKeyId";//请参考本文档步骤2
  3.     $accessKeySecret = "yourAccessKeySecret";//请参考本文档步骤2
  4.     //短信API产品名(短信产品名固定,无需修改)
  5.     $product = "Dysmsapi";
  6.     //短信API产品域名(接口地址固定,无需修改)
  7.     $domain = "dysmsapi.aliyuncs.com";
  8.     //暂时不支持多Region(目前仅支持cn-hangzhou请勿修改)
  9.     $region = "cn-hangzhou";
  10.     //初始化访问的acsCleint
  11.     $profile = DefaultProfile::getProfile($region, $accessKeyId, $accessKeySecret);
  12.     DefaultProfile::addEndpoint("cn-hangzhou", "cn-hangzhou", $product, $domain);
  13.     $acsClient= new DefaultAcsClient($profile);
  14.     $request = new Dysmsapi\Request\V20170525\QuerySendDetailsRequest();
  15.     //必填-短信接收号码
  16.     $request->setPhoneNumber("15000000000");
  17.     //选填-短信发送流水号
  18.     $request->setBizId("abcdefgh");
  19.     //必填-短信发送日期,支持近30天记录查询,格式yyyyMMdd
  20.     $request->setSendDate("20170525");
  21.     //必填-分页大小
  22.     $request->setPageSize(10);
  23.     //必填-当前页码
  24.     $request->setCurrentPage(1);
  25.     //发起访问请求
  26.     $acsResponse = $acsClient->getAcsResponse($request);

展开
收起
nicenelly 2017-10-25 11:41:15 2670 分享 版权
阿里云 AI 助理回答

根据您的描述,您想了解如何使用阿里云的短信服务(SMS)查询发送记录的接口及其参数、出参详情以及技术对接步骤。下面我将为您提供详细的说明和指导:

短信发送记录查询接口(QuerySendDetails)

入参列表

  1. PhoneNumber (String): 必填。表示短信接收号码,例如:15000000000
  2. BizId (String): 可选。发送流水号,从调用发送接口返回值中获取,例如:1234^1234
  3. SendDate (String): 必填。短信发送日期,格式为yyyyMMdd,支持最近30天记录查询,例如:20170525
  4. PageSize (Number): 必填。页大小,最大值为50,例如:10
  5. CurrentPageNumber (Number): 必填。当前页码,例如:1

出参列表

  • RequestId (String): 请求ID,如:8906582E-6722
  • Code (String): 状态码,返回OK代表请求成功,其他错误码需参考错误码列表。
  • Message (String): 对状态码的描述信息。
  • TotalCount (Number): 发送总条数,例如:100
  • TotalPageNumber (Number): 总页数,例如:10
  • smsSendDetailDTOs (Object): 发送明细结构体数组,包含每条短信的详细信息。

Demo样例中的出参结构

  • phoneNum (String): 手机号码,例如:13000000000
  • sendStatus (Number): 发送状态,1:等待回执,2:发送失败,3:发送成功,例如:1
  • errCode (String): 运营商短信错误码。
  • templateCode (String): 模板ID,例如:SMS_000
  • content (String): 短信内容,例如:【阿里云】你好!短信内容。
  • sendDate (Object/时间对象): 发送时间,例如:2017-05-25 00:00:00
  • receiveDate (String): 接收时间,例如:2017-05-25 00:00:00
  • outId (String): 外部流水扩展字段,例如:123

技术对接步骤

  1. 下载SDK工具包: 首先,您需要访问阿里云官方文档或SDK下载页面,找到适用于您开发语言的SDK(以PHP为例),通常包括aliyun-php-sdk-core基础库和特定服务的库,如alicom-dysms-api。将这些类库添加到您的项目依赖中。

  2. 配置SDK: 在您的代码中引入必要的命名空间,并配置阿里云AccessKey ID、AccessKey Secret等认证信息,这是与阿里云服务交互的基础。

  3. 编写查询代码: 使用SDK提供的方法构造查询请求,传入上述提到的入参,如PhoneNumber、SendDate等,然后调用QuerySendDetails方法发起请求。

  4. 处理响应: 根据返回的出参进行逻辑处理,比如展示发送记录、分析发送状态等。

  5. 异常处理: 不要忘记对可能发生的网络错误、API调用错误等进行捕获和处理,确保程序的健壮性。

具体代码示例和更详细的说明可以参考阿里云官方文档中关于短信服务SDK的使用指南,那里会有完整的示例代码和配置说明,帮助您快速完成技术对接。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答