由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
_voip版 - 新手请教个问题:Asterisk+GV是不是要这么回事?
相关主题
asterisk 1.6 的bridge功能怎么用?asterisk 1.8的incoming call的问题
问一下,版上有没大牛分享过asterisk的配置文件?重新来过了.
每个月自动打 ipkall, 自动 pick upasterisk 1.8+gtalk总结
asterisk又接不起来了<==已解决无耻地问一些ASTERISK加GV加DOCK STAR的问题
Asterisk 1.4, GV call out problem求救!asterisk分机打另一个分机只响铃二次就出忙音.
gv+sipgate+freepbx+ata, 15分钟限制?崩溃了,Asterisk 1.8.7.1+GV+Dockstar 没有incoming call啊
关于asterisk注册nonoh的问题obi100 deal
谁能共享一个asterisk dialplan?asterisk gtalk接不起来的,你们有没有试过
相关话题的讨论汇总
话题: exten话题: gv话题: sipgate话题: nxxnxxxxxx话题: did
1 (共1页)
s*k
发帖数: 507
1
使用Google Voice是不是这样的:在GV中播号,然后自己的电话响,对方的也响,然后
拿起来通话
那么如果设置好Asterisk+Pygooglevoice以后,是不是也是这样?需要用电话拨号,然
后自己挂
掉,然后铃响了以后再接起来?
如果是这样也太麻烦了,估计LD不会批准.岂不是Asterisk白折腾了。不如老老实实给Gizmo5或者
SipGate交钱,最多GV号码同时转接到Gizmo5和SipGate号码上,然后ATA直接同时登陆Gizmo5和
SipGate,作为冗余。
a9
发帖数: 21638
2
不是。
用asterisk+pygooglevoice以后,是你拨号,然后asterisk执行pygooglexxxxx,然后
google回拨,asterisk自动把这个回拨绑定到你还没挂的这通电话上,然后google
voice拨对方号码。

给Gizmo5或者
陆Gizmo5和

【在 s*k 的大作中提到】
: 使用Google Voice是不是这样的:在GV中播号,然后自己的电话响,对方的也响,然后
: 拿起来通话
: 那么如果设置好Asterisk+Pygooglevoice以后,是不是也是这样?需要用电话拨号,然
: 后自己挂
: 掉,然后铃响了以后再接起来?
: 如果是这样也太麻烦了,估计LD不会批准.岂不是Asterisk白折腾了。不如老老实实给Gizmo5或者
: SipGate交钱,最多GV号码同时转接到Gizmo5和SipGate号码上,然后ATA直接同时登陆Gizmo5和
: SipGate,作为冗余。

s*k
发帖数: 507
3
哇,A大出手了!明白了!
是不是extension中这句
exten => _NXXNXXXXXX,n,Set(DB(gv_dialout/channel)=${CHANNEL})
是用来绑定的?

exten => _NXXNXXXXXX,n,System(gvoice -e ${GV_ACCT_NAME} -p ${GV_ACCT_PASS}
call ${EXTEN} 1${SipGate_DID})
显然是用外部python程序来播号。

【在 a9 的大作中提到】
: 不是。
: 用asterisk+pygooglevoice以后,是你拨号,然后asterisk执行pygooglexxxxx,然后
: google回拨,asterisk自动把这个回拨绑定到你还没挂的这通电话上,然后google
: voice拨对方号码。
:
: 给Gizmo5或者
: 陆Gizmo5和

a9
发帖数: 21638
4
前面一句是保存你当前的channel到数据库中。
后面在gv拨进来后有一句,是检索数据库中有没有上面的记录,如果有,就绑定(
bridge)

然后

【在 s*k 的大作中提到】
: 哇,A大出手了!明白了!
: 是不是extension中这句
: exten => _NXXNXXXXXX,n,Set(DB(gv_dialout/channel)=${CHANNEL})
: 是用来绑定的?
: 而
: exten => _NXXNXXXXXX,n,System(gvoice -e ${GV_ACCT_NAME} -p ${GV_ACCT_PASS}
: call ${EXTEN} 1${SipGate_DID})
: 显然是用外部python程序来播号。

