在某些VoIP系统部署中,客户要求对主叫用户的余额进行控制。当主叫用户拨打呼叫时,业务应当能够检查该用户是否有足够的余额进行该呼叫。呼叫建立后,服务器应当能够实时监视余额和费用,如果余额不够继续呼叫时,服务器应当立刻释放呼叫。
如果是用户作被叫接收呼叫,没有必要进行计费和扣费。
在MSS系统中,我们将这个业务定义为"主叫预付费(caller prepaid)"。从网络拓扑中,我们可以看到:
另外,MSS主叫预付费用户可以在任何时候拨打电话"*900"查询自己的余额。
我们需要准备以下配置:
MSS目前仅支持连接MySQL数据库。
请点击菜单(或者配置项)"数据 / 系统配置 / MySQL服务器配置",根据您的MySQL数据库信息进行配置。
配置项 | 值 | 描述 |
---|---|---|
数据库地址 | 主机名或者IP地址 |
远端数据库地址。 注意, MSS和MySQL数据库可以安装在同一台计算机中。此时,"database address"应当是"localhost"。 |
数据库访问端口 | 整数(>0) |
远端MySQL数据库访问地址。如果您改动了MySQL的配置,您需要同时改动MSS中的这项配置。 缺省值是3306,请参考MySQL的手册了解更多的信息。 |
用户名 | 字符串 | 登录MySQL数据库的用户名。 |
密码 | 字符串 | 登录MySQL数据库的密码。 |
一般情况下,对于普通分机是没有必要配置“主叫预付费”业务。如果分机计划支持”主叫预付费“,则必须明确配置它的业务权限。
请点击菜单"数据 / 分机 / 高级业务"如下进行配置。
包含几个部分: (1) 如何设置费率? (2) 如果设置预付费用户的余额? (3) 如何计算费用?
请点击菜单"业务 / 预付费 / 预付费费率"进行配置。
配置项 | 值 | 描述 |
---|---|---|
预付费费率编号 |
整数 |
预付费费率记录ID。 |
计费周期(秒) |
整数 |
计费周期,单位是秒。 |
每计费周期费用 |
整数 |
每个计费周期的费用。 |
一次性费用 |
整数 |
一旦呼叫应答后,这个费率立刻从用户余额中扣除。这种费用是可选的,缺省为0。 |
例如, "预付费费率编号=1; 计费周期=60; 每计费周期费用=10; 一次性费用=20"。这意味着,呼叫应答后,MSS应当立刻从余额中扣除20个费用单元(例如:分),然后每60秒扣除10个费用单元。
请点击菜单"业务 / 预付费 / 用户余额"进行配置。
配置项 | 值 | 描述 |
---|---|---|
签约用户 |
字符串 |
本地分机号码,即预付费签约用户。 |
余额 |
整数 |
当前预付费的余额。 |
请点击菜单"业务 / 预付费 / 主叫预付费"进行配置。
配置项 | 值 | 描述 |
---|---|---|
签约用户 |
字符串 |
预付费用户。 该项可以配置为"*",这意味着应用于所有预付费用户。 |
被叫号码前缀 |
字符串 |
目的号码前缀。 这项可以配置为"*",这意味着应用于所有被叫号码。 |
预付费费率编号 |
整数 |
费率ID,用于计算费用。 这个ID是在前面的章节"2.3.1 预付费费率"中进行配置。 |
示例:
我们在"主叫预付费"表中配置以下记录:
预付费用户 | 目的号码 | 预付费费率ID | 描述 |
---|---|---|---|
* |
* |
1 |
对所有预付费用户和所有目的号码,采用费率ID‘1’进行计费。 |
* |
101 |
2 |
任何预付费用户拨打被叫号码前缀"101",采用费率ID"2"计费。 |
100 |
* |
3 |
预付费用户"100"呼叫任何目的号码,采用费率ID"3"计费。 |
100 |
1 |
4 |
预付费用户"100"呼叫前缀为"1"的被叫号码,采用费率ID"4"计费。 |
于是,在下面的应用中我们可以看看究竟哪个费率ID被采用进行计费: