- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
卷1 :第1章 Asterisk
Asterisk
Russell Bryant
Asterisk 1是基于GPLv2协议发布的⼀款开源电话应⽤平台。简单地说,这是⼀个服务
端程序,⽤于 理电话的拨出、接⼊以及⾃定义流程。
此项⽬由Mark Spencer于1999年创始。当时Mark有⼀个⾃⼰的公司,叫做Linux⽀持服
务公司,他需要⼀个电话系统来帮助⾃⼰操作业务。但他没有那么多钱去买这样⼀个
系统,因此他决定⾃⼰做。随着Asterisk知名度的提升,Linux⽀持服务公司的业务重
点也转向Asterisk ,公司也更名为Digium 。
Asterisk得名于Unix通配符: ,该项⽬的宗旨是能做所有与电话相关的事情。通过对
⾃⼰宗旨的不懈追求,如今的Asterisk 已经⽀持⼀系列⽤于接拨电话的技术。这些技术
包括诸多VoIP (Voice over IP ,语⾳IP )协议,与传统电话⽹络的模/数连接性,以及
PSTN (Public Swithed Telephone Network ,公共交换电话⽹络)。对多种不同类型电
话的拨出与接⼊能⼒是Asterisk 的拿⼿好戏之⼀。
当Asterisk系统有电话接⼊或拨出时,系统有很多附加特性可⽤于电话的⾃定义 理。
有些特性是较⼤型的预置常⽤应⽤,如语⾳邮件 (voicemail );另外还有⼀些⼩特
性,可配合使⽤,⽤于创建⾃定义应⽤,如回放⾳频⽂件、读数字按键、语⾳识别
等。
1.1 关键架构概念
本节讨论⼀些跟Asterisk每⼀部分息息相关的架构概念。这些思想是Asterisk架构的基
础。
1.1.1 通道
在Asterisk 中,通道表⽰Asterisk系统与某电话端点的⼀条连接 (如图1)。⼀个最常见
的例⼦是,⼀路电话呼叫接⼊了Asterisk系统,就⽤通道表⽰这⼀连接。在Asterisk代
码中,通道是数据结构ast_channel的实例。图中这个呼叫场景可以视为呼叫⽅与某⼀
系统应⽤ (⽐如语⾳邮件)的交互。
图1.2 两个通道表⽰两条呼叫线路
如上图连接的Asterisk通道称之为通道桥接。为了达到在通道间传输媒体的⽬的⽽把通
道连接起来,这样的⾏为即称为通道桥接。然⽽,在电话呼叫过程中也可能有视频或
⽂本的数据流。即使有多于⼀种类型的媒体流,也是由Asterisk系统中负责呼叫连接两
端的通道独⽴ 理。在图1.2 中,两个通道分别对应电话A和电话B ,桥接的作⽤是将
媒体从电话A传输到电话B ,同理也可从电话A传输到电话B 。所有的媒体流都是通过
Asterisk系统传输的。Asterisk不允许传输⽆法识别或不能完全控制的媒体流。这意味
着Asterisk可以做如下事情:记录媒体、 理⾳频、在不同技术间进⾏转换等。
有两种⽅法可以完成两个通道的桥接:通⽤桥接和专⽤桥接。通⽤桥接时,⽆论通道
使⽤的什么技术都能够⼯作。它通过Asterisk 的抽象通道接⼜传输所有的⾳频和信号。
尽管这是⼀种最灵活的桥接⽅式,却是最低效的,因为完成桥接必须有多层抽象。图
1.2描述的就是通⽤桥接。
专⽤桥接是⾯向特定技术的通道连接⽅式。如果连接到Asterisk 的两个通道使⽤相同的
媒体传输技术,则势必有⼀种⽐通过抽象层更为⾼效的连接⽅式,因为抽象层是为使
⽤不同技术的通道之间连接⽽准备的。例如,如果有这样⼀种专业化硬件⽤于连接电
话⽹络,那么在硬件上桥接通道就成为了可能,媒体流根本⽆需通过应⽤程序。对于
某些VoIP协议⽽⾔,可能通过端点向对⽅直接发送媒体流,这时只有呼叫信号的信息
是不断流过服务器的。
在桥接两个通道的时候,系统通过⽐较两通道来决定使⽤通⽤桥接还是专⽤桥接。如
果两通道都标识出⽀持同⼀种专⽤桥接⽅式,那么就是⽤专⽤桥接;反之使⽤通⽤⽅
式。判决两通道是否⽀持同⼀种专⽤桥接⽅式,通过简单的⽐较C函数指针即可做
到。此法固然绝⾮上策,但我们还没有遇到不适⽤此法的情况。1.2部分还要讨论更多
有关专⽤桥接函数的细节。图1.3描述的是专⽤桥接的⼀个实例。
图1.4 通道技术层和抽象通道层
ast_channel_tech中最重要的⽅法有:
requester:回调函数,⽤于请求某个通道驱动实例化⼀个ast_channel对象,并针
对其类型进⾏初始化。
call:回调函数,⽤于从端点 (由ast_channel表⽰)发起⼀个拨出呼叫。
answer:Asterisk决定对接⼊的呼叫进⾏应答 (与该ast
您可能关注的文档
- 基于PC机及单片机的激光加工机控制系统.pdf
- 仿真物理实验室用户手册教材.pdf
- 基于PHP的WEB应用系统单点登录的研究和实现.pdf
- 分包机和HIS系统的接口_DB.pdf
- 基于PSTN时间认证系统的设计和实现.pdf
- 分布式_XMPP_Server解析.ppt
- 基于R语言的NetCDF文件分析及可视化应用.pdf
- 分布式数据库 Hbase 的高可用管理及监控.docx
- 分布式文件系统与其部署.docx
- 分布式应急调度系统的设计和实现.pdf
- 2026年哈尔滨启航劳务派遣有限公司派遣到哈尔滨工业大学商学院招聘备考题库完整答案详解.docx
- 2026年和龙市人民检察院公开招聘聘用制工作人员的备考题库及一套答案详解.docx
- 2026年南海区桂城街道文翰第三小学教师招聘备考题库有答案详解.docx
- 2026年中国科学院力学研究所SKZ专项办公室人员招聘备考题库及答案详解(考点梳理).docx
- 2026年南京医科大学公开招聘人员备考题库带答案详解.docx
- 2026年华中师范大学智能健康交叉科学中心公开招聘主任助理备考题库(含答案详解).docx
- 2026年南通轨道交通集团有限公司运营分公司公开招聘工作人员的备考题库及1套完整答案详解.docx
- 2026年中国科大财务处劳务派遣岗位招聘备考题库及参考答案详解一套.docx
- 2026年中央国家机关某部委所属事业单位招聘高校毕业生备考题库中国科学院大学就业指导中心及完整答案详.docx
- 2026年中国科学院心理研究所国民心理健康评估发展中心招聘备考题库及参考答案详解.docx
最近下载
- 《2013年建设工程工程量清单计价规范》GB50500-2013.pdf VIP
- 2025年南京市教师招聘考试公共知识试题卷(含历年真题赠送).docx
- 生物命题培训课件.pptx VIP
- Schneider施耐德安装和操作手册-ATV930 ATV950 御程系列变频器安装手册.pdf
- 2025年国考《行测》真题及完整答案详解【夺冠系列】.docx
- J-BT 10466-2020星形弹性联轴器.PDF VIP
- 数据容灾备份中心建设方案书.docx VIP
- 卫生服务中心“十五五”五年中长期发展规划(2025-2029年).pptx
- 第十一章 地层与地层单位.ppt VIP
- 石膏板生产线联合车间车间施工组织设计.doc VIP
原创力文档


文档评论(0)