s*k
发帖数: 507
5
了解了
是不是
exten => ${SipGate_DID},n,Bridge(${DB_DELETE(gv_dialout/channel)},p)
我觉得了解了原理,可以自己写个script代替pygooglevoice,似乎就是自动访问google voice
的网页,登陆,并且拨电话就好了。

【在 a9 的大作中提到】
: 前面一句是保存你当前的channel到数据库中。
: 后面在gv拨进来后有一句,是检索数据库中有没有上面的记录,如果有,就绑定(
: bridge)
:
: 然后

a9
发帖数: 21638
6
可以呀,我就写了一个放app engine上了。用java写的。
要是在router上用,就不用装python了。python占系统资源还是不少的。

google voice

【在 s*k 的大作中提到】
: 了解了
: 是不是
: exten => ${SipGate_DID},n,Bridge(${DB_DELETE(gv_dialout/channel)},p)
: 我觉得了解了原理,可以自己写个script代替pygooglevoice,似乎就是自动访问google voice
: 的网页,登陆,并且拨电话就好了。

s*k
发帖数: 507
7
用php+curl写的拨号程序弄好了,用命令行运行gvoice {number}的时候,自家电话能
响,提起来能接通
但是好像用电话拨号不能触发这个script
[gv-outbound]
exten => _NXXNXXXXXX,1,NoOp()
exten => _NXXNXXXXXX,n,Set(DB(gv_dialout/channel)=${CHANNEL})
exten => _NXXNXXXXXX,n,System(gvoice ${EXTEN})
exten => _NXXNXXXXXX,n,Wait(20)
exten => _NXXNXXXXXX,n,Hangup()
好像System(gvoice ${EXTEN})根本没有运行,不知道我这里搞错了什么了

【在 a9 的大作中提到】
: 可以呀,我就写了一个放app engine上了。用java写的。
: 要是在router上用,就不用装python了。python占系统资源还是不少的。
:
: google voice

a9
发帖数: 21638
8
加上gvoice的路径试试看。

【在 s*k 的大作中提到】
: 用php+curl写的拨号程序弄好了,用命令行运行gvoice {number}的时候,自家电话能
: 响,提起来能接通
: 但是好像用电话拨号不能触发这个script
: [gv-outbound]
: exten => _NXXNXXXXXX,1,NoOp()
: exten => _NXXNXXXXXX,n,Set(DB(gv_dialout/channel)=${CHANNEL})
: exten => _NXXNXXXXXX,n,System(gvoice ${EXTEN})
: exten => _NXXNXXXXXX,n,Wait(20)
: exten => _NXXNXXXXXX,n,Hangup()
: 好像System(gvoice ${EXTEN})根本没有运行,不知道我这里搞错了什么了

s*k
发帖数: 507
9
加了,似乎没效果
是不是_NXXNXXXXXX没匹配上任何东西?asterisk的extension配置文件实在看不懂。
现在line1直连Gizmo5,用#选择
line2连asterisk,打算打美国用GV,打中国用其它
试了拨号1xxxxxxxxxx,似乎不行
目前完整的extension.conf如下
[globals]
GV_NUMBER=我的GV号码
SipGate_DID=我的SipGate号码
SipGate_ID=我的SipGate ID
[from-trunk]
include => ext-did
;这段还没调试,还没注册nonoh
[from-internal]
;exten => _011X.,1,Hangup
;exten => _01186X.,1,Set(CALLERID(num)=${GV_NUMBER})
;exten => _01186X.,n,Dial(SIP/${EXTEN}@nonoh,50,trg)
;exten => _01186X.,n,Congestion
;exten => _8[06-8]X.,1,Set(CALLERID(num)=${GV_NUMBER})
;exten => _8[06-8]X.,n,Dial(SIP/${EXTEN}@SipGate,30,trg)
;exten => _8[06-8]X.,n,Congestion
;exten => _NXXNXXXXXX,1,Dial(Local/${EXTEN}@gv-outbound/n)
exten => _X.,1,Dial(SIP/${EXTEN}@SipGate,30,trg)
[gv-outbound]
exten => _NXXNXXXXXX,1,NoOp()
exten => _NXXNXXXXXX,n,Set(DB(gv_dialout/channel)=${CHANNEL})
exten => _NXXNXXXXXX,n,System(/mnt/apps/asterisk/gvoice ${EXTEN})
exten => _NXXNXXXXXX,n,Wait(20)
exten => _NXXNXXXXXX,n,Hangup()


