Browsed by
Author: Gilson

SIP中继鉴权用户名和密码

SIP中继鉴权用户名和密码

部分VoIP运营商提供“SIP中继”业务,大部分这类业务都要求对用户名和密码进行鉴权。

如果遇到这种情况,我们应该在miniSipServer中配置“外线(也称为街线)”进行配合,建立与VoIP服务商的连接。

在外线的配置中,我们需要输入对端地址(或者对端域名)、用户名以及密码,对注册以及呼叫过程进行鉴权。

miniSipServer长期支持版本以及稳定版本升级

miniSipServer长期支持版本以及稳定版本升级

长期支持版本升级到V4.0。我们强烈建议客户们将系统升级到这个新的LTS版本。

V4.0版本是用于替换前一个LTS版本V2.x。新版本更加稳定,也支持更多业务特性。

稳定版本升级到V6.0,新特性将基于这个版本开发。

V5.0版本保留给miniSipServer云通信平台。

云通信之主叫预付费业务

云通信之主叫预付费业务

我们很高兴地宣布:云端miniSipServer今天成功进行升级,可以支持主叫预付费业务了!

“主叫预付费”业务是本地miniSipServer的一项重要业务,在世界范围内有广泛地部署。越来越多的客户采用这个特性来构建自己简单的虚拟VoIP运营系统。

而现在,我们可以在云通信中也部署这个业务了。云端的主叫预付费业务,听起来是不是很酷?我们相信这个业务将有助于我们的客户拓展他们的VoIP事业。

有了云端主叫预付费业务,可以非常容易就成为一个虚拟的VoIP运营商,为什么不试试呢? 请访问http://minisipserver.com并注册一个帐号试试吧。免费试用!

miniSipServer V4 更新

miniSipServer V4 更新

miniSipServer V4版本更新至build 20110831,主要包含以下修改:

(1)如果连接了MySQL数据库,则MSS会自动将CDR信息写入MySQL数据库。

(2)预付费类业务,例如卡号业务、主叫预付费等,支持一次性付费特性。在部分地区部署该类业务时,一旦被叫方应答呼叫,MSS应立刻从余额中扣除某一次性费用,然后根据费率按时长开始计费,即采用“一次性计费 + 时长计费”模式。

云端miniSipServer升级

云端miniSipServer升级

本次升级主要是提供“Dial plan(拨号计划)”功能。客户可以通过这个功能,灵活控制各项呼叫。登录进云端miniSipServer后,在界面左边的命令列表中,可以看到新增加的”Dial plan”功能项。

另外,根据大部分客户的要求,我们将免费账户的每个呼叫的试用时间从30秒延长至60秒。

miniSipServer稳定版本升级到V3.1.6

miniSipServer稳定版本升级到V3.1.6

MSS稳定版本今天升级到V3.1.6版本。

本次升级主要是支持“语音邮箱嵌套Follow-me业务”新特性。如果一个分机即配置了语音邮箱业务,同时也配置了Follow-me(?随身呼)业务,如果所有Follow-me参与方都没有应答本次呼叫,该呼叫将被转入语音邮箱业务流程进行语音留言。

另外,本次升级同时也修正了若干在web管理系统中的bug。

最新的V4版本也已经合并了本次修改。

如何解决语音单通甚至双不通的问题?

如何解决语音单通甚至双不通的问题?

在前面的blog中,我们已经讨论了为什么会有语音单通问题。在这篇blog中,我们继续讨论如何解决这个问题。

正如我们看到的,sip电话(100)将自己的私有地址告诉给sip软终端(101),这就导致了语音单通问题。因此我们自然想到:为什么不将它的公共地址8.8.8.8告诉给sip软终端呢?如果它能做到这点,sip软终端自然可以将它的语音流发送给这个公共地址,路由器也会将这个语音流转发给sip电话,sip电话也就可以听到sip软终端侧的声音了。对吗?

非常正确!这是个很好的解决方案。但是我们接着需要问:sip电话(100)如何才能知道它自己的外网地址呢?

答案就是STUN。STUN是“Simple Traversal of User Datagram Protocol (UDP) through Network Address Translators (NATs)基于UDP协议对网络地址转换的简单穿越”的缩写。这是个非常拗口的定义啊。简单而言,STUN就是用来私网内设备获取外网地址的一种协议工具。

请参考下面这张图:

– STUN process

