php语音回呼话单通知,语音回呼呼叫状态通知API

2023-11-22 12:40

本文主要是介绍php语音回呼话单通知,语音回呼呼叫状态通知API,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

语音回呼场景请求参数

语音回呼,也叫双向回呼,用户使用语音回呼软件呼叫另一方,语音通话平台依次呼叫主被叫号码,建立通话,实现主被叫号码间的点对点通信。

注:以下流程以用户A请求呼叫用户B,语音通话平台依次呼叫主叫号码A和被叫号码B,B用户接听为例。流程和接口示例仅供参考,请以实际消息为准。

8539e7b11a7ae0f28e56c7b85a0c5183.png

表2请求Body参数说明参数名称

是否必选

参数类型

说明

statusInfo

CallStatusInfo

呼叫状态事件的信息。

当eventType参数为callout、alerting、answer、disconnect时携带。

CallStatusInfo

表3callout:呼出事件参数名称

是否必选

参数类型

说明

timestamp

String(1-128)

该呼叫事件发生时语音通话平台的UNIX时间戳。

该参数取值为UTC时间(+8小时为北京时间)格式,即为“yyyy-MM-dd HH:mm:ss”。

userData

String(1-256)

用户附属信息,此参数的值与“语音回呼场景API”中的"userData"参数值一致。

sessionId

String(1-256)

唯一指定一条通话链路的标识ID。

caller

String(1-32)

主叫号码。

号码仅支持全局号码格式(包含国家码),比如+86138****7021。

注:

语音回呼业务:

语音通话平台呼叫A时的呼出事件主叫号码为SP设置的主叫端来电显示号码(displayNbr)。

语音通话平台呼叫B时的呼出事件主叫号码为SP设置的被叫端来电显示号码(displayCalleeNbr)。

号显回呼业务:

语音通话平台呼叫A时的呼出事件主叫号码为平台号码(bindNbr)。

语音通话平台呼叫B时的呼出事件主叫号码为用户A号码。

called

String(1-32)

被叫号码。

号码仅支持全局号码格式(包含国家码),比如+86138****7021。

注:语音回呼场景

语音通话平台呼叫A时的呼出事件被叫号码为A。

语音通话平台呼叫B时的呼出事件被叫号码为B。

接口示例

POST /status HTTP/1.1

Content-Length: xx

{"eventType":"callout","statusInfo":{"sessionId":"1201_612_4294967295_20190124030424@callenabler245.huaweicaas.com","timestamp":"2019-01-24 03:04:24","caller":"+86138****0022","called":"+86138****0021"}}

表4alerting:振铃事件参数名称

是否必选

参数类型

说明

timestamp

String(1-128)

该呼叫事件发生时语音通话平台的UNIX时间戳。

该参数取值为UTC时间(+8小时为北京时间)格式,即为“yyyy-MM-dd HH:mm:ss”。

userData

String(1-256)

用户附属信息,此参数的值与“语音回呼场景API”中的"userData"参数值一致。

sessionId

String(1-256)

唯一指定一条通话链路的标识ID。

caller

String(1-32)

主叫号码。

号码仅支持全局号码格式(包含国家码),比如+86138****7021。

注:

语音回呼业务:

语音通话平台呼叫A时的振铃事件主叫号码为SP设置的主叫端来电显示号码(displayNbr)。

语音通话平台呼叫B时的振铃事件主叫号码为SP设置的被叫端来电显示号码(displayCalleeNbr)。

号显回呼业务:

语音通话平台呼叫A时的振铃事件主叫号码为平台号码(bindNbr)。

语音通话平台呼叫B时的振铃事件主叫号码为用户A号码。

called

String(1-32)

被叫号码。

号码仅支持全局号码格式(包含国家码),比如+86138****7021。

注:语音回呼场景

语音通话平台呼叫A时的振铃事件被叫号码为A。

语音通话平台呼叫B时的振铃事件被叫号码为B。

接口示例

POST /status HTTP/1.1

Content-Length: xx

