用Asterisk@Home组建VoIP电话交换系统

Asterisk呼叫中心之freepbx安装(五) 本文是建立在asterisk已经安装好的情况之下来进行的操作,执行asterisk -r。可以在终端看到asterisk系统已经启动代表安装成功。 安装freepbx,我选择了在另外一个centos系统来进行,以免安装过程覆盖了一些conf文件。 三:安装需要的扩展包       1:yum install e2fsprogs-devel keyutils-libs-devel 阅读详情

随着使用VoIP成本的下降,家庭及个人用户对使用Vonage(或其他相类似的产品)的接受程度越来越高,因VoIP通信在家庭通话这一块的不断增长,且开放源代码项目的功能越来越强大,正是基于这样的背景与环境,产生了Asterisk这样一种可替代传统PBX的新产品,正适合于小型和中等规模的公司。

  这种想法是使用一台运行Linux的PC,再添加一些硬件设备来连接几台传统的模拟电话

,把PC通过宽带连接到因特网上并在其上运行某些软件。通过VoIP的方法和开放源代码,你在可处理多路呼入与呼出的电话交换机方面就有一个低成本的选择了,只需很小的代价和很低的成本,在接通后可听到优美的音乐声,如同使用最好的商用电话交换机一样,可以有呼叫转移功能,并拥有个人的语音信箱(使用的费用是极低的)。

  小知识:PBX(Private Branch eXchange),是公司/机构用于连接专用和公用电话网络的现场数字或模拟电话交换台。

  什么是Asterisk?

  Asterisk是一个应用于VoIP的开放源代码PBX系统,有两个不同的版本:核心的Asterisk软件和用户界面更友好的 Asterisk@Home(AAH),后者有一个基于GUI的WEB界面。Asterisk@Home允许用户从一个控制面板来管理所有的VoIP活动连接,这个控制面板在每一台被接入网络中的计算机中都是可见,AAH安装在一台专门的计算机上用来充当网络中的PBX,用户可通过web浏览器来管理这个系统,甚至通过因特网也可管理它。

  Asterisk@Home,为什么要使用一个这样的名称,主要是它打算用来为家庭用户简化Asterisk产品的操作。虽然这个软件在设计上相对来说已简化了不少,但Asterisk绝大部分主要功能功能还依旧是保留着。如果使用的服务器够强劲的话,AAH能够管理的电话线可达数百条,基本上一台2GHz左右的机器就可处理数十条连接,对于需要廉价的VoIP装置来处理多条呼入的小企业和家庭用户来说,AAH可是一个相当不错的选择。

  Asterisk@Home vs. Asterisk

  我对Asterisk和Asterisk@Home这两个关键词搜索了很久,在两者之间真正的不同之处,笔者也没有什么清晰而明显的答案,但从我所收集和掌握的情况来看,AAH的功能和Asterisk是一模一样的,它们之间最大的不同之处在控制和配置的方式不同。AAH可通过一个Web页面来配置和控制,但Asterisk的一切操作都只可通过命令行和配置文件来完成。

  事实上,AAH仅仅只是在标准的Asterisk配置文件和命令行与用户之间放置了一个更友好的用户界面而已,然而熟练的高级AAH用户还是可使用其底层接口来更改设置,但所做的这些设置还有可能被web配置页面所改写掉。

  Asterisk主要是由Digium发起的一个开放源代码的软件VoIP PBX系统,Digium是一个也生产硬件VoIP产品的公司,Asterisk@Home是一个第三方的发行版本,包括Asterisk、

  AAH有两种不同的应用方式:一种是在已安装好的Linux系统下作为一个程序包使用;再者就是光盘映像文件(ISO格式),在这个映像文件中包含了一个CentOS 3的Linux的发行版。

  组建Asterisk@Home PBX系统所需

  要把AAH VoIP PBX系统建立并运行起来,如下的东西是必需的:

  一台专用的计算机

  一条宽带连接

  有VoIP功能的电话机

  VoIP服务提供商的帐号

  最主要的事情就是先要确定你要想让这个系统支持的同时呼叫的数目,这样就好决定运行AAH计算机的大致配置和因特网连接到底需要多大的带宽了。AAH有一个很大的优点就是在处理为数不多的线路时并不需要很强配置的计算机,根据VoIP-info.org网站上有关怎样计算一个Asterisk系统需求的内容,他们声称处理3条线路有一台Pentium 133 MHz和16 MB内存的机器就够了,但为了保险起见,还是使用当前的主流配置好一些。

  在一台Pentium Pro 200MHz 和154MB内存的机器上就可立刻轻松处理5条线路,这还是受制于我的因特网连接带宽,而另外一以700MHz Athlon和1GB内存的机器毫不费力地就可处理立刻处理8条线路,这个是受到VoIP服务提供商的限制。要想了解更多的关于怎样计算是AAH需求的内容,请大家仔细阅读VoIP-info.org网站上有关页面。

  看了如上内容要注意一下的是,要支持更多同时的呼叫连接的能力比起现在的处理器处理能力,可能更受限于你的因特网连接的带宽,处理同时呼叫的能力还依赖于这些因素如音频编码、电话类型、支持的呼叫特征,每个VoIP呼叫在两个方向(上行和下行)都可使用从20到90kbps的速率。

  但如果你的VoOP通信数据通过普通的因特网连接被路由的话,那得到的可能是语音通信不甚满意,数据通信用户也有抱怨,特别是在那些被大多数ISP“施舍”的小得可怜的上行带宽时更是如此。因此,如果一个办公室有十到十二个用户的话,明智的做法是另外再使用一条DSL线路(最好是上下行带宽对称的)来专门用做VoIP通信。

  如果用来运行AAH的电脑已准备好,并用宽带连接都安排好了,则下一步的工作就是电话机了。

  软件电话机是一个不错的选择(因为许多一流的软件电话机都是免费的),但软件电话机的话却非得要电脑开着才可使用,而且还应该去买些像样的耳麦,这个不是免费的噢。其实,一台SIP电话机也不是很贵的,随便从哪都可买到从60美元左右的Grandstream BudgetTone 101到300美元以上的Cisco 7960,不过,还有大量其他的选择可供你来挑选,它们的价格大致在100美元到150美元之间。

  如果你还有一些传统的模拟电话机并且想继续使用它们的话,那是非得要为每台电话机购买一台ATA(Analog Telephone Adapter,模拟电话适配器)了,ATA也被叫做FXS网关,把传统电话机的模拟接口转换成有以太网接口的VoIP连接。可以购买一台单端口的FXS网关/ATA,像Sipura SPA-1001一样,价格为60美元左右。

  另外还有一个选择就是使用多端口的FXS网关了,它实质上就是把许多的ATA做到了一个盒子内,再共用一个单独的网络连接而已。不过这样的产品在现阶段看来价格还是居高不下,相对来说还是比较昂贵的,远没有那些VoIP的硬件产品降价那么快,如它们的价格可从一个530美元的Mediatrix四端口FXS网关到2300美元的Audiocodes二十四端口网关产品,有些FXS网关还可连接PSTN线路(这称之为FXO连接),可在断电时或因特网连接出现问题的时候来作为备份使用。

  清单中的最后一个就是选择一个VoIP服务提供商了,许多有名的VoIP服务提供商如Vonage、AT&T CallVantage等等,它们都乐于出售“商业”VoIP服务,不过这都不适合于你自己拥有并运行的VoIP PBX系统。

  在VoIP DIY方面有两个公司正在开展这方面的业务,即Voicepulse公司和Broadvoice公司。Voicepulse公司描述它们的VoicePulse Connect!产品为一个“源于企业等级的要求,支持SIP和IAX的终端服务”,Connect!的服务是要先预付费的,费用是呼叫美国电话为每月11美元。Broadvoice的BYOD提供的各种费率方案可让各位从中选择(每月从9.95美元到29.95美元),不过要使用你自己的设备,当然可以是Asterisk PBX

 