[ext-local]

exten => 100a,1,Dial(SIP/100a)
exten => 100a,2,Set(VOLUME(TX)=2)
exten => 100a,n,Hangup
[ext-did]

exten => ${SipGate_DID},1,GotoIf($[${CALLERID(num)}=~"(\d)?${GV_NUMBER}"
> 0]?:normalcall)
exten => ${SipGate_DID},n,Bridge(${DB_DELETE(gv_dialout/channel)},p)
exten => ${SipGate_DID},n,Hangup()
exten => ${SipGate_DID},n(normalcall),Goto(ext-local,100a,1)
;不知道为什么,接电话的时候送进来好像是1xxxxe0之类的号码,只能copy了上面的
exten => ${SipGate_ID},1,GotoIf($[${CALLERID(num)}=~"(\d)?${SipGate_ID}"
> 0]?:normalcall)
exten => ${SipGate_ID},n,Bridge(${DB_DELETE(gv_dialout/channel)},p)
exten => ${SipGate_ID},n,Hangup()
exten => ${SipGate_ID},n(normalcall),Goto(ext-local,100a,1)

【在 a9 的大作中提到】
: 加上gvoice的路径试试看。
a9
发帖数: 21638
10
似你的_NXXNXXXXXX不match1xxxx,N代表2-9
另外,你用asterisk -rvvvvvvvvvvvvvvvvvvvvvvvv 多加几个V连上,看看debug输出有
没有进到这个extensions里面。



面的

【在 s*k 的大作中提到】
: 加了,似乎没效果
: 是不是_NXXNXXXXXX没匹配上任何东西?asterisk的extension配置文件实在看不懂。
: 现在line1直连Gizmo5,用#选择
: line2连asterisk,打算打美国用GV,打中国用其它
: 试了拨号1xxxxxxxxxx,似乎不行
: 目前完整的extension.conf如下
: [globals]
: GV_NUMBER=我的GV号码
: SipGate_DID=我的SipGate号码
: SipGate_ID=我的SipGate ID

相关主题
gv+sipgate+freepbx+ata, 15分钟限制?asterisk 1.8的incoming call的问题
关于asterisk注册nonoh的问题重新来过了.
谁能共享一个asterisk dialplan?asterisk 1.8+gtalk总结
r****t
发帖数: 10904
11
你程序 4 小时就写好了?这种用 php login googlevoice 的程序不简单吧...

【在 s*k 的大作中提到】
: 用php+curl写的拨号程序弄好了,用命令行运行gvoice {number}的时候,自家电话能
: 响,提起来能接通
: 但是好像用电话拨号不能触发这个script
: [gv-outbound]
: exten => _NXXNXXXXXX,1,NoOp()
: exten => _NXXNXXXXXX,n,Set(DB(gv_dialout/channel)=${CHANNEL})
: exten => _NXXNXXXXXX,n,System(gvoice ${EXTEN})
: exten => _NXXNXXXXXX,n,Wait(20)
: exten => _NXXNXXXXXX,n,Hangup()
: 好像System(gvoice ${EXTEN})根本没有运行,不知道我这里搞错了什么了

s*k
发帖数: 507
12
chan_sip.c:17295 handle_request_invite: Call from '100a' to extension
'7474743246' rejected because extension not found
怎么回事啊?
dialplan show的时候明明有:
[ Context 'gv-outbound' created by 'pbx_config' ]
'_NXXNXXXXXX' => 1. NoOp() [pbx_config]
2. Set(DB(gv_dialout/channel)=${CHANNEL}) [pbx_config]
3. System(/mnt/apps/asterisk/gvoice ${EXTEN}) [pbx_config]
4. Wait(20) [pbx_config]
5. Hangup() [pbx_config]

【在 a9 的大作中提到】
: 似你的_NXXNXXXXXX不match1xxxx,N代表2-9
: 另外,你用asterisk -rvvvvvvvvvvvvvvvvvvvvvvvv 多加几个V连上,看看debug输出有
: 没有进到这个extensions里面。
:
:
:
: 面的

i**w
发帖数: 883
13
sip.conf里面100a的context没有设吧
a9
发帖数: 21638
14
你sip.conf里,sipgate配的exten是多少?应该配成你sip.conf里,sipgate配的exten
是多少?应该配成ext-did
另外,我没在extensions里面这样用过变量。