{"eventType":"alerting","statusInfo":{"sessionId":"1201_612_4294967295_20190124030424@callenabler245.huaweicaas.com","timestamp":"2019-01-24 03:04:26","caller":"+86138****0022","called":"+86138****0021"}}

表5answer:应答事件参数名称

是否必选

参数类型

说明

timestamp

String(1-128)

该呼叫事件发生时语音通话平台的UNIX时间戳。

该参数取值为UTC时间(+8小时为北京时间)格式,即为“yyyy-MM-dd HH:mm:ss”。

userData

String(1-256)

用户附属信息,此参数的值与“语音回呼场景API”中的"userData"参数值一致。

sessionId

String(1-256)

唯一指定一条通话链路的标识ID。

caller

String(1-32)

主叫号码。

号码仅支持全局号码格式(包含国家码),比如+86138****7021。

注:

语音回呼业务:

语音通话平台呼叫A时的应答事件主叫号码为SP设置的主叫端来电显示号码(displayNbr)。

语音通话平台呼叫B时的应答事件主叫号码为SP设置的被叫端来电显示号码(displayCalleeNbr)。

号显回呼业务:

语音通话平台呼叫A时的应答事件主叫号码为平台号码(bindNbr)。

语音通话平台呼叫B时的应答事件主叫号码为用户A号码。

called

String(1-32)

被叫号码。

号码仅支持全局号码格式(包含国家码),比如+86138****7021。

注:语音回呼场景

语音通话平台呼叫A时的应答事件被叫号码为A。

语音通话平台呼叫B时的应答事件被叫号码为B。

接口示例

POST /status HTTP/1.1

Content-Length: xx

{"eventType":"answer","statusInfo":{"sessionId":"1201_612_4294967295_20190124030424@callenabler245.huaweicaas.com","timestamp":"2019-01-24 03:04:31","caller":"+86138****0022","called":"+86138****0021"}}

表6disconnect:挂机事件参数名称

是否必选

参数类型

说明

timestamp

String(1-128)

该呼叫事件发生时语音通话业务平台的UNIX时间戳。

该参数取值为UTC时间(+8小时为北京时间)格式,即为“yyyy-MM-dd HH:mm:ss”。

userData

String(1-256)

用户附属信息,此参数的值与“语音回呼场景API”中的"userData"参数值一致。

sessionId

String(1-256)

唯一指定一条通话链路的标识ID。

caller

String(1-32)

主叫号码。

号码仅支持全局号码格式(包含国家码),比如+86138****7021。

注:

语音回呼业务:

若A先挂机,则挂机事件主叫号码为SP设置的主叫端来电显示号码(displayNbr);若B先挂机,则挂机事件主叫号码为SP设置的被叫端来电显示号码(displayCalleeNbr)。

号显回呼业务:

若A先挂机,则挂机事件主叫号码为平台号码(bindNbr);若B先挂机,则挂机事件主叫号码为用户A号码。

called

String(1-32)

被叫号码。

号码仅支持全局号码格式(包含国家码),比如+86138****7021。

注:

语音回呼场景,若A先挂机,则挂机事件被叫号码为A号码;若B先挂机,则挂机事件被叫号码为B号码。

partyType

String(枚举)

当通知类型“eventType”为“disconnect”且客户调用“语音回呼场景API”时将“partyTypeRequiredInDisconnect”参数设置为“true”时才会携带。

取值范围如下:

caller:主叫

callee:被叫

platform:平台

stateCode

Integer

通话挂机的原因值,仅当eventType为disconnect时携带。

取值范围及表示的含义请参考通话挂机原因值说明。

stateDesc

String(1-128)

通话挂机的原因值的描述,仅当eventType为disconnect时携带。

接口示例

POST /status HTTP/1.1

Content-Length: xx

{"eventType":"disconnect","statusInfo":{"sessionId":"1201_612_4294967295_20190124030424@callenabler245.huaweicaas.com","timestamp":"2019-01-24 03:04:49","caller":"+86138****0022","called":"+86138****0021","stateCode":0,"stateDesc":"The user releases the call."}}

