热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

sip协议详解_基于SIP协议的媒体录音规范12个应用场景SIPREC/RFC6341详解

在SIPREC的规范中,它说明了几个基于SIP的录音使用场景。这些场景都可以支持SIPREC规范RFC6341。在此规范中,一些必要的定义需要再次说明一

在SIPREC的规范中,它说明了几个基于SIP的录音使用场景。这些场景都可以支持SIPREC规范RFC6341。在此规范中,一些必要的定义需要再次说明一下:

  • SRS-全称是Session Recording Server,它是一个具体的媒体服务器或媒体采集服务器,是一个用户代理,同时汇总各种媒体流的metadata。SRS典型的部署方式是一个多口可拓展的服务器类型。
  • SRC-全称是Session Recording Client,它是一个SIP用户代理,负责对服务器端发送媒体流数据,它本身是一个逻辑功能单元,可以支持多个物理设备,在实际应用环境中,SRC可以是SIP终端话机,媒体网关或者SBC。SRC同时对SRS服务器发送metadata。
  • Communication Session (CS),通信会话创建于一个SIP或者多个用户代理之间的会话,是一个正在被录音的会话。

关于SRS,SRC和CS直接的关系,读者可查阅此示例:

28633ad70cde9a79456a22c97e88cb3a.png

在RFC6341中说明了12个应用场景,每一种场景都包含了具体的描述。

65e7acab1953a3b0ff90c883174c4825.png
  1. 全时录音:对RS对一个CS(参考以下示例),系统对所有呼叫进行录音,典型的应用场景包括呼叫中心,企业客服和金融呼叫流程等。
c50dc40a22e96cc29af2d2d80d50b133.png
  1. 选择性录音:当CS录音创建后,启动RS录音。如果CS没有启动,系统不会录音。
  2. 停止启动录音:当呼叫在CS期间时,可以启动停止RS录音。系统可以通过用户界面按钮或者其他热键启动录音。这里注意,在CS期间,可能会生成一个或者多个RS录音。
f93f19a2b8d8522dbe469f21e8c7e260.png
  1. 持续录音:一个RS可以捕捉一个或多个CS录音。此录音方式通常应用于某些场景中,例如前台总机,转每个特定的分机号码或者呼叫。整个RS需要对多个环节中的终端录音,包括了转接时的静音等。最后,这些录音的metadata可以关联在一起,录音文件可以合并。这里可能涉及了编码协商的流程。
a54f5c158feaa353aa88dfd5db4c19d0.png
  1. 实时录音控制:在RS录音期间,如果有特别业务要求,某些个人隐私或者安全信息不能录音时,实时录音控制方式可以停止对某一段时间内的录音暂停/关闭,需要时重新开启。信用卡信息输入就是一个比较常见的例子,如果用户需要对系统服务人员报信用卡或者其他身份信息时就要暂停录音。
  2. IVR入口录音:对系统IVR进行录音,包括其metadata等。
  3. 企业移动端录音:系统对企业办公人员进行录音。这些员工可能经常不在办公室环境中上班,他们经常使用移动端和企业呼叫中心或者通信系统进行沟通,这些员工的呼叫需要被录音。比较常见的场景包括销售人员,保险销售等。
  4. 分布式录音或集中式录音:一些企业,银行,连锁机构等办公系统的电话呼叫需要通过部署在不同地区或者集中管理的电话系统进行呼叫。系统需要对呼叫进行录音,并且对其每个RS的metadata进行存储。这样方便管理每一个呼叫和其相关人分机。
  5. 复杂呼叫流程:复杂呼叫流程是一个比较抽象的说法,没有特别具体的定义,此场景比较灵活,宽泛。简单来说,一个呼叫进入到系统用户,客户电话可能首先被前台人员接听,然后转到具体的座席人员。如果座席人家不能回答客户问题的话,座席人员可能需要再呼叫座席人员的主管,主管来接听客户的电话。座席人员在此呼叫流程中需要让执行呼叫停靠,然后再呼叫他/她的主管,主管接听客户电话以后,座席挂机。整个流程称之为复杂呼叫流程,所有的呼叫都需要录音,并且SRC需要对SRS发送所有的metadata数据。
  6. 高可靠性和持续录音:根据用户的需求,此应用场景需要SRS服务器端一直保持工作状态,失效还原功能。所有创建的呼叫都能录音。此场景要求SRS服务器端必须持续工作,无呼叫录音服务丢失。
  7. 对通道和多会话录音:一些应用场景要求媒体录音是一个或者多个文件,可以实现同步存储或者回放等功能。语音识别引擎可以对其明显特定的媒体执行ASR/TTS处理。一些多渠道融合的呼叫中心或者IPPBX环境中可能需要对视频,IM,其他数据文件进行存储。为了节省存储空间,一些应用场景中可能需要仅多某些终端在某个特定时间段进行录音。
  8. 实时媒体处理:此场景在当前的呼叫中心或客服系统中应用比较广泛。SRS服务器端必须有能力支持语音识别引擎工具,这些侦查工具可以对某一段媒体进行ASR处理,如果发现其录音中带有比较敏感的词,或者客服人员态度语气有问题,应用系统的主管人员可以及时处理。通过SIPREC的metadata可以非常方便快捷地查询到客服人员的电话座席。

当然,实现以上基于SIPREC录音解决方案的话,此规范有31个要求。笔者这里不立场31个具体的要求,读者可以查阅RFC6341。



推荐阅读
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了RPC框架Thrift的安装环境变量配置与第一个实例,讲解了RPC的概念以及如何解决跨语言、c++客户端、web服务端、远程调用等需求。Thrift开发方便上手快,性能和稳定性也不错,适合初学者学习和使用。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 利用Visual Basic开发SAP接口程序初探的方法与原理
    本文介绍了利用Visual Basic开发SAP接口程序的方法与原理,以及SAP R/3系统的特点和二次开发平台ABAP的使用。通过程序接口自动读取SAP R/3的数据表或视图,在外部进行处理和利用水晶报表等工具生成符合中国人习惯的报表样式。具体介绍了RFC调用的原理和模型,并强调本文主要不讨论SAP R/3函数的开发,而是针对使用SAP的公司的非ABAP开发人员提供了初步的接口程序开发指导。 ... [详细]
  • 本文介绍了在mac环境下使用nginx配置nodejs代理服务器的步骤,包括安装nginx、创建目录和文件、配置代理的域名和日志记录等。 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
author-avatar
涛涛哈帅_365
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有