Chapter 1 A Telephony Revolution 一场电话系统的革命
Asterisk and VoIP: Bridging the Gap Between Traditional and Network Telephony 弥合传统电话与网络电话之间的差距
Massive Change Requires Flexible Technology 大规模变革需要灵活的技术
Asterisk: The Hacker’s PBX 黑客级别的PBX
Asterisk: The Professional’s PBX 专业级别的PBX
The Asterisk Community Asterisk社区
The Business Case 商业案例
Conclusion 结论
Chapter 2 Asterisk Architecture Asterisk架构
Modules 模块化
File Structure 文件结构
The Dialplan 拨号计划
Hardware 硬件
Asterisk Versioning Asterisk 版本
Conclusion 结论
Chapter 3 Installing Asterisk 安装Asterisk
Installation Cheat Sheet 安装备忘录
Distribution Installation 发行版安装
Software Dependencies 软件依赖
Downloading What You Need 下载你需要的
How to Install It 怎么去安装?
Base Configuration 基本配置
Updating Asterisk 更新Asterisk
Common Issues 常见问题
Upgrading Asterisk 升级Asterisk
Conclusion结论
Chapter 4 Initial Configuration Tasks 初始化配置任务
asterisk.conf
modules.conf
indications.conf
musiconhold.conf
Additional Configuration Files 额外的配置文件
Conclusion结论
Chapter 5 User Device Configuration用户终端设备的配置
Telephone Naming Concepts电话命名概念
Hardphones, Softphones, and ATAs硬件电话、软电话和ATAs
Configuring Asterisk配置Asterisk
Digium Phones with Asterisk Digium电话
Loading Your New Channel Configurations加载新的频道配置
Testing to Ensure Your Devices Have Registered测试确保你的设备已经注册成功
Analog Phones模拟电话
A Basic Dialplan to Test Your Devices用基本的拨号计划测试你的终端设备
Under the Hood: Your First Call在引擎盖下你的第一通电话
Conclusion结论
Chapter 6 Dialplan Basics基本的拨号计划
Dialplan Syntax拨号计划的语法
A Simple Dialplan一个简单的拨号计划
Building an Interactive Dialplan创建一个交互式的拨号计划
Conclusion结论
Chapter 7 Outside Connectivity连接外界
The Basics of Trunking基本的中继线
Fundamental Dialplan for Outside Connectivity连接外界的基本拨号计划
PSTN Circuits PSTN电路
VoIP
Emergency Dialing紧急呼叫
Conclusion结论
Chapter 8 Voicemail语音信箱
Comedian Mail滑稽的邮箱
Dialplan Integration拨号计划集成
Storage Backends后台存储
Using Asterisk as a Standalone Voicemail Server将Asterisk打造成一个独立的语音信箱系统
Database Integration数据库集成
Conclusion结论
Chapter 9 Internationalization国际化
Devices External to the Asterisk Server终端设备连接Asterisk服务
PSTN Connectivity, DAHDI, Digium Cards, and Analog Phones连接PSTN,DAHDI,Digium板卡和模拟电话
Asterisk
Conclusion—Easy Reference Cheat Sheet
Chapter 10 Deeper into the Dialplan深入理解拨号计划
Expressions and Variable Manipulation正则表达式与通道变量的操作
Dialplan Functions拨号计划函数
Conditional Branching条件分支
Macros
GoSub
Local Channels本地当前通道
Using the Asterisk Database (AstDB)使用AstDB数据库
Handy Asterisk Features方便的Asteris功能
Conclusion结论
Chapter 11 Parking, Paging, and Conferencing停泊,暂停与会议
features.conf
Overhead and “Underchin” Paging (a.k.a. Public Address)
Advanced Conferencing高级会议功能
Conclusion结论
Chapter 12 Internet Call Routing呼叫路由
DNS and SIP URIs
ENUM and E.164
ISN, ITAD, and freenum.org
Security and Identity安全与身份
Conclusion结论
Chapter 13 Automatic Call Distribution (ACD) Queues ACD队列
Creating a Simple ACD Queue
Queue Members
The queues.conf File
The agents.conf File
Advanced Queues
Queue Statistics: The queue_log File
Conclusion
Chapter 14 Device States
Device States
Extension States
SIP Presence
Using Custom Device States
Distributed Device States
Shared Line Appearances
Creating a Callback Service
Conclusion
Chapter 15 The Automated Attendant
An Auto Attendant Is Not an IVR
Designing Your Auto Attendant
Building Your Auto Attendant
Conclusion
Chapter 16 Relational Database Integration
Installing and Configuring PostgreSQL and MySQL
Installing and Configuring ODBC
Managing Databases
Powering Your Dialplan with func_odbc
A Gentle Introduction to func_odbc
Getting Funky with func_odbc: Hot-Desking
Using Realtime
Storing Call Detail Records (CDR)
ODBC Voicemail Message Storage
Database Integration of ACD Queues
Conclusion
Chapter 17 Interactive Voice Response
What Is IVR?
Components of an IVR
IVR Design Considerations
Asterisk Modules for Building IVRs
A Simple IVR Using CURL
A Prompt-Recording Application
Speech Recognition and Text-to-Speech
Conclusion
Chapter 18 External Services
Calendar Integration
Voicemail IMAP Integration
Using XMPP (Jabber) with Asterisk
Out-of-Band Messaging (Messaging Infrastructure)
LDAP Integration
Text-to-Speech Utilities
Conclusion
Chapter 19 Fax
What Is a Fax?
Ways to Handle Faxes in Asterisk
spandsp
Digium Fax For Asterisk
Incoming Fax Handling
Outgoing Fax Handling
Fax Pass-Through
Conclusion
Chapter 20 Asterisk Manager Interface (AMI)
Quick Start
Configuration
Protocol Overview
Call Files
Example Usage
Development Frameworks
Interesting Applications
Conclusion
Chapter 21 Asterisk Gateway Interface (AGI)
Quick Start
AGI Variants
AGI Communication Overview
Example: Account Database Access
Development Frameworks
Conclusion
Chapter 22 Clustering
Traditional PBXs
Hybrid Systems
Pure Asterisk, Nondistributed
Asterisk and Database Integration
Asterisk and Distributed Device States
Multiple Queues, Multiple Sites
Conclusion
Chapter 23 Distributed Universal Number Discovery (DUNDi)
How Does DUNDi Work?
The dundi.conf File
Configuring Asterisk for Use with DUNDi
Conclusion
Chapter 24 System Monitoring and Logging
logger.conf
Call Detail Records
CEL (Channel Event Logging)
SNMP
Conclusion
Chapter 25 Web Interfaces
Flash Operator Panel
Queue Status and Reporting
Call Detail Records
A2Billing
Conclusion
Chapter 26 Security
Scanning for Valid Accounts
Authentication Weaknesses
Fail2ban
Encrypted Media
Dialplan Vulnerabilities
Securing Asterisk Network APIs
IAX2 Denial of Service
Other Risk Mitigation
CLI Permissions
Resources
Conclusion—A Better Idiot
Chapter 27 Asterisk: A Future for Telephony
The Problems with Traditional Telephony
Paradigm Shift
The Promise of Open Source Telephony
The Future of Asterisk
Appendix Understanding Telephony
Analog Telephony
Digital Telephony
The Digital Circuit-Switched Telephone Network
Packet-Switched Networks
Conclusion
Appendix Protocols for VoIP
The Need for VoIP Protocols
VoIP Protocols
Codecs
Quality of Service
Echo
Asterisk and VoIP
VoIP Security
Conclusion
Appendix Preparing a System for Asterisk
Server Hardware Selection
Environment
Telephony Hardware
Types of Phones
Linux Considerations
Conclusion
Colophon