这篇关于php语音回呼话单通知,语音回呼呼叫状态通知API的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/410229

相关文章

PHP轻松处理千万行数据的方法详解

《PHP轻松处理千万行数据的方法详解》说到处理大数据集,PHP通常不是第一个想到的语言,但如果你曾经需要处理数百万行数据而不让服务器崩溃或内存耗尽,你就会知道PHP用对了工具有多强大,下面小编就... 目录问题的本质php 中的数据流处理:为什么必不可少生成器:内存高效的迭代方式流量控制:避免系统过载一次性

PHP应用中处理限流和API节流的最佳实践

《PHP应用中处理限流和API节流的最佳实践》限流和API节流对于确保Web应用程序的可靠性、安全性和可扩展性至关重要,本文将详细介绍PHP应用中处理限流和API节流的最佳实践,下面就来和小编一起学习... 目录限流的重要性在 php 中实施限流的最佳实践使用集中式存储进行状态管理(如 Redis)采用滑动

JWT + 拦截器实现无状态登录系统

《JWT+拦截器实现无状态登录系统》JWT(JSONWebToken)提供了一种无状态的解决方案:用户登录后,服务器返回一个Token,后续请求携带该Token即可完成身份验证,无需服务器存储会话... 目录✅ 引言 一、JWT 是什么? 二、技术选型 三、项目结构 四、核心代码实现4.1 添加依赖(pom

Go语言使用net/http构建一个RESTful API的示例代码

《Go语言使用net/http构建一个RESTfulAPI的示例代码》Go的标准库net/http提供了构建Web服务所需的强大功能,虽然众多第三方框架(如Gin、Echo)已经封装了很多功能,但... 目录引言一、什么是 RESTful API?二、实战目标:用户信息管理 API三、代码实现1. 用户数据

Python用Flask封装API及调用详解

《Python用Flask封装API及调用详解》本文介绍Flask的优势(轻量、灵活、易扩展),对比GET/POST表单/JSON请求方式,涵盖错误处理、开发建议及生产环境部署注意事项... 目录一、Flask的优势一、基础设置二、GET请求方式服务端代码客户端调用三、POST表单方式服务端代码客户端调用四

SpringBoot结合Knife4j进行API分组授权管理配置详解

《SpringBoot结合Knife4j进行API分组授权管理配置详解》在现代的微服务架构中,API文档和授权管理是不可或缺的一部分,本文将介绍如何在SpringBoot应用中集成Knife4j,并进... 目录环境准备配置 Swagger配置 Swagger OpenAPI自定义 Swagger UI 底

使用Python的requests库调用API接口的详细步骤

《使用Python的requests库调用API接口的详细步骤》使用Python的requests库调用API接口是开发中最常用的方式之一,它简化了HTTP请求的处理流程,以下是详细步骤和实战示例,涵... 目录一、准备工作:安装 requests 库二、基本调用流程(以 RESTful API 为例)1.

深度解析Nginx日志分析与499状态码问题解决

《深度解析Nginx日志分析与499状态码问题解决》在Web服务器运维和性能优化过程中,Nginx日志是排查问题的重要依据,本文将围绕Nginx日志分析、499状态码的成因、排查方法及解决方案展开讨论... 目录前言1. Nginx日志基础1.1 Nginx日志存放位置1.2 Nginx日志格式2. 499

SpringBoot监控API请求耗时的6中解决解决方案

《SpringBoot监控API请求耗时的6中解决解决方案》本文介绍SpringBoot中记录API请求耗时的6种方案,包括手动埋点、AOP切面、拦截器、Filter、事件监听、Micrometer+... 目录1. 简介2.实战案例2.1 手动记录2.2 自定义AOP记录2.3 拦截器技术2.4 使用Fi

Go语言并发之通知退出机制的实现

《Go语言并发之通知退出机制的实现》本文主要介绍了Go语言并发之通知退出机制的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1、通知退出机制1.1 进程/main函数退出1.2 通过channel退出1.3 通过cont