在SIP电话拨打电话之前,它先向STUN服务器请求获取外部地址。完成之后,SIP电话开始发起呼叫,它告诉对方说:喂,我是100,我的语音地址是8.8.8.8:100,请发送语音流给我

顺便说一下,在本文中一个公共地址由一个公共IP地址+一个端口号组成。例如“8.8.8.8:10000”,“8.8.8.8”是公共IP地址,“10000”是端口号。”8.8.8.8:10001″是另外一个不同的公共地址(因为虽然IP地址一样,但是端口变了)。

既然8.8.8.8是公共地址,因此SIP软终端毫无疑问能将它的语音流发送到这个地址。因此呼叫双方现在都能听到对方的语音。

几乎所有的SIP设备,无论是SIP电话还是SIP软终端,都能支持STUN协议。我们唯一需要知道的是设置STUN服务器地址。在我们的step by step文档中,我们针对X-lite给出了一个简单的示例:

https://www.myvoipapp.com/docs/faq/setup_ippbx_for_small_business_step_by_step/index_cn.html#faq_stun

支持STUN后,是否能解决所有的语音单通问题呢?

很不幸,不能。在多数情况下,STUN能很好的工作,但是它无法解决所有的语音单通问题。这取决于私网的类型。简单而言,取决于路由器(当然,在某些网络,也可能是防火墙设备)。

– Special network for STUN

请参考上面这张图。图中描绘了两个会话:一个会话是SIP电话向STUN服务器请求获取公共地址。另一个会话是SIP电话与SIP软终端之间的呼叫。

众所周知,路由器将维持私网地址与公网地址之间的映射关系。缺省情况下,大多数路由器对来自私网内同一个设备同一个端口的不同会话,会分配并维持同一个外部地址映射关系。因此SIP电话在这两个会话中,会有同一个外部地址。

但是有些路由器会为不同的会话分配不同的映射关系,也就是说SIP电话在这两个不同的会话中会有两个不同的外部地址对应,因此实际上在与sip软终端的对话中,SIP电话还是无法知道对应的外部地址。

如果STUN不能解决语音单通的问题,根本原因就是路由器或者私网类型导致。此时,最终的解决方案就是建立VPN网络,将所有的SIP电话和SIP终端至于同一个逻辑网络内。这就是另外一个讨论议题了。(补充说明:也有可能采用ICE协议解决私网穿越问题,但是不是所有的设备都能支持ICE协议。)

为什么会语音单通甚至双不通?

为什么会语音单通甚至双不通?

几乎所有的人在部署第一个VoIP网络时,都会遇到这个问题。我们经常会觉得困扰:为什么我听不到对方而对方却能听到我呢?为什么双方都听不到对方呢?

这个问题的根本原因在于:VoIP部署涉及两个不同的网络,通常是私网和公网(当然,也有部署在两个不同私网内的情况)。如果呼叫双方位于两个不同的网络内,“语音单通”问题就极有可能发生。请参考下面的图例,该图描绘了一个非常简单的VoIP网络:

语音单通问题网络拓扑

在这个简单的网络中,我们部署了两个VoIP设备:一个是SIP电话,电话号码是100。另一个是SIP软终端,电话号码是101。

SIP电话位于私网中,其私网地址是192.168.1.100,通过路由器与公网相连。路由器地址为8.8.8.8.

SIP软终端安装在PC中,PC接入到公网,地址为8.8.4.4。

那么,当SIP电话向SIP软终端发起呼叫,会发生什么情况呢?

SIP电话说:喂,我是100,我的语音地址是192.168.1.100, 请发送语音流给我。

SIP软终端回答说:没问题。我这是101,我的语音地址是8.8.4.4. 请把你的语音流发给我。

SIP电话将语音流发给SIP软终端。既然 “8.8.4.4 ”是公共地址,因此SIP软终端能成功收到SIP电话的语音流。也就是说,SIP软终端能听到SIP电话的语音了。

SIP软终端将它的语音流发送给SIP电话的地址“192.168.1.100″。可以看到,这个地址是个私网地址,位于公网内的SIP软终端实际上无法连接该地址,因此最终也就无法将语音流发送到这个地址上去。

最后,SIP软终端能听到来自SIP电话的语音,而SIP电话无法听到SIP软终端的语音。这就是个非常典型的语音单通问题案例。

那么,我们如何解决这个问题呢?待续 ……