我正在学习星号.
安装星号后,我尝试使用它连接它
asterisk -rvvvvc.
Run Code Online (Sandbox Code Playgroud)
但它给了我以下错误消息:
无法连接到远程星号(/var/run/asterisk.ctl存在吗?)
我该如何解决这个问题?
我有兴趣了解有关Asterisk(开源PBX)的更多信息,所以我想我会尝试为我的家建立一个"爱好"系统.只需要为我的家人提供一个满满的语音邮件系统.也就是说,直到我发现Digium的TDM11B套件成本超过500美元(!),如果我想获得带有回声消除功能的FXO/FXS卡.
我的问题是:学习Asterisk的最佳方法是什么?此外,如果我只是想在家中获得一个灵活的语音邮件版本,那么我可以做到这一点,而无需购买昂贵的卡来连接到PSTN吗?
谢谢,
我正在使用Switchvox,一个Asterisk PBX,我想在EC2上托管它.
Digium Switchvox提供了一个ISO,其中包含托管pbx服务器所需的一切:操作系统,软件等.它基本上是服务器的映像.
如何使用他们提供的自定义ISO实例化新的EC2实例?
我正在尝试编写一个C++程序(尽管如果有人知道更好的(IAX/SIP)替代方案,那么连接到Asterisk服务器也会很好).
连接后,它应该听取音频和处理.它还应该发回音频.我正在使用https://sourceforge.net/projects/iaxclient/(注意有几个版本(beta版,常规版,svn版),它们的行为都不同).
现在,如果我理解了库的代码是正确的,那么它可以使用事件调用回调函数.其中一个事件是IAXC_EVENT_AUDIO.在那个IAXC_EVENT_AUDIO的结构中有一个方向; 传出来的.这就是我迷失的地方:对于某些版本的iaxclient,我只接收IAXC_SOURCE_REMOTE消息,其中包含两者.如果我切换到测试模式(应该只禁用音频设备),我通常什么也得不到.当我收到这两个IAXC_SOURCE_LOCAL和IAXC_SOURCE_REMOTE,我试图设置这些事件随机数据的缓冲器,但在所有的(我把它设置为RAW模式),不到达另一端.
任何人都有任何建议如何解决这个问题?
我的测试代码是:
#include <iaxclient.h>
#include <unistd.h>
int iaxc_event_callback(iaxc_event e)
{
if (e.type == IAXC_EVENT_TEXT) {
printf("text\n");
}
else if (e.type == IAXC_EVENT_LEVELS) {
printf("level\n");
}
else if (e.type == IAXC_EVENT_STATE) {
struct iaxc_ev_call_state *st = iaxc_get_event_state(&e);
printf("\tcallno %d state %d format %d remote %s(%s)\n", st->callNo, st->state, st->format,st->remote, st->remote_name);
iaxc_key_radio(st->callNo);
}
else if (e.type == IAXC_EVENT_NETSTAT) {
printf("\tcallno %d rtt %d\n", e.ev.netstats.callNo, e.ev.netstats.rtt);
}
else if (e.type == IAXC_EVENT_AUDIO) {
printf("\t AUDIO!!!! %d %u %d\n", …
Run Code Online (Sandbox Code Playgroud) 我对我在centos服务器上运行的Asterisk版本感到有点困惑.不同版本的文档有所不同.如何使用putty命令知道版本.
我们用8端口FXO运行星号.FXO连接到我们的旧PBX(Samsung Office Serv 100).
现在我们要记录通过FXO路由的所有呼叫(如果它被拨到外面或从外面传来).
这是图表
|------|---------------------------------
| |--------------24 Lines ---------- Other clasic Phones
PRI------ | PBX |---------------------------------
| |
| |
| |-----------|---------|
| |--8 lines--| |---------
| |-----------|Asterisk |---------- 50 SIP phone
|------| | |----------
|---------|----------
Run Code Online (Sandbox Code Playgroud)
有一个简单的方法吗?
我创建了一个作为deamon运行的linux服务(并从/etc/init.d/X开始).我需要设置一些可以被应用程序访问的环境变量.
这是场景.该应用程序是一组Perl AGI脚本,依赖于(因此需要以asstisk用户身份运行)asterisk用户,但asterisk没有shell.理想情况下,我只需在/home/asterisk/.bashrc中设置它,但星号不存在.
如何在星号用户的运行环境中为我的应用设置环境变量,以便我的应用可以使用它们?
我需要为朋友的公司设置一个简单的IVR系统,让呼叫者通过按电话键浏览菜单.它有点像公交车时刻表.
对于今天的日程表按'1',明天的日程表按'2'等等.
它只是一个信息系统,即没有导航路线最终会与真人结束,但只播放音频信息.
现在,我以前从未设置过这样的东西,并且在Google上进行了一些挖掘.似乎我将能够使用Asterisk实现这一目标.
我有一个连接到FreePbx的Twilio SIP中继,所有用户都使用FreePBX的webrtc模块拨打电话.他们可以通过双向音频拨打和接听电话,但是对于拨出呼叫,呼叫者听不到铃声(振铃),因为B号码正在响铃,这导致与用户的某种程度的混淆.
我已经检查了出站拨号设置中的r标志,这已启用,但除此之外我有点卡住了.
[SIP设置]
host=hostname
username=username
secret=supersecret
type=peer
Run Code Online (Sandbox Code Playgroud)
在设置 - >星号SIP设置中,我设置了外部和内部网络
要确认,使用带扩展功能的软电话工作正常,只能通过WEBRTC.
我已经打开了wireshark的痕迹,这些都显示了两端的180响
详细的通话记录:https://pastebin.com/s7BfwUMw
我正在使用sagoma 8端口卡我chan_dahdi.conf
的配置端口是
;autogenerated by /usr/sbin/wancfg_dahdi do not hand edit
;autogenrated on 2015-06-12
;Dahdi Channels Configurations
;For detailed Dahdi options, view /etc/asterisk/chan_dahdi.conf.bak
[trunkgroups]
[channels]
context=default
usecallerid=yes
hidecallerid=no
callwaiting=yes
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
canpark=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=yes
relaxdtmf=yes
rxgain=0.0
txgain=0.0
group=1
callgroup=1
pickupgroup=1
immediate=no
;Sangoma A108 port 1 [slot:4 bus:2 span:1] <wanpipe1>
switchtype=euroisdn
context=from-pstn
group=1
echocancel=yes
signalling=pri_cpe
channel =>1-15,17-31
;Sangoma A108 port 2 [slot:4 bus:2 span:2] <wanpipe2>
switchtype=euroisdn
context=from-pstn
group=2
echocancel=yes
signalling=pri_cpe
channel =>32-46,48-62
;Sangoma A108 port 3 [slot:4 …
Run Code Online (Sandbox Code Playgroud)