安装AAH

  Asterisk@Home已和CentOS绑定在一起了,一个基于Linux的操作系统。安装AAH的过程其实很简单,把电脑设置成光驱启动后,只需把CD插入到光驱中再启动机器就行了。出现如图1所示的屏幕内容后,按下回车键就行了,等待一会儿。完成后计算机会弹出这个光盘并重启,重新启动后,一切安装过程都会自动地进行。

  整个的安装过程大约会持续20到90分钟左右,取决于你机器的速度。以我的经验来看,在一台200MHz的电脑上大约花了一个半小时左右,而在另外一台1.6GHz的机器上安装所花的时间却只有大概30分钟。

用Asterisk@Home组建VoIP电话交换系统(2)
图1:Asterisk@Home安装启动屏幕

  安装完成后,出现的是一个命令行状态下的登录屏幕内容(图2),成功登录进入后,可看到这台AAH机器的IP地址,这也是你在web GUI界面下访问的地址。这一切做好后,就可把这台运行AAH机器的显示器、键盘和鼠标取下来了,再通过web GUI界面来进行所有的管理工作。

用Asterisk@Home组建VoIP电话交换系统(2)
图2:登录进入后的情形

  web GUI也被认为是Asterisk管理入口(Asterisk Management Portal,AMP),使用它可允许你读取和编辑数据库,查看报告,更改设置等(图3)。

用Asterisk@Home组建VoIP电话交换系统(2)
图3:Web管理界面

 

配置AAH

 

  AMP使用整个的配置过程非常简单明了,每一个具体的设置都被合理地分类到了不同的标签下,把鼠标箭头移到某个标签上,就会出现一个关于该信息的简单描述框,这对你更改大量的设置值时非常有用,因为有时自己也会搞糊涂,不能完全确定到底需要更改的内容。

  对一些最基本的设置,在AAH的用户手册(http://asteriskathome.sourceforge.net/handbook/)中例举了一些必需的配置方法,在看完整个用户手册后,但如果在实际的操作过程是碰到了一些问题的话,则可能会有一点点麻烦,因为在这个用户手册中根本就没有疑难解答或故障诊断方面的内容。不过在因特网上还有一些其他的AAH帮助方面的内容:Wiki page at voip-info.org(http://www.voip-info.org/tiki-index.php?page=Asterisk+at++Home)、论坛(http://sourceforge.net/forum/?group_id=123387)和IRC频道。

  不过就故障诊断和疑难解答来说Wiki的内容也不是那么全,而论坛上的响应也不是那么及时,因此IRC频道可能就是最好的选择了。在这个频道内有许多资深的用户在线的,不过由于with Asterisk@Home是针对Asterisk的,在这可能有时难以得到某些帮助,因为这个频道的许多管理员就是使用Asterisk的。

  在AMP中,有四个主要的部分――维护、设置、报告和面板。我们还没开始进行设置呢,则设置标签是我们要最先来访问的,它的主要功能是维护管理呼入和呼出,包括设置中继、数字话务员、语音信箱,甚至还可处理响铃后播放的音乐(类似于现在手机上的彩铃噢)。

  最开始要做的事情就是设置中继了(图4),这将是告诉AAH怎样来与你选择的VoIP服务提供商来进行通信。在在线用户手册(http://asteriskathome.sourceforge.net/handbook/Section_3.3)中提供了关于怎样设置Free World Dialup(FWD)和Voicepulse的内容,其他公司的设置方法与这两个实例差不多。有部分的VoIP服务提供商在他们的web站点上也提供有怎样来配置AAH的用法说明。

用Asterisk@Home组建VoIP电话交换系统(3)
图4:添加一个中继

  有四个不同的中继类型可供选择:ZAP, IAX2, SIP和ENUM,再加上一个自定义类型,你所选择的VoIP服务提供商应该有相关的信息来指导你选择哪一个具体的类型。

  设置好中继后,现在AAH就与你的VoIP服务提供商建立好连接了,接下来就是使用“Add an Extension”页面(图5)来设置你的电话了,每一个Extensions选项必需指定一个名字、数字和密码,还可随意给它指定一个语音信箱的目录。

用Asterisk@Home组建VoIP电话交换系统(3)
图5:添加Extensions

 

配置和特性

 

  一个Extensions已在AMP中创建好了后,每个电话自身还是需要设置一下。在AAH的用户手册中有对几种“软件”电话和“硬”电话在这方面的相关介绍,最基本的,AAH服务器的IP地址、Extensions的数字和密码就得输入到电话机中。这些设置完成后,电话机不可开始工作了,对内部的extensions和通过AAH PBX打电话都要通过呼入和呼出几个电话作一下测试看看。

  维护标签可让你检查许多的系统设置,并允许更改配置文件、编辑数据库和查看日志文件,不过这也是一个最不好掌握的标签,因为在它的页面中没有任何即时的对相关内容的介绍。点击维护标签后首先出现的就是系统状态(图6),还可检查其他的系统信息和手工更改配置。

用Asterisk@Home组建VoIP电话交换系统(4)
图6:系统状态

  在图6所示的系统状态页面中,大家可看到有“”Reboot和“Shutdown”按钮排列在下部,在你运行AAH的机器离控制计算机很远的时候这个功能很管用。报告标签(图7)看上去非常简单,只有四个类别:呼叫记录、比较记录、月流量和日负荷,在这些报告中有些内容显示不全,但系统又不让你来调整数据的宽度范围。

用Asterisk@Home组建VoIP电话交换系统(4)
图7:Reports屏幕

  比较呼叫(Compare Calls)功能仅仅只是让你看看连续四天的呼叫的数;月流量也仅是一个有呼叫统计,而日负荷也一次只允许你一天;在呼叫报告中有一个很方便的功能就是允许你导出记录为一个PDF或CSV文件。

  面板标签(图8)是一个由Flash建立的操作面板,它包含有不同的extensions、队列和中断,并可允许你来查看谁在使用这个系统,还可转移呼叫、挂断线路并可通过面板来建立电话会议。

用Asterisk@Home组建VoIP电话交换系统(4)
图8:操作面板

  写在最后

  Asterisk@Home很具有实用性,并且应用范围广泛,它的成本很低,在一些配置很老旧的计算机上运行也很正常,对它进行配置更是容易得很。它主要的不足之处是在用户手册和Wiki中还缺少一些比较高级应用方面的资料,因此如果你想使用AAH的话,可能在某些方面还要多摸索一下。

  AAH提供了各种不同的实用功能来提高它的商业应用能力,如同一个标准的PBX系统一样,你可以处理一个等待摘机的呼叫队列,也可转接它们。系统用户也可通过web来访问语音信箱,可进行参数的更改、管理和收听留下的信息。如果你不在计算机旁,并且你乐意的话,AAH甚至还可通过e_mail发送语音信箱中的信息给你,当然,还可以通过电话来访问语音信箱系统的。还有一个“数字话务员”呢,通过预先录制下来的信息可让你指导用户。

  AAH简单的配置过程使它最适合于那些小型或中型规模的公司企业了,他们所需的只是它能够很好的工作,而不要过多地进行详细设置。如果你的需求是一些更复杂的系统,标准版本的Asterisk通过了专业的最优化设计,可能会更适合你。Asterisk@Home则是最适合于家庭和小型的企业使用,他们希望拥有全部功能和灵活性强的PBX系统,但价格要低廉、配置要简单并且是供应商管理(vendor-managed)的产品。

 
点星PBX(DotAsterisk)单台讯时MX100G-4E1数字中继网关同时混合接入电信、移动双运营商线路教程 1.客户案例说明 新疆一客户办公地点部署了点星PBX呼叫中心语音通话业务,起初申请了2路中国移动数字中继线,后期业务增加,又加了1路移动中继线路。客户购置了一台讯时MX100G-4E1数字中继网关,通过网关设备,把3路移动数字中继线路和点星PBX进行对接,前期话务正常有序进行。关于点星PBX和讯时数字中继网关对接教程,请参考《讯时MX100G-4E1数字中继网关对接点星PBX呼叫中心》。 后来,随着通话业务的扩大,以及客户投诉等诸多问题的增多,公司被迫想尝试其它运营商的语音线路。于是客户选择了中国电.. 阅读详情

相关推荐

asterisk gui的安装和使用

1. 编辑manager.conf,如下用户名为admin,密码为admin。使用svn拉去asterisk-gui代码,没有svn的可以先安装svn。一、下载asterisk-gui。二、安装asterisk-gui。在asterisk-gui目录下。在asterisk-gui目录。2. 编辑http.conf。三、 配置asterisk。启动asterisk。输入用户名密码登录。

axibazZ的博客 1269

asterisk GUI界面的安装

asterisk是一款开源PBX系统,其中集成了许多功能,如IP电话,视频会议,转接,回拨,电话录音等,而且提供了丰富的配置选项。asterisk GUI界面则是基于PHP开发的web界面,有丰富的接口与用户进行交互。        安装好asterisk后,有必要安装asterisk_GUI,这样便于用户自行对系统进行配置(比较专业的也可以通过配置文件.conf来配置,通过asterisk CL

月无影的专栏 7053

Asterisk GUI:简化Asterisk VoIP服务器配置和管理

Asterisk是一个开源的电话系统,它支持广泛的电话技术,并提供了一个全面的通信平台。借助于Asterisk,可以创建复杂的、可扩展的通信解决方案。而Asterisk GUI(图形用户界面)为这个强大的通信系统提供了一个易于使用的操作界面。它简化了复杂的配置过程,让非技术用户也能管理和配置Asterisk系统。对于有特殊需求的场景,Asterisk GUI提供了高级设置参数的选项。这些参数通常包括:音频编码:选择不同的音频编码格式来优化音质或减少带宽消耗。安全设置。

weixin_35370061的博客 662

Asterisk13.2.0结合Asterisk-GUI进行管理

Asterisk的管理方法   Asterisk有三种管理方法,最常用的当然是通过asterisk命令进入CLI模式对Asterisk进行管理。另外还有两种方法: 1)用TCP协议,连接到5038端口,然后用AMI命令来管理Asterisk; 2)用HTTP协议,连接到8080端口,通过WEB的形式对Asterisk进行管理;下面是基本的URL:http://192.168.0.

Code Captain的专栏 6227

asterisk-users-admin:Web GUI,用于管理Asterisk实时SIP对等

特征 管理存储在MySQL中的Asterisk实时SIP对等体; 设置Cisco / Linksys IP电话:Cisco SPA504g等; 预配Linphone软电话(实验性)。 安装 设置星号以将实时SIP对等存储在MySQL DB TODO中 创建MySQL数据库并应用方案TODO 授予MySQL访问mysqladmin ... 授予AMI访问权限,通常在/etc/asterisk/manager.conf中 [panel] secret = AMIPASS deny = 0.0.0.0/0.0.0.0 permit = 127.0.0.1 read = all,system,call,agent write = all 安装Smarty库 wget -O Smarty-stable.tar.gz http://www.smarty.net/files/Smarty-sta

asterisk-gui:AsteriskGUI 项目的 Git 仓库

星号-gui AsteriskGUI 项目的 Git 仓库

Building Telephony Systems with Asterisk

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出版、作者信息和本声明。否则将追究法律责任。http://blog.youkuaiyun.com/topmvp - topmvpThis book shows how to build a telephony system for your home or business using the free and open source appl

TopMVP 888

asterisk-sip配置说明.

extensions.conf中使用sip设备的语法是SIP/devicename,devicename名在下一节中说明。 如果用户在Internet上,可以使用SIP/username@domain形式,同时不要忘记打开DNS SRV功能。 如果定义了一个SIP代理,可以使用SIP/proxyhostname/user或者SIP/user@proxyhostname形式,proxyhostname的定义在下面的章节说明。

如何部署企业VoIP电话系统

此外,还需要选购适用于企业的软件系统,如全方位的VoIP电话服务平台、VoIP网关等,根据企业的要求做出选择和部署。配置VoIP电话系统:在部署VoIP电话系统的时候,需要确保系统的配置合理以实现最佳功能。通过合理的规划、选择适合企业的硬件软件设施,系统配置和员工培训,可以成功地实现VoIP电话系统的部署,从而以高效和低成本的方式为企业提供电话通信服务。测试通信质量:在完成系统的配置和培训后,需要测试整个系统的通信质量,以确保所有的组件都能够顺利地运行,并测试电话和视频通话质量。

weixi_kelaile520的博客 497

Arco Design Pro PC端商家后台框架 | Axure高保真原型库

摘要:本Axure原型设计方案基于字节跳动ArcoDesignPro规范,提供企业级后台快速搭建方案。包含动态表格、表单验证等核心组件,采用中继器驱动设计,支持响应式布局。方案覆盖80%后台常用交互,可节省60%原型制作时间,配套完整设计文档和组件库,实现原型到开发的高效衔接。特别适用于电商、SaaS等后台系统开发,支持权限管理、数据分析等场景,显著提升团队协作效率。

招风的黑耳优快云 3977

思科—OSPF多区域配置实验

实验目的:配置OSPF多区域,使得不同网段的PC互相ping通。 网络拓扑如下: R0的配置 Router>en Router#conf t Router(config)#int g0/1 Router(config-if)#ip add 192.168.1.1 255.255.255.0 Router(config-if)#no shut Router(config-if)#exit Router(config)#int g0/0 Router(config-if)#ip add 192.168.

m0_46237205的博客 1万+

Ubuntu12.04LTS下安装asterisk及其GUI

asterisk很强大很好使,亲测可用,首先执行下面的操作:ForthisinstallIamusingAsterisk11.0.1andwillbecompilingfromsourceonUbuntu12.04.1.注意,这里的含有&&都可以分步做,更好哦。Beforeyoubegintheinstallprocessyouwillwanttobesure...

weixin_34232617的博客 280

ADRV9026初始化避坑指南:手把手调试PostMcsInit常见故障

本文详细解析了ADRV9026多片同步初始化过程中的PostMcsInit常见故障,包括时钟校准失败、JESD链路建立问题和ARM核通信异常等。通过实际项目经验,提供了硬件检查清单、软件配置要点和分层诊断方法,帮助工程师快速定位和解决问题,提升系统稳定性。

hadoop5ranger的博客 620

IssabelPBX 项目推荐

IssabelPBX 项目推荐 项目基础介绍和主要编程语言 IssabelPBX 是一个开源的图形用户界面(GUI),专门用于控制和管理 Asterisk(PBX)系统。该项目源自 FreePBX,而 FreePBX 又是从 Coalescent Systems Inc 在 2004 年发布的 AMP 项目中分叉出来的。IssabelPBX 主要使用 PHP 作为其主要的编程语言,同时也使用了 J...

gitblog_00392的博客 385

汽车诊断服务(UDS——0x11服务解析)

ECU复位服务(0x11)详解:该服务支持硬件/钥匙开关/软件三种复位类型(0x01-0x03),复位前需发送肯定响应。请求格式为11+子功能,响应含51+子功能。典型应用需配合安全访问流程,测试时需监控CAN总线通信及DTC状态。复位后ECU将返回默认会话,期间不处理任何诊断请求。服务在编程会话且安全解锁后执行,硬复位会初始化存储数据。

从事汽车行业 979

从零搭建自动驾驶仿真环境:我的Nuplan-devkit实战笔记(含PyCharm配置技巧)

本文详细记录了从零搭建Nuplan-devkit自动驾驶仿真环境的完整流程,包括conda环境配置、pip版本控制、PyCharm专业版集成等关键步骤。特别针对Ubuntu系统下的依赖管理、数据目录优化和性能调优提供了实用技巧,帮助开发者高效构建稳定的自动驾驶仿真开发环境。

weixin_30505225的博客 480

Asterisk:三汇交换机

代理商:上海易沃软件科技有限公司--交换机:三汇UMCT智能交换机 功能板:三汇UMCT智能交换机功能板E1最本来的用法是在用作语音交换机的数字中继时,是把一条E1作为32个64K来用,但是时隙0和时隙15是传输控制信令用,所以一条E1可以传30路话音。三汇UMCT智能交换机   SSW080A:淘宝价格45,000元

杨江的IT分享专栏 2622

GB/T 27930-2023协议升级与CANoe仿真测试实践

本文深入解析GB/T 27930-2023协议的核心升级,包括A/B类系统分类与EVIN码引入,并详细指导如何使用CANoe搭建仿真测试环境、编写CAPL脚本及利用DLL库进行一致性验证与故障注入测试,助力开发人员确保电动汽车充电通信的合规性与稳定性。

y7z8a的博客 541

开源软件Asterisk:386变身交换机

   有关开源软件最令人激动的事情之一就是其创建超越传统的IT基础架构的应用程序的方式。一个恰当的例子是称作“Asterisk”的电话应用程序。Asterisk是一种功能非常齐全的应用程序,提供了许多电信功能。也许它最著名的应用是当作一台交换机(PBX),因为Asterisk能够把你的x86机器变成你自己的交换机。  Asterisk还能做什么?它能够当作一台企业级的商用交换机。下面是它全套功能的

Flex天空 1710

KubeVela入门到精通-K8S多集群交付

KubeVela是一个功能强大、易于使用、高度可扩展的应用交付与管理平台。它基于Kubernetes和OAM 技术构建,通过开放应用模型(OAM)来作为顶层的抽像,提供了声明式部署、多集群/混合环境支 持、插件与扩展性、中心化管控以及易于使用与可观测性等特点。

小杨同学的博客 1270

知识存储之Apache Jena

知识图谱的存储可以分为基于表结构的存储和基于图结构的存储。1️⃣基于表结构的存储基于表结构的存储利用二维的数据表对知识图谱中的数据进行存储。根据不同的设计原则,知识图谱可以具有不同的表结构:💨知识图谱实质上是一个个的三元组,一种简单直接的存储方式是设计一张三元组表用于存储所有三元组,有不少比较成熟的产品利用该形式存储知识图谱,包括Jena、Oracle、Virtuoso等。💨为每种类型构建一张表,同一类型的实例存放在相同的表中。

Puzzle的博客 6065

一客户在Cisco3640上配置VoIP

一客户在Cisco3640上配置VoIPJul 22, 2006下面是一个Cisco 3640的VOIP配置,对方的结构是北京和汕头两地做VoIP,后接阿尔卡特的PBX。 这里面有很多值得注意的地方,与大家一起分享快乐! 北京一方的3640配置: Beijing#sh run Building configuration... Current

xwchen的专栏 995

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Asterisk安装指南

 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

水到渠成的专栏 1万+

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

彭大帅的CI/CD实战第1篇 系统基线:Rocky 9.8 准备与 CentOS 7 差异

其二,这套环境没有为 /var/lib/jenkins 和 /var/opt/gitlab 做独立分区——这两个目录分别是 Jenkins 和 GitLab 的数据主目录,会随使用持续增长,是后续磁盘的主要风险点。Rocky 9 用 dnf 做包管理(yum 命令还在,是 dnf 的软链,老习惯脚本照样能跑)。GitLab 访问 Jenkins 是 8080(Webhook 回调),Jenkins 访问 GitLab 是 80(拉代码),两者方向相反,配防火墙时最容易出现「只放行了一个方向」的问题。

彭大帅的博客 736

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

上一篇: 软交换与NGN
下一篇: 深刻理解Linux进程间通信
suacker
博客等级 码龄24年 46粉丝 19原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值