随着企业信息技术的发展,企业的电话通信费用越来越高。为了降低企业的经营成本,我们推出了一种在企业内部使用的个人用户记帐电话。使用方法是:个人用户只要事先申请到一个帐号并购买一定的电话费用,就能在企业内任何一部具有双音频功能的电话机上(无论该话机是否具有打外线的功能),先拨#30,再拨密码和帐号,如所拨密码和帐号正确,就能再次听到拨号音而继续拨打长途或外线电话号码。其通话费用能自动在个人用户帐号上扣除,而所用的电话分机不需要付费。
我们企业用的是哈里斯程控交换机,该交换机只能为计费系统提供打电话时用的电话分机号,而不能直接提供个人用户帐号。我们通过对交换机的数据库巧妙设计,使其具备了提供大量个人用户帐号的功能。现将设置个人用户帐号原理介绍如下,供读者参考。
1 个人用户帐号的记录位置确定 哈里斯程控交换机只能将主叫号码的通话数据记录在CDR表中。要实现个人用户电话计费,必须设法把个人用户帐号记录在CDR表中。通过分析CDR表,我们认为可以利用交换机的收集路由表将个人用户帐号传送到CDR表中ACCCODE的位置,经过试验获得成功。
2 个人用户帐号传送到CDR表中ACC CODE处的方法 哈里斯程控交换机数据库中的收集路由表是由许多人为定义的拨号序列组成的,可以用来定义和识别用户所拨的号码。每一条拨号序列的格式都是: 所拨号码/数字处理参数项=去向 其中的数字处理参数项,可以从个人用户所拨的号码中取出个人帐号。我们用了3张收集路由表定义拨号序列,表名分别设为CR-BW、CR-SE和CR-GW。其中CR-BW表用来定义和处理个人代码中百位数的10条拨号序列(见表1);CR-SW表用来定义和处理个人帐号中十位数的10条拨号序列(见表2);CR-GW表用来定义和处理个人帐号中个位数的10条拨号序列(见表3)。这样一来,仅用30条拨号序列就能设置出1000个个人帐号。拨号序列中#30和后面的9位数是用户必须拨的。#30后面的6个X(X表示此数字可以是0~9中的任意一个)表示任意6位数的密码,密码的具体数字可以在授权码表中进行设置和修改;密码后面是3位个人帐号(X表示的数字也是0~9中的任意一个)。数字处理命令参数项中的/REM 1,3表示移去所拨号码中最前面的#30;/INS 1,n/acc 1是取出该序列中个人帐号的一位数字(如前所述:百位表中取出百位数等),并将取出的一位数字存到CDR表中。
比如设某用户个人帐号是213,密码是456789:当该用户拨完#30456789213后其呼出首先被接到CR-BW表中,并通过表中个人帐号是2xx的拨号序列取出和保存百位数2后进入CR-SW表,通过CR-SW表中个人帐号是x1x的拨号序列取出和保存十位数1后进入CR-GW表,再通过CR-GW表中个人帐号是xx3拨号序列取出和保存个位数3后进入授权码表。经过以上拨号序列处理后的数字是456789213,其中的个人帐号213已经传送到电话记录表CDR中的ACCCODE位置。
3 个人密码和个人帐号的设置与校验 这是通过授权码表进行的。授权码表中记录的是个人密码和个人帐号,当从收集路由表送来的个人密码和个人帐号与授权码表中的某条完全相同时,授权码表能自动提高用户的拨号权限并使用户听拨号音后继续拨打长途或打外线电话,否则就听忙音而不能拨打外线电话。
利用上述方法处理好个人帐号后,就能用计费软件计算个人的电话费了。我们公司从1999年1月使用至今,取得很好效果,为公司节约了大笔通信费用。