<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[水到渠成的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/austingao</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; austingao]]></copyright><item><title><![CDATA[Asterisk XML解析接口说明]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5790253</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5790253</guid><author>austingao</author><pubDate>Thu, 05 Aug 2010 12:05:00 +0800</pubDate><description><![CDATA[<br />XML解析库实现的初始化，是使用接口的前置工作。<br />int ast_xml_init(void);<br />清理为实现库分配的全局数据<br />int ast_xml_finish(void);<br /> 打开一个XML文档<br />struct ast_xml_doc *ast_xml_open(char *filename);<br /> 关闭一个已经打开的XML文档，释放其分配的内存<br />void ast_xml_close(struct ast_xml_doc *d]]></description><category></category></item><item><title><![CDATA[C语言中容易导致指针和内存泄露的几种出错]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5786050</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5786050</guid><author>austingao</author><pubDate>Tue, 03 Aug 2010 18:37:00 +0800</pubDate><description><![CDATA[<br /><br />1. 使用未初始化内存<br />   char *p = malloc(10);<br />   //未初始化之前10个字节可能包含垃圾数据，若被访问可能获得垃圾值，导致程序的不可预测的行为。<br />   良好的实践是通过memset与malloc结合，如下：<br />   char *p = malloc(10);<br />   memset(p,'/0',10);<br />2. 内存覆盖<br />   对于1中的p分配了10个字节，如果某个代码片段尝试向p写入一个1]]></description><category></category></item><item><title><![CDATA[多方通话拨号方案设计参考]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5774655</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5774655</guid><author>austingao</author><pubDate>Thu, 29 Jul 2010 19:01:00 +0800</pubDate><description><![CDATA[<br />[confserv]<br />exten => _XXXX,1,Set(DYNAMIC_FEATURES=nway-start) <br />exten => _XXXX,n,Dial(SIP/${EXTEN}) <br />[dynamic-nway] <br />exten => _1199,1,noop(dynamic-nway) <br />exten => _1199,n,Answer() <br />exten => _1199,n,Set(MEETME_EXIT_CONTEXT=]]></description><category></category></item><item><title><![CDATA[Asterisk Originate 内部执行流程]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5774635</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5774635</guid><author>austingao</author><pubDate>Thu, 29 Jul 2010 18:52:00 +0800</pubDate><description><![CDATA[<br />1. originate的执行<br />向客户端发起呼叫，将客户端引入到Dialplan中，并从exten的首项开始执行，进行一系列操作。虽然客户端是被动接受，但此过程相当于主动拨入的过程。Originate call可用于任何UI对某个客户端发起呼叫，也可以邀请他人加入某个会话当中。下面以AMI方式发起Originate call.<br /><br />1) 在AMI上发起Originate呼叫命令，Channel、Context、Exten、Priority是必须设定项。<br />2)]]></description><category></category></item><item><title><![CDATA[Asterisk安装指南]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5774623</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5774623</guid><author>austingao</author><pubDate>Thu, 29 Jul 2010 18:44:00 +0800</pubDate><description><![CDATA[ 1 Asterisk及相关软件安装1.1 下载Asterisk及相关软件可从Asterisk官方网站http://www.asterisk.org/downloads下载；也可以从http://downloads.asterisk.org/pub/telephony/网站找到你想要的Asterisk版本以及相关的依赖软件。服务器上使用的Asterisk及相关软件版本如下：软件说明版本源代码路径libpriAsterisk支持库1.4.10.2http://downloads.asterisk.org/pu]]></description><category></category></item><item><title><![CDATA[Asterisk通道简介(部分翻译)]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5772911</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5772911</guid><author>austingao</author><pubDate>Thu, 29 Jul 2010 09:15:00 +0800</pubDate><description><![CDATA[<br /> Asterisk如何定义通道：<br /> 通过Asterisk接通的电话包含一个呼入连接和呼出连接，每个通道都是来自于通过某种类型的通道驱动生成，而该通道的类型在技术上<br /> 可以支持SIP，DAHDI，IAX等。每种技术上支持的通道驱动都有一个专有通道，并且拥有私有的数据存储结构，技术上独立的，不同类型的<br /> 通道驱动之间不存在相互依赖的关系，按照Asterisk通道编写接口标准，你可以自己编写某种类型的通道，例如GSM通道。在Asterisk中，所有<br /> 的专用通道]]></description><category></category></item><item><title><![CDATA[AsteriskNow]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5772012</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5772012</guid><author>austingao</author><pubDate>Wed, 28 Jul 2010 18:04:00 +0800</pubDate><description><![CDATA[AsteriskNow简介AsteriskNow是以最快捷的方式建立基于Asterisk的电话系统解决方案。AsteriskNow是一个完整的Linux发布版本，其中集成了Asterisk服务器、DAHDI驱动框架、管理GUI、Mysql数据库、Apache服务器以及包括了多种开发工具与组件。下图是AsteriskNow前端截取界面：AsteriskNow系统架构AsteriskNow的架构是基于LMAP(Linux-Apache-MySQL-PHP)，LAMP框架是当前软件开发的一种重要模式。LAMP中的]]></description><category></category></item><item><title><![CDATA[简单思考如何编写描述一个模块]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5771990</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5771990</guid><author>austingao</author><pubDate>Wed, 28 Jul 2010 17:54:00 +0800</pubDate><description><![CDATA[<br />1）产生该模块的缘由？<br />2）该模块完成什么样的功能?<br />3）该模块完成需求的功能所需要的前提条件是什么，即该模块依赖的前置工作什么？<br />4）大体描述该模块通过怎么样才能完成需求中的功能？<br />5）该模块完成需求中的功能，需要的执行步骤有那些，这些执行步骤是否可以划分为单独的小模块，这些小模块的耦合度如何,实现功能的架构如何？<br />6）该模块的输出是什么，或者给下一个模块编写提供功能接口？<br />7）该模块是否提供了安全控制机制，设计的是时候是否考虑了这方]]></description><category></category></item><item><title><![CDATA[Asterisk AGI脚本]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5764442</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5764442</guid><author>austingao</author><pubDate>Sun, 25 Jul 2010 14:24:00 +0800</pubDate><description><![CDATA[   AGI脚本用于开发复杂的IVR应用。AGI脚本与Asterisk之间通过两个标准的数据流交互，一是STDIN(标准输入)，二是STDOUT(标准输出)。从AGI脚本角度看，任何来自Asterisk的数据可以称之为STDIN，任何向Asterisk的输出可称之为STDOUT。也可以认为是通过读命令从Asterisk读取数据，通过写命令向Asterisk写入数据。AGI脚本可以支持多种语言来编写，例如通过Bash、Perl、PHP等脚本语言，也可以通过C/C++语言来编写。    Asterisk 拨号方]]></description><category></category></item><item><title><![CDATA["Tormenta" Switching and Conferencing Architecture]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5755161</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5755161</guid><author>austingao</author><pubDate>Thu, 22 Jul 2010 13:55:00 +0800</pubDate><description><![CDATA[<br />The "Tx" and "Rx" are referring to the actual streams going out to, and in from the channel on the T1. <br />The "Tx Buffer" and "Rx Buffer" are referring to the I/O buffers for the associated channel (that would be accessed via system read and write]]></description><category></category></item><item><title><![CDATA[Asterisk Callgroups and Pickupgroups-10]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5738928</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5738928</guid><author>austingao</author><pubDate>Fri, 16 Jul 2010 10:19:00 +0800</pubDate><description><![CDATA[<br />    Call and pickup group 允许他人应答呼叫<br />    可在mgcp，SIP，IAX，Skinny，DAHDI通道对应的话机中定义Call group 和 pickup group。Call and pickup group组功能只能在同一中类型的通道对应的话机中进行，<br />    例如多个SIP话机，但是IAX话机与SIP话机之间则不能执行该功能。基本的功能执行如下：<br />    1）位于某个Call group中的话机有来电呼叫<br />    ]]></description><category></category></item><item><title><![CDATA[SIP 成员参加会议过程-8]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5737291</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5737291</guid><author>austingao</author><pubDate>Thu, 15 Jul 2010 15:32:00 +0800</pubDate><description><![CDATA[SIP 成员参加会议过程]]></description><category></category></item><item><title><![CDATA[Fastagi使用-6]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5735133</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5735133</guid><author>austingao</author><pubDate>Wed, 14 Jul 2010 17:52:00 +0800</pubDate><description><![CDATA[<br />Asterisk支持多种语言实现AGI脚本，因此运行AGI脚本需要服务器支持脚本语言环境，例如某个AGI脚本是通过JAVA语言编写，那么服务器需要运行整个JAVA虚拟机环境。这给对于多个AGI脚本并发执行给服务器带来的负担是不可忽略的。那么是否可以提供一种机制，使得执行AGI脚本与运行Asterisk的服务器从物理上独立开来，即AGI脚本<br />在其他机器上执行，执行的结果送到Asterisk服务器，由AGI服务器与Asterisk服务器交互来完成命令的发起与执行动作。<br />Fasta]]></description><category></category></item><item><title><![CDATA[IAX versus SIP]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5731990</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5731990</guid><author>austingao</author><pubDate>Tue, 13 Jul 2010 15:59:00 +0800</pubDate><description><![CDATA[IAX versus SIP<br />Date: Mon, 5 Jul 2004 18:59:52 -0500 (CDT) <br />From: Mark Spencer <markster@digium.com> <br /><br />Let me summarize some differences between SIP and IAX, and it might help you make a decision about what is best for you. <br /><br />1]]></description><category></category></item><item><title><![CDATA[IPPBX功能之DID]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5731972</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5731972</guid><author>austingao</author><pubDate>Tue, 13 Jul 2010 15:55:00 +0800</pubDate><description><![CDATA[<br />当IPPBX外线有呼入时，IPPBX将根据呼入的目标号码将其路由到指定的分机，也可以将一系列目标号码路由到指定的分机，这样不必经过中间过程。]]></description><category></category></item><item><title><![CDATA[Switchvox的group pickup功能]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5728555</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5728555</guid><author>austingao</author><pubDate>Mon, 12 Jul 2010 11:42:00 +0800</pubDate><description><![CDATA[<br />号码可以分很多组，组的分配是任意的，可以是按部门或按研发部等。每个组可以设置一个组应答分机，通过组应答分机可以接起该组内其他分机的呼叫来电。例如，假定组应答分机为100，授权可接该组内的分机为111，该可能是秘书电话分机。组内号码有112,113。<br />加入112有来电，那么在分机111上拨打100可以接起112的来电。若112，113同时响铃，那么112将被优先接起来，这根据112,113在分机列表中的顺序，前者将被先应答。]]></description><category></category></item><item><title><![CDATA[Astersisk如何执行Parking a call功能-7]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5728331</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5728331</guid><author>austingao</author><pubDate>Mon, 12 Jul 2010 10:37:00 +0800</pubDate><description><![CDATA[首先需要在配置文件中设置驻留转接号码和驻留分机号，驻留转接号码类似于呼叫转移时转接的分机号，但执行结果却与呼叫转移不同。驻留分机号一般为一系列分机号码串，例如701-710。Asterisk默认的驻留转接分机号码为700，该驻留转接分机号可在配置文件中设置。当您接听电话时，环境比较嘈杂，您想换个地方接听，而呼叫转接不能给您足够的时间过去接听，这时您可以使用呼叫驻留功能，驻留功能设置了最大的驻留时间。按#号进行转移，然后拨700后Asterisk将提示分配该呼叫驻留的分机号码，假如701。然后被叫者挂机。被叫]]></description><category></category></item><item><title><![CDATA[一篇比较好的破解LINUX密码方法]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5722363</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5722363</guid><author>austingao</author><pubDate>Fri, 09 Jul 2010 09:16:00 +0800</pubDate><description><![CDATA[<br />1) Reboot the machine and hit any key when you see Grub kicking in. This will be after the BIOS checks but before any services start up.<br />2) You will now see a list of various kernels you can boot into, the first one in the list will probably be ]]></description><category></category></item><item><title><![CDATA[Asterisk postgresql voicemail]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5708802</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5708802</guid><author>austingao</author><pubDate>Fri, 02 Jul 2010 11:17:00 +0800</pubDate><description><![CDATA[<br />GETTING ODBC STORAGE WITH POSTGRESQL WORKING WITH VOICEMAIL<br /> <br />1) Install PostgreSQL, PostgreSQL-devel, unixODBC, and unixODBC-devel, and PostgreSQL-ODBC.  Make sure PostgreSQL is running and listening on a TCP socket.<br /> <br />2) Log int]]></description><category></category></item><item><title><![CDATA[Asterisk电子传真-5]]></title><link>https://blog.youkuaiyun.com/austingao/article/details/5708752</link><guid>https://blog.youkuaiyun.com/austingao/article/details/5708752</guid><author>austingao</author><pubDate>Fri, 02 Jul 2010 11:05:00 +0800</pubDate><description><![CDATA[<br /><br />    Asterisk自带传真功能，但需要第三方的软件支持。Asterisk是通过接在服务器上的语音卡发送或接受外部的传真信号。<br />    发传真<br />    Asterisk内部注册命令通过语音卡向对方传真机发起外呼，当对方传真机送回应答信号，电子文档将通过语音卡发到对方的传真机，被打印出来。<br />    收传真<br />    当语音卡收到外部呼入信号时对其解析如果是T38协议，则认为是传真信号，Asterisk传真通道对传真信号进行解析，调用语音卡回复<]]></description><category></category></item></channel></rss>