, 不能编译zaptel和asterisk
请确认一下几点:
1) 你已经安装了所有必备的包和内核源码.
2) 内核源码的版本和内核的版本完全一样.
请参考一下网站:
http://wiki.openvox.cn/index.php/A1200P
http://wiki.openvox.cn/index.php/A400P
http://www.asteriskguru.com/tutorials/
3) 你没有缺少asterisk和zaptel的任何包和文件.
4) 你的系统能访问www.asterisk.org这个网站.
请从以下几点核查:
1) 用命令lspci -vvvvv, 确定系统能检测到我们的卡. Tiger jet chip 能被找到. 如果没有Tiger jet chip, 请清扫PCI插槽,再重新试一次命令lspci -vvvvv.
2) 如果用lspci能找到卡, 请确定pci id是在我们的驱动的PCI表里面. 修复pci id,请参考下面的网站:
http://www.openvox.cn/kb/entry/2/
3) 如果步骤一和步骤二都正常,请检查配置文件zaptel.conf 和 system.conf 确定相关的设置是正确的.
4) 如果步骤3正常, 请确定系统里没有mISDN tiger jet 模块, 如果系统里有这个模块,请把它去掉.
5) 如果你还是不能让它启动, 你必须重新编译zaptel 或者 dahdi.
不能打电话,有一些原因:
1) 在asterisk里面检查 extensions , 确定sip电话注册好了,SIP电话里的context要和 extensions.conf里的context一致。
2) 你的wctdm 或者 opvxa1200没有启动(灯没亮).
3) leds are up and card driver has boot up properly, but the zapata.conf is
, so asterisk does not boot up properly,
请通过命令: zap show channels检查
如果结果是空的或者没有这个命令, 你应该检查zapata.conf配置文件。
4) 你可能要重新编译 zaptel和 asterisk.
你可以编辑zapata.conf 这个配置文件,设置 rxgain=5 txgain=6 或者其它值. 你可以用ztmonitor进行测试,参考下面的网站 :
http://linux.die.net/man/8/ztmonitor
请从以下几点查看:
1) 根据你所在的国家设置timezone和defaulzone,在文件/etc/asterisk/indication.conf里设置country=your country并加上如下命令: modprobe wctdm/opvxa1200 opermode=YOUR country
2) 设置busydetect=yes and busycount=4
3) 要求你的服务提供商打开"disconnect supervision"服务查看更详细的做法,请登入以下网站:
http://www.asteriskguru.com/tutorials/resolving_hangup_detection_problems_fxo_tdm_voicemail.html
如果你遇到和callerid相关的问题,请参考下面的网站:
http://bbs.openvox.cn/viewthread.php?tid=831&extra=page%3D1
模拟卡的callerid检测问题如果zaptel dtmf检测问题里的方法都试过还是没有效果的话,可以尝试修改一处asterisk源码,具体步骤如下:
1. vi asterisk/main/dsp.c
2. 找到#ifdef RADIO_RELAX ,在这句上面添加一句: #define RADIO_RELAX //by MiaoLin
3. 重新编译asterisk
4. 手动加载驱动时添加参数
modprobe opvxa1200(或wctdm) cidbeforering=1 opermode=CHINA
请参考digium的TDM电话中断解决方法:
如果你在使用TDM400P卡或者X100P卡时,发生电话中断,可能有以下原因.
1)BusyDetect
2)CallProgress
BusyDetect和CallProgress可能会导致Asterisk错误的检测电话挂断. 把BusyCount设置为一个更大的值,或者关掉CallProgress,可能能解决这个问题. 过量的IRQ缺失也有可能会导致这些问题的出现.
参考这个网站:http://kb.digium.com/entry/71/
3) 设置
/etc/modprobe.conf试试看,安装wctdm:
install wctdm /sbin/modprobe --ignore-install wctdm battdebounce=128 && /sbin/ztcfg
为了根据你所在的国家标准,设置模拟语音卡,你必须做到以下几点:
1) 在zaptel.conf 文件里或者dahdi的system.conf 文件里设置你所在国家的timezone和defaultzone
2) 在indication.conf文件里设置country=your country
3) 加载wctdm 或者opvxa1200 opermode=YOUR country(用大写字母).
4) 读opermode确认参量已经被加载了
[root@bogon misc]# cat /sys/module/wctdm/parameters/opermode
CHINA
[root@bogon misc]#
如果用opvxa1200, 请按下面的命令执行:
cat /sys/module/opvxa1200/parameters/opermode
5) 加载了驱动之后,运行dmesg命令去检查这个mode.
1) 你可以在/etc/asterisk下编辑配置文件logger.conf
去掉debug 或error的注释,这些消息会被保存在
/var/log/asterisk
2) 或者你可以以下面的方式启动asterisk:
asterisk -vvvvvvvvgc -d
请运行下面的命令:
cat /proc/interrupts
你应该能看到IRQs, 确定语音卡有自己的IRQ, 不要和其它设备共用.
更多,更详细的方法,请参考下面的网站:
http://www.voip-info.org/wiki/view/Asterisk+PCI+bus+Troubleshooting
在download下面, 你可以看到三个子目录:
第一个是驱动, 你能看到单独的opvxa1200驱动.
第二个是zaptel的 with opvxa1200驱动,你可以选择你需要的版本.
第三个是dahdi的驱动, 如果你想用dahdi,你可以下载整个包.
参考这个网站: http://www.openvox.cn/download/
请参考下面这个网站:
http://www.asteriskguru.com/tutorials/pci_irq_apic_tdm_ticks_te410p_te405p_noise.html
请参考下面的网站:
http://bbs.openvox.cn/viewthread.php?tid=574&extra=page%3D3
http://bbs.openvox.cn/viewthread.php?tid=587&extra=page%3D1
http://www.openvox.cn/download/
http://www.voip-info.org/wiki/view/DAHDI
http://www.russellbryant.net/blog/category/dahdi/
http://blog.paulsnet.org/?p=44
http://docs.tzafrir.org.il/dahdi-tools/?C=S%3BO=A
请参考下面的网站:
http://kb.digium.com/entry/1/
http://www.voip-info.org/wiki/view/Asterisk+echo+cancellation
请参考下面的网站:
http://kb.digium.com/entry/6/
对于TDM400P和TE110P卡,内核模块加载完后,LED灯才会亮.当端口配置好了,内核模块加载完了的时候,TDM400P LED灯会亮. 当电话或者中继拔进拔出,灯不会受影响. TE110P卡LED红灯将亮起来,当span配置好了,内核模块加载完了. 如果配置正确,并且环路或者通道连接好了,LED灯应该会变成绿色.
对于TE2XXP/TE4XXP卡LED灯应该是红色并会scroll,即使没有加载内核模块并且没有任何东西插进来. 当你配置好了并加载完了内核模块,但没有连接环路和通道单元,灯应该是红色并闪动. 如果模块加载好了并连接了环路或通道单元,灯会一直成绿色. 参考下面网站:
http://kb.digium.com/entry/13/
FXS (Foreign eXchange Station)是驱动电话的接口. 电话接到FXS接口上, 传递电压,提供振铃. FXS接口用的是FXO信令协议.
FXO (Foreign eXchange Office)是连接到电话线的接口.为PBX提供接入到PSTN. FXO 接口用的是FXS信令协议. FXS 接口能让你的电话接到PBX.
Loopstart信令用于模拟的电话线路. 它允许电话指示摘机和挂机转换到指示振铃或者不振铃.
Kewlstart是基于loopstart上, 它扩展了loopstart的功能,它允许切换到发现电话线上的电压指示电话,另一端的电话已经掉线了。大多数的真实的电话交换机,并且几乎没有PBX支持这个功能.对于获得挂断电话通知一般都要求有这个功能.
Groundstart信令有时候用于PBX. 如果你不知它是什么,不用担心,你不会用到它.
每一个硬件每秒发生1000次中断. 当一些原因导致了发生的中断次数少于1000次,就会发生IRQ缺失. 你可以通过用'zttool',查看卡是否发生了中断缺失.
IRQ缺失会导致Asterisk不同的问题发生. 虽然IRQ缺失不会导致报警,但是发生IRQ缺失会出现一些症状,出现很差的声音质量或者PRI错误. 有时候DTMF检查不能正常工作,也是IRQ缺失导致的.
导致IRQ缺失的一些常见的原因如下: -运行 X window system -共用了IRQs -没有硬盘驱动器的DMA -硬盘驱动器的DMA太高(达到udma3) -运行串行终端或帧缓冲器
可以用下面的命令,检查是否发生IRQs共用:
CPU0
0 10756672 XT-PIC timer 2 0 XT-PIC cascade 5 10812879 XT-PIC uhci_hcd, uhci_hcd, wctdm 10 226219 XT-PIC t1xxp, CS46XX 11 1550046 XT-PIC eth0, nvidia 12 387234 XT-PIC i8042 14 32641 XT-PIC ide0 15 18 XT-PIC ide1 NMI 0 LOC 10757616 ERR 40481 MIS 0
可以看到T100P卡和声卡共用了IRQ,TDM400P卡和USB controller共用了.这样很有可能会出问题. 如果你不用USB设备倒是没什么,但是最好是disable USB或者让有自己单独的IRQ.
有以下几种方法让卡有自己的IRQ.
-Turn on APIC -Tweak BIOS settings -Try a different PCI slot -Use setpci
参考下面的网站: http://kb.digium.com/entry/63/
编译内核的时候,不加帧缓冲.
参考这个网站:http://kb.digium.com/entry/61/
Zaptel DTMF检测问题
DTMF检测问题可能是由于很多不同的因素造成的. 最常见的问题是运行X Windows系统. 另一个导致DTMF检测失败的因素是在Zapata.conf里的relaxdtmf选项. 它可能需要打开或关闭. 如果你想强行让所有的DTMF检测由软件做, 你可以在wctdm24xxp.c或者wct4xxp.c里设置vpmdtmfsupport为0,并且重新编译, 或者你可以再运行的时候指定它为内核模块的一个选项.
SIP DTMF检测问题
如果你在使用SIP电话的时候,发送DTMF数字遇到问题, 确认SIP电话里设置的dtmfmode和Asterisk里面设置的dtmfmode一致. 同时,确认你没有同时发送inband和out-of-band(rfc2833)音.
这个问题很少见. 当你的电脑的PCI子系统和OpenVox的卡初始化出现了严重的问题, Linux将显示"PCI Master Abort" 消息上下滑动. 你应该做的是进入系统的BIOS里面,关掉你的主板的PNP (plug and play).如果这样都解决不了问题,你应该和OpenVox的技术支持联系.
如果你用Zaptel线,在最后一个DTMF数字之前出现了延时或者暂停,这是因为在zapata.conf文件里,你已经去掉了echotraining注释.echotraining只是在最后一个数字之前做,这就是导致停顿的原因.为了解决这个问题,你可以把echotraining设置成一个更低的值或者把它关掉.
当你通过FXO拨打电话,出现了咔嗒的噪声,或者当你听到从FXS发来的dialtone,这都是由echotraining引起的.把echotraining关掉。echotraining必然会引起咔嚓声.
www.elastix.org
www.trixobx.org
http://www.debianhelp.co.uk/asterisk.htm
http://www.itinfusion.ca/asterisk/howto-installing-asterisk-on-debian-etch/
http://www.voip-info.org/tiki-index.php?page=Asterisk+Linux+Debian
http://www.voip-info.org/wiki/view/Running+Asterisk+on+Debian
http://www.voip-info.org/wiki/view/Asterisk+Linux+Ubuntu
http://ubuntuforums.org/showthread.php?t=136785
http://www.voip-info.org/wiki/view/Asterisk+Linux+Fedora
http://www.asteriskguru.com/
http://www.asteriskguru.com/tutorials/asterisk_installation_compilation_suse.html
http://voip-manager.net/installation-linux-asterisk.php
http://www.voip-info.org/wiki/view/Asterisk+FreeBSD
http://www.voip-info.org/wiki/view/FreeBSD+zaptel
http://www.voip-info.org/wiki/view/Asterisk+OS+Platforms
http://www.voip-info.org/wiki/view/CentOS+5.2+and+Asterisk+1.6.x+installation
http://www.voip-info.org/wiki/view/CentOS+5+and+Asterisk+1.4.x+installation
http://www.voip-info.org/wiki/view/Asterisk+Linux+Centos
请参考下面这个网站:
http://www.openvox.cn/bbs/viewthread.php?tid=739&extra=page%3D1
如果你安装A1200P/A800P,出现问题
请参考这里:http://bbs.openvox.cn/viewthread.php?tid=819&extra=page%3D1
如果出现这个问题,请参考下面的网站:
http://bbs.openvox.cn/viewthread.php?tid=726&extra=page%3D3
如果你想让FXO加快传送拨号的速度,请参考下面网站:
http://bbs.openvox.cn/viewthread.php?tid=666&extra=page%3D3
如果你一直出现"缓冲同步问题"
请参考下面的网站:
http://bbs.openvox.cn/viewthread.php?tid=405&extra=page%3D6
当客户向我们寻求帮助的时候,为了快速高效的为客户解决问题,请你们给出问题的时候给出以下信息
1) kernel和Linux的版本
2) asterisk和zaptel/dahdi的版本
3) 你系统中用到的卡的名字
4) 在你的系统和asterisk中出现的报错信息
5) 把zaptel(zaptel.conf and zapata.conf)或dahdi(system.conf and chan_dahdi.conf)和extension.conf发给我们
6) 加载了驱动之后,运行下面命令: demsg 并把信息发给我们
7) 运行下面这个命令,把结果发给我们: cat /proc/interrupts
8) 当你打电话的时候,CLI里输出的信息发给我们
9) 在你的系统中用到的协议
10) 如果你们需要我们登入到系统检查错误的话,请把你们的根用户权限的ssh账号发给我们.
11) 备份你的重要文件
12) 详细的描述你的问题
13) 发送你的OpenVox产品的序列号(一般附贴在板卡的后面--条形码下方)
问题如下:
1) 我接到了一个外面的电话,我才能在FXO模块上打出电话
2) 把hookstate设置成offhook(A single ring is good enough),
或者断开连接再重新连接电话线.
请参考下面这个网站:
http://bbs.openvox.cn/viewthread.php?tid=740&extra=page%3D2
如果发生这个错误,请确认以下几点:
1) 模块被正确的编译和安装
2) 编译zaptel的时候,你进入了正确的内核
3) 确认你有权加载模块.
4) 确认wctdm.ko在目录/lib/modules/2.6.XX/extra下
如果发生这个错误,请确认以下几点:
1) 模块被正确的编译和安装
2) 编译zaptel的时候,你进入了正确的内核
3) 确认你有权加载模块.
4) 确认opvxa1200.ko 在目录/lib/modules/2.6.XX/extra下
你可以用下面的工具测试wctdm和opvxa1200
1) zttest
http://www.asteriskguru.com/tutorials/pci_irq_apic_tdm_ticks_te410p_te405p_noise.html
2) zttool
http://www.voip-info.org/wiki/view/Asterisk+zttool
3) ztmonitor
http://www.voip-info.org/wiki/view/Asterisk+zapata+gain+adjustment
4) fxotune
http://www.voip-info.org/wiki/view/Asterisk+fxotune
http://kb.digium.com/entry/134/
在目录/lib/modules/2.6.18-128.el5/misc下
运行命令: modinfo wctdm.ko/opvxa1200
[root@bogon misc]# modinfo wctdm.ko
filename: wctdm.ko
license: GPL
alias: wcfxs
author: Mark Spencer
description: Wildcard TDM400P Zaptel Driver
srcversion: 5E22C66ED4D5B1ADE573C83
alias: pci:v0000E159d00000001sv0000A901sd*bc*sc*i* alias: pci:v0000E159d00000001sv0000A908sd*bc*sc*i* alias: pci:v0000E159d00000001sv0000A801sd*bc*sc*i* alias: pci:v0000E159d00000001sv0000A800sd*bc*sc*i* alias: pci:v0000E159d00000001sv0000A8FDsd*bc*sc*i* alias: pci:v0000E159d00000001sv0000A9FDsd*bc*sc*i* alias: pci:v0000E159d00000001sv0000B119sd*bc*sc*i* alias: pci:v0000E159d00000001sv0000B118sd*bc*sc*i* alias: pci:v0000E159d00000001sv0000B1D9sd*bc*sc*i* alias: pci:v0000E159d00000001sv0000B100sd*bc*sc*i* alias: pci:v0000E159d00000001sv0000E159sd*bc*sc*i* alias: pci:v0000E159d00000001sv0000A159sd*bc*sc*i* depends: zaptel
vermagic: 2.6.18-128.el5 SMP mod_unload 686 REGPARM 4KSTACKS gcc-4.1
parm: debug:int
parm: loopcurrent:int
parm: reversepolarity:int
parm: robust:int
parm: opermode:charp
parm: timingonly:int
parm: lowpower:int
parm: boostringer:int
parm: fastringer:int
parm: fxshonormode:int
parm: battdebounce:uint
parm: battalarm:uint
parm: battthresh:uint
parm: ringdebounce:int
parm: fwringdetect:int
parm: alawoverride:int
parm: fastpickup:int
parm: fxotxgain:int
parm: fxorxgain:int
parm: fxstxgain:int
parm: fxsrxgain:int
[root@bogon misc]# pwd
/lib/modules/2.6.18-128.el5/misc
当以调试模式加载wctdm/opvxa1200
用下面的方式加载驱动:
modprobe wctdm debug=1 //打开调试信息查看文件/var/log/message
请参考下面网站:
https://issues.asterisk.org/view.php?id=12889
请参考下面网站:
https://issues.asterisk.org/view.php?id=9006
请参考下面网站:
http://forums.digium.com/viewtopic.php?p=17034&sid=c914a0a979f8437576c7aa92518fe48b
请参考下面网站:
https://issues.asterisk.org/view.php?id=13427
请参考下面网站:
https://issues.asterisk.org/view.php?id=14121
请参考下面网站:
http://forums.digium.com/viewtopic.php?t=7061
http://lists.digium.com/pipermail/asterisk-users/2007-June/189259.html
请参考下面网站:
http://lists.alioth.debian.org/pipermail/pkg-voip-maintainers/2007-August/009225.html
请参考下面网站:
http://www.openvox.com.cn/bbs/viewtopic.php?t=538&sid=cae3adbe99e80f500d9c9ea7edb52bfb
http://www.openvox.cn/download/other_docs/A800P_A1200P_FAQ(Chinese).pdf
请参考下面网站:
http://www.openvox.cn/download/user_manuals_english_version/Octvqeug_5000.pdf
http://www.octasic.com/en/products/softecho/softecho_asterisk.php
http://www.octasic.com/en/products/softecho/support.php
请参考下面网站:
http://trixbox.org/node/21080 http://www.rowetel.com/ucasterisk/oslec.html
请参考下面网站:
http://www.asterisk.org/forum/viewtopic.php?p=125314&sid=9515c7b03cb14dc698e89467c3d49a86
请参考下面网站:
http://www.voip-info.org/wiki/view/DAHDI
http://docs.tzafrir.org.il/dahdi-linux/
http://docs.tzafrir.org.il/dahdi-tools/
文件zonedata.c包含了用于libtonezone的tone zones 的信息(and hence also in ztcfg). 下面是那些区域的列表:
us United States / North America
au Australia
fr France
nl Netherlands
uk United Kingdom
fi Finland
es Spain
jp Japan
no Norway
at Austria
nz New Zealand
it Italy
us-old United States Circa 1950 / North America
gr Greece
tw Taiwan
cl Chile
se Sweden
be Belgium
sg Singapore
il Israel
br Brazil
hu Hungary
lt Lithuania
pl Poland
za South Africa
pt Portugal
ee Estonia
mx Mexico
in India
de Germany
ch Switzerland
dk Denmark
cz Czech Republic
cn China
ar Argentina
my Malaysia
th Thailand
bg Bulgaria
ve Venezuela
ph Philippines
ru Russian Federation
tr Turkey
ztcfg -> dahdi_cfg
ztmonitor -> dahdi_monitor
ztscan -> dahdi_scan
ztspeed -> dahdi_speed
zttest -> dahdi_test
zttool -> dahdi_tool
zapconf -> dahdi_genconf (deprecates genzaptelconf)
当加载驱动wctdm/opvxa1200时
modprobe wctdm opermode=YOUR COUNTRY
在下面的列表上检查: fxo_mudules.h
{
US, Canada
{ .name = "FCC",
.rt = 1,
.dcv = 0x3,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
},
/* Austria, Belgium, Denmark, Finland, France, Germany,
Greece, Iceland, Ireland, Italy, Luxembourg, Netherlands,
Norway, Portugal, Spain, Sweden, Switzerland, and UK */
{ .name = "TBR21",
.ilim = 1,
.dcv = 0x3,
.acim = 0x2,
.ring_osc = 0x7e6c,
.ring_x = 0x023a,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
},
{ .name = "ARGENTINA",
.dcv = 0x3,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
},
{ .name = "AUSTRALIA",
.ohs = 1,
.mini = 0x3,
.acim = 0x3,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
},
{ .name = "AUSTRIA",
.ohs2 = 1,
.ilim = 1,
.dcv = 0x3,
.acim = 0x3,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
},
{ .name = "BAHRAIN",
.ilim = 1,
.dcv = 0x3,
.acim = 0x2,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
},
{ .name = "BELGIUM",
.ohs2 = 1,
.ilim = 1,
.dcv = 0x3,
.acim = 0x2,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "BRAZIL",
.mini = 0x3,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "BULGARIA",
.ilim = 1,
.dcv = 0x3,
.mini = 0x0,
.acim = 0x3,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "CANADA",
.dcv = 0x3, .battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "CHILE",
.dcv = 0x3,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "CHINA",
.mini = 0x3,
.acim = 0xf,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "COLOMBIA",
.dcv = 0x3, .battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
},
{ .name = "CROATIA",
.ilim = 1,
.dcv = 0x3,
.mini = 0,
.acim = 0x2,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
},
{ .name = "CYPRUS",
.ilim = 1,
.dcv = 0x3,
.acim = 0x2,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "CZECH",
.ilim = 1,
.dcv = 0x3,
.mini = 0,
.acim = 0x2,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
},
{ .name = "DENMARK",
.ohs2 = 1,
.ilim = 1,
.dcv = 0x3,
.acim = 0x2,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "ECUADOR",
.dcv = 0x3,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "EGYPT",
.mini = 0x3,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "ELSALVADOR",
.dcv = 0x3,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "FINLAND",
.ohs2 = 1,
.ilim = 1,
.dcv = 0x3,
.acim = 0x2,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
},
{ .name = "FRANCE",
.ohs2 = 1,
.ilim = 1,
.dcv = 0x3,
.mini = 0,
.acim = 0x2,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "GERMANY",
.ohs2 = 1,
.ilim = 1,
.dcv = 0x3,
.acim = 0x3,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "GREECE",
.ohs2 = 1,
.ilim = 1,
.dcv = 0x3,
.acim = 0x2,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "GUAM",
.dcv = 0x3,
.battdebounce = 64,
.battalarm = 1000, .battthresh = 3,
}, { .name = "HONGKONG",
.dcv = 0x3, .battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "HUNGARY",
.dcv = 0x3,
.battdebounce = 64,
.battalarm = 1000,
.battthresh = 3,
}, { .name = "ICELAND",
.ohs2 = 1, .ilim = 1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "INDIA",
.dcv = 0x3, .acim = 0x4, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "INDONESIA",
.dcv = 0x3, .battdebounce = 64, .battalarm = 1000,
.battthresh = 3,
}, { .name = "IRELAND",
.ohs2 = 1, .ilim = 1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "ISRAEL",
.ilim = 1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "ITALY",
.ohs2 = 1, .ilim = 1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "JAPAN",
.mini = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "JORDAN",
.mini = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "KAZAKHSTAN",
.dcv = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "KUWAIT",
.dcv = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "LATVIA",
.ilim = 1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "LEBANON",
.ilim = 1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "LUXEMBOURG",
.ohs2 = 1, .ilim = 1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "MACAO",
.dcv = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, /* Current loop >= 20ma */
{ .name = "MALAYSIA",
.mini = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "MALTA",
.ilim = 1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "MEXICO",
.dcv = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "MOROCCO",
.ilim = 1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "NETHERLANDS",
.ohs2 = 1, .ilim = 1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
},
{ .name = "NEWZEALAND",
.dcv = 0x3, .acim = 0x4, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "NIGERIA",
.ilim = 0x1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "NORWAY",
.ohs2 = 1, .ilim = 1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "OMAN",
.mini = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "PAKISTAN",
.mini = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "PERU",
.dcv = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "PHILIPPINES",
.mini = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "POLAND",
.rz = 1, .rt = 1, .dcv = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "PORTUGAL",
.ohs2 = 1, .ilim = 1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "ROMANIA",
.dcv = 3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "RUSSIA",
.mini = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "SAUDIARABIA",
.dcv = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "SINGAPORE",
.dcv = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "SLOVAKIA",
.dcv = 0x3, .acim = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "SLOVENIA",
.dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "SOUTHAFRICA",
.ohs = 1, .rz = 1, .dcv = 0x3, .acim = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "SOUTHKOREA",
.dcv = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "SPAIN",
.ohs2 = 1, .ilim = 1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "SWEDEN",
.ohs2 = 1, .ilim = 1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "SWITZERLAND",
.ohs2 = 1, .ilim = 1, .dcv = 0x3, .acim = 0x2, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "SYRIA",
.mini = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "TAIWAN",
.mini = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "THAILAND",
.mini = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "UAE",
.dcv = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "UK",
.ohs2 = 1, .ilim = 1, .dcv = 0x3, .acim = 0x5, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "USA",
.dcv = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, { .name = "YEMEN",
.dcv = 0x3, .battdebounce = 64, .battalarm = 1000, .battthresh = 3,
}, };
请参考下面这些网站:
http://www.ainslie.org.uk/callerid/cli_faq.htm
http://www.asteriskguru.com/tutorials/calleridall_function.html
https://issues.asterisk.org/view.php?id=7787
http://asterisk.pbx.in/callerid-standards
http://kb.digium.com/entry/3/
如果你用wctdm或opvxa1200,Zaptel和Asterisk 1.4.22会出现一个呼出的普遍问题. 不能呼出的原因是Asterisk 1.4.22有个新的特性,它会检查模拟线是否插上了,但是只有用Dahdi的时候才有这个特性.为了解决这个问题,你可以按下面方法做.
在/asterisk-1.4.22、channels/chan_dahdi.c下找到下面这行
把"0"改成"1"
你可以试着用下面的方面解决问题:
1) 检查IRQ,确定系统能正确的处理IRQ
2) 运行zttest查看输出结果
3) Disable the X window and framebuffer(set vga=normal from grub)
4) 当用IDE驱动的时候,请打开DMA control
5) 把卡的IRQ绑定到特定的CPU,例如:
echo 1 > /proc/irq/217/smp_affinity #wcfxo
6) 设置latency timer: setpci -v -s 04:06.0 LATENCY_TIMER=f8 #wcfxo
如果你用OSLEC,你必须注释echotraining.
否则通道将会被静音.
可能的解决方法有以下:
1) 你的PSTN服务提供商用电压下降来监控断开,
请试着去编辑zaptel.h里的DCT,把它的值设置为100ms或者更大.
2) 如果你的服务提供商提供极性反转
断开监控设置如下:
hanguponpolarityswitch=yes
answeruponpolarityswitch=yes
3) 如果你的服务提供商提供忙音或断开监控
busydetect=yes busycount=6
在zapata.conf里面把progzone设置成你的国家代码
wctdm/opvxa1200用RJ11线缆.请参考下面网站:
http://www.tech-faq.com/rj-11.shtml
http://en.wikipedia.org/wiki/RJ11,_RJ14,_RJ25
http://openvox.cn/products/show.php?itemid=120&lang=2
如果你用装有wctdm/opvxa1200的FXS,你必须用12v的电源(4 pin Molex power cable)为FXS供电。
请参考下面网站:
http://www.playtool.com/pages/psuconnectors/connectors.html#peripheral
http://en.wikipedia.org/wiki/Computer_power_supply
请参考下面网址:
http://bbs.openvox.cn/viewthread.php?tid=873&extra=page%3D1
用户必须注