出有
【 】 Ctrl-Q 求救 状态 [插入][1,47][ ][ ] 时间【Sun Feb 6 18:18】
出有

【在 s*k 的大作中提到】
: chan_sip.c:17295 handle_request_invite: Call from '100a' to extension
: '7474743246' rejected because extension not found
: 怎么回事啊?
: dialplan show的时候明明有:
: [ Context 'gv-outbound' created by 'pbx_config' ]
: '_NXXNXXXXXX' => 1. NoOp() [pbx_config]
: 2. Set(DB(gv_dialout/channel)=${CHANNEL}) [pbx_config]
: 3. System(/mnt/apps/asterisk/gvoice ${EXTEN}) [pbx_config]
: 4. Wait(20) [pbx_config]
: 5. Hangup() [pbx_config]

s*k
发帖数: 507
15
实在搞不定了,目前的状态是:
Executing [7474743246@from-internal:1] Dial("SIP/100a-2871c000",
"Local/7474743246@gv-outbound/n") in new stack
== Everyone is busy/congested at this time (1:0/0/1)
-- Auto fallthrough, channel 'SIP/100a-2871c000' status is
'CHANUNAVAIL'
sip.conf里面
[100a]
type=friend
host=dynamic
secret=我的密码
context=from-internal
allow=ulaw
port=5062
nat=no
dtmfmode=rfc2833
canreinvite=no
deny=0.0.0.0/0.0.0.0
permit=10.10.0.0/255.255.255.0
extension.conf里面
[from-internal]
exten => _NXXNXXXXXX,1,Dial(Local/${EXTEN}@gv-outbound/n)
[gv-outbound]
exten => _NXXNXXXXXX,1,NoOp()
exten => _NXXNXXXXXX,n,Set(DB(gv_dialout/channel)=${CHANNEL})
exten => _NXXNXXXXXX,n,System(/mnt/app/asterisk/gvoice ${EXTEN})
exten => _NXXNXXXXXX,n,Wait(20)
exten => _NXXNXXXXXX,n,Hangup()

exten

【在 a9 的大作中提到】
: 你sip.conf里,sipgate配的exten是多少?应该配成你sip.conf里,sipgate配的exten
: 是多少?应该配成ext-did
: 另外,我没在extensions里面这样用过变量。
:
: 出有
: 【 】 Ctrl-Q 求救 状态 [插入][1,47][ ][ ] 时间【Sun Feb 6 18:18】
: 出有

s*k
发帖数: 507
16
好像有,但是不知道对不对,
哪里可以找到extension的配置说明文档看看

不是很难,先登陆,然后取得_rnr_se,然后拨号,三步就可以了
我有别人用shell写的script作参考

【在 i**w 的大作中提到】
: sip.conf里面100a的context没有设吧
a9
发帖数: 21638
17
google呀。

【在 s*k 的大作中提到】
: 好像有,但是不知道对不对,
: 哪里可以找到extension的配置说明文档看看
:
: 不是很难,先登陆,然后取得_rnr_se,然后拨号,三步就可以了
: 我有别人用shell写的script作参考

a9
发帖数: 21638
18
host=dynamic
secret=我的密码
context=from-internal
中的context=from-internal改成gv-outbound

【在 s*k 的大作中提到】
: 实在搞不定了,目前的状态是:
: Executing [7474743246@from-internal:1] Dial("SIP/100a-2871c000",
: "Local/7474743246@gv-outbound/n") in new stack
: == Everyone is busy/congested at this time (1:0/0/1)
: -- Auto fallthrough, channel 'SIP/100a-2871c000' status is
: 'CHANUNAVAIL'
: sip.conf里面
: [100a]
: type=friend
: host=dynamic

s*k
发帖数: 507
19
不行了,实在折腾不动了
现在的进展是,如果拨号以后过一段时间挂掉,原来拨号的那个电话就能响,接起来就
能与拨的那个电话通话.但是不能自动就接上
顺便说下,我这里func_db.so居然default没有load
今天谢谢大家(A9,ianw, repast)的帮忙,特别是A9!
r****t
发帖数: 10904
20

这个后面应该紧接着一条

【在 s*k 的大作中提到】
: 实在搞不定了,目前的状态是:
: Executing [7474743246@from-internal:1] Dial("SIP/100a-2871c000",
: "Local/7474743246@gv-outbound/n") in new stack
: == Everyone is busy/congested at this time (1:0/0/1)
: -- Auto fallthrough, channel 'SIP/100a-2871c000' status is
: 'CHANUNAVAIL'
: sip.conf里面
: [100a]
: type=friend
: host=dynamic

相关主题
无耻地问一些ASTERISK加GV加DOCK STAR的问题obi100 deal
求救!asterisk分机打另一个分机只响铃二次就出忙音.asterisk gtalk接不起来的,你们有没有试过
崩溃了,Asterisk 1.8.7.1+GV+Dockstar 没有incoming call啊最进用obi + GV 好像有问题
r****t
发帖数: 10904
21
load 了 func_db.so 以后这个问题还有?
这个状态说明 asterisk 注册到 provider, ata -> asterisk 啥的都正常。
inbound context 里面有没有判断是否是从 gv 来的回拨?
[inbound-gv]
; _X. matches any number starting with non-zero(?)
exten => _X.,1,Set(DID_EXTEN=${SIP_HEADER(To):5})
exten => _X.,n,Set(DID_EXTEN=${CUT(DID_EXTEN,@,1)})
exten => _X.,n,Set(DID_CID=${CALLERID(num)})
exten => _X.,n,NoOp(Incoming call from ${DID_CID:-10})
exten => _X.,n,GotoIf($[${DID_CID:-10} = 我的GV号码]?:normalcall)
; gizmo5 reports +1xxx, sipgate xxx
exten => _X.,n,NoOp(This is calling from GV)
exten => _X.,n,NoCDR()
exten => _X.,n,Bridge(${DB_DELETE(gv_dialout/channel)})
exten => _X.,n,Hangup()
exten => _X.,n(normalcall),Goto(from-trunk,${DID_EXTEN},1)
exten => _X.,n,Hangup()
; inbound
[from-trunk]
exten => _X.,1,Dial(SIP/199&SIP/ata&SIP/androidphone)

【在 s*k 的大作中提到】
: 不行了,实在折腾不动了
: 现在的进展是,如果拨号以后过一段时间挂掉,原来拨号的那个电话就能响,接起来就
: 能与拨的那个电话通话.但是不能自动就接上
: 顺便说下,我这里func_db.so居然default没有load
: 今天谢谢大家(A9,ianw, repast)的帮忙,特别是A9!

s*k
发帖数: 507
22
搞定了
原来送进来的是我的SipGate Account no,就是那个11xxxxe0的号码,然后没有合适的
匹配
不容易啊,
r****t
发帖数: 10904
23
这个是你 sip.conf 注册行自己指定的吧?

【在 s*k 的大作中提到】
: 搞定了
: 原来送进来的是我的SipGate Account no,就是那个11xxxxe0的号码,然后没有合适的
: 匹配
: 不容易啊,

s*k
发帖数: 507
24
是不是这个?
fromuser=

【在 r****t 的大作中提到】
: 这个是你 sip.conf 注册行自己指定的吧?
a9
发帖数: 21638
25
register=...... / 斜线后面的。

【在 s*k 的大作中提到】
: 是不是这个?
: fromuser=

s*k
发帖数: 507
26
完全搞定,多谢

【在 a9 的大作中提到】
: register=...... / 斜线后面的。
1 (共1页)
相关主题
asterisk gtalk接不起来的,你们有没有试过Asterisk 1.4, GV call out problem
最进用obi + GV 好像有问题gv+sipgate+freepbx+ata, 15分钟限制?
caller id?关于asterisk注册nonoh的问题
Bridge vs park?谁能共享一个asterisk dialplan?
asterisk 1.6 的bridge功能怎么用?asterisk 1.8的incoming call的问题
问一下,版上有没大牛分享过asterisk的配置文件?重新来过了.
每个月自动打 ipkall, 自动 pick upasterisk 1.8+gtalk总结
asterisk又接不起来了<==已解决无耻地问一些ASTERISK加GV加DOCK STAR的问题
相关话题的讨论汇总
话题: exten话题: gv话题: sipgate话题: nxxnxxxxxx话题: did