标签: freeswitch

freeswitch和red5之间的区别

首先我想知道freeSwitch和Red5有什么区别?

由于我对red5有很好的工作经验,而且我使用Red5制作了许多使用流媒体视频/音频的应用程序.

但现在我无法理解如果Red5可以进行视频/音频会议或流式直播视频,那么FreeSwitch在会议或其他方面的用途是什么.

我想用PHP或rails或Django(Python)创建一个应用程序,用户可以通过参加会议录制他们的语音,并且在录制时,所有用户的语音将被广播给其他成员.

那么现在我真的想知道什么是正确的解决方案呢?

red5 freeswitch

5
推荐指数
1
解决办法
506
查看次数

远程事件套接字的Freeswitch ACL配置

我有一台运行在一台服务器上的FS服务器,在一台远程服务器上,我有一个Node JS实例,它使用node_esl(用于FS的Node JS事件套接字库)控制它。

每次向服务器发送请求时,都会出现以下错误:

[WARNING] mod_event_socket.c:2603 IP ::ffff:192.168.59.3 Rejected by acl "loopback.auto"
Run Code Online (Sandbox Code Playgroud)

FS服务器具有2个接口:一个使用公共IP,第二个在专用网络(192.168.59.0/24)上。

我检查了acl.conf.xml文件和event_socket.con.xml,到目前为止,我看不到任何特别之处。

最后一件事:这是一个开发环境,FS正在VM(VirtualBox)中运行。用于VM的接口是192.168.59.103,而GW是192.168.59.3,因此,如果不是ACL问题(或两者都不是),则可能是NAT问题。

您对ACL配置应该有什么想法?

acl virtualbox virtual-machine freeswitch node.js

5
推荐指数
2
解决办法
3555
查看次数

Freeswitch bgapi使用ignore_early_media = true发出命令

我在freeswitch上尝试以下场景:

  • 创建一个电话(a-leg)
  • 创建另一个电话(b-leg)
  • 桥然后在一起

b-leg手机是其他freeswitch的拨号方案如下:

<extension name="EarlyMedia">
    <condition field="destination_number" expression="^[+]?[1]?<MY_NUMBER>">
        <action application="pre_answer"/>
        <action application="playback" data="/home/ubuntu/EARLY_MEDIA.wav"/>
        <action application="sleep" data="1000"/>
        <action application="answer"/>
        <action application="playback" data="/home/ubuntu/CALL_MEDIA.wav"/>
        <action application="sleep" data="1000"/>
    </condition>
</extension>
Run Code Online (Sandbox Code Playgroud)

我发送给freeswitch的命令序列如下:

  • 一条腿

bgapi originate {ignore_early_media=true,bridge_early_media=false,origination_caller_id_number=sofia/external/<MY_FROM_NUMBER>@<MY_IP>,origination_channel_name=<MY_CHANNEL>,ringback=\'%(2000,4000,440,480)\'}sofia/external/<A-LEG NUMBER>@<MY_IP> &park()

  • B-腿

bgapi originate {ignore_early_media=true,bridge_early_media=false,origination_caller_id_number=sofia/external/<MY_FROM_NUMBER>@<MY_IP>,origination_channel_name=<MY_CHANNEL>,ringback=\'%(2000,4000,440,480)\'}sofia/external/<B-LEG NUMBER>@<MY_IP> &park()

  • uuid_bridge

bgapi uuid_bridge <A-LEG UUID> <B-LEG UUID>

问题是即使使用ignore_early_media = true,bridge_early_media = false我听到A-LEG上的早期媒体

freeswitch

5
推荐指数
1
解决办法
1123
查看次数

FreeSWITCH的.错误487角色冲突(在REINVITE上)

我正在尝试将视频轨道添加到流中,然后renegotiate()从JsSip 调用.但是,当我从调用者那里做它时工作正常,但是当我从被调用者那里做它时它不起作用(会话终止).我查看了Freeswitch日志,发现了下一行:

2017-05-25 07:41:02.177674 [NOTICE] switch_rtp.c:4591 Activating RTP video ICE: 1Xn5:7JJhZkbbu6MxTEpr 95.29.39.101:55140
2017-05-25 07:41:02.177674 [INFO] switch_core_media.c:3675 Activating video RTCP PORT 55140
2017-05-25 07:41:02.177674 [INFO] switch_core_media.c:3684 Skipping video RTCP ICE (Same as RTP)
2017-05-25 07:41:02.177674 [INFO] switch_core_media.c:6717 RE-SETTING video DTLS
2017-05-25 07:41:02.177674 [INFO] switch_rtp.c:3574 Activate RTP/RTCP video DTLS client
2017-05-25 07:41:02.177674 [INFO] switch_rtp.c:3723 Changing video DTLS state from OFF to HANDSHAKE
2017-05-25 07:41:02.187678 [WARNING] switch_rtp.c:970 sofia/internal/nn9s29br@2cjo9eh03237.invalid got audio stun binding response 487 Role Conflict
2017-05-25 07:41:02.187678 [WARNING] switch_rtp.c:982 audio …
Run Code Online (Sandbox Code Playgroud)

sip ice freeswitch sdp webrtc

5
推荐指数
0
解决办法
467
查看次数

使用Sipp将日志写入文件

如何使用Sipp将日志写入文件,我怎么知道每个调用返回状态,

我只想知道每个呼叫返回响应状态,例如200 ..

voip asterisk freeswitch

4
推荐指数
1
解决办法
2007
查看次数

在 Freeswitch 中停止播放

我在 Lua 中有一些代码可以应答呼叫,并在执行一系列操作后将呼叫桥接到新的分支。

操作时间从几秒钟到几分钟不等。

为了保留客户端,我需要播放声音,我遇到的问题是桥接呼叫后播放仍在继续。

具体问题是,如何停止播放调用的声音?

我的代码看起来像

session:answer()
session:execute("playback", '/some/file.wav')
.
.
.
local connectionString = '{bypass_media=true,origination_caller_id_number=555,destination_number=646}'
connectionString = connectionString .. 'sofia/external/192.168.0.1@1000'
session:execute('bridge', connectionString)
Run Code Online (Sandbox Code Playgroud)

audio lua playback freeswitch

4
推荐指数
1
解决办法
3283
查看次数

FreeSwitch很慢

我安装了一个默认开箱即用的FreeSwitch实例,但是当我尝试拨打内线电话(扩展到分机)时,它需要大约12秒才能建立呼叫,我可以听到铃声.

当我查看日志时,我几乎立即看到了连接请求但没有活动,10秒或更长时间后呼叫开始,我听到电话响了.
这是它有用的日志文件,请看130:08:07到13:08:17之间的10秒延迟.

freeswitch@vps-1170411-23979.manage.myhosting.com> 2015-09-26 13:07:41.591949 [CONSOLE] mod_voicemail.c:4091 Event Thread Started  
2015-09-26 13:08:02.171949 [NOTICE] switch_channel.c:1075 New Channel sofia/internal/1001@168.144.85.16 [25229804-6471-11e5-9558-f1a7477c5309]  
2015-09-26 13:08:07.331948 [INFO] mod_dialplan_xml.c:635 Processing BSmarter.CA <1001>->1000 in context default  
2015-09-26 13:08:07.331948 [CRIT] mod_dptools.c:1670 WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING   
2015-09-26 13:08:07.331948 [CRIT] mod_dptools.c:1670 Open /usr/local/freeswitch/conf/vars.xml and change the default_password.  
2015-09-26 13:08:07.331948 [CRIT] mod_dptools.c:1670 Once changed type 'reloadxml' at the console.  
2015-09-26 13:08:07.331948 [CRIT] mod_dptools.c:1670 WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING   
2015-09-26 13:08:17.371961 [INFO] switch_ivr_async.c:3932 …
Run Code Online (Sandbox Code Playgroud)

voip sip freeswitch

4
推荐指数
1
解决办法
1084
查看次数

通过代理进行SIP重定向(SIP.js)

我正在尝试创建一个用于一个目的的最小SIP代理:将请求重定向到另一个域.catch是我重定向到需要授权的域,因此我假设我需要重写一些SIP属性,因为SIP授权部分基于目标的域名.

我已经尝试发布302重定向以及简单地代理和更改每个SIP请求的值,但似乎没有人退出这个技巧.我正在使用node.js库(sip.js),并尝试了重定向和代理模块(https://github.com/kirm/sip.js/blob/master/doc/api.markdown).

是否有任何想法我需要修改SIP数据以将请求重定向到另一个域并启用针对该其他域的身份验证?

sip freeswitch node.js sip-server

3
推荐指数
1
解决办法
4321
查看次数

如何将 FreeSwitch 连接到 FreeSwitch?

我有 FreeSwitch 的问题。我尝试了几个小时将我系统上的 FreeSwitch 服务器与另一个系统上的 FreeSwitch 服务器连接起来。但是,我想要的是与用户“abc@myip”一起调用用户“123@buddysIp”。我尝试的是向 acl.conf.xml 添加一个新的“列表”项

<list name="buddy" default="deny">
      <node type="allow" cidr="hisip/32"/>
  </list>
Run Code Online (Sandbox Code Playgroud)

我还尝试在 conf/dialplan/default 目录中添加一个扩展

<include>
<extension name="outbound_calls">
    <condition field="destination_number" expression="^(.*)$">
        <action application="bridge" data="sofia/gateway/buddy/$1"/>
    </condition>
</extension>
Run Code Online (Sandbox Code Playgroud)

和他的网关,它存储在 conf/sip_profiles/buddy.xml 中,看起来像这样

<include>
<gateway name="buddy">
    <param name="realm" value="hisip"/>
    <param name="username" value="myuser"/>
    <param name="password" value="mypw"/>
</gateway>
Run Code Online (Sandbox Code Playgroud)

我希望有人可以帮助我。也许我忘记了什么。我们在同一个网络中。如果您需要更多信息,请告诉我,谢谢。

这是我的通话记录:

 INVITE sip:666@myip SIP/2.0
   Via: SIP/2.0/UDP myip:51155;rport;branch=z9hG4bKPjyv0EW.k04poUhm7kdxHae5kheAypVEBc
   Max-Forwards: 70
   From: "me" <sip:1001@myip>;tag=Hd47q6ldQvMGLJO5RcMsO4AJQwWmRU28
   To: <sip:666@myip>
   Contact: "me" <sip:1001@myip:51155;ob>
   Call-ID: WW8ZDSQvHKuKTSjTJTX.hiefO6liAh7W
   CSeq: 24074 INVITE
   Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY, REFER, …
Run Code Online (Sandbox Code Playgroud)

voip freeswitch

3
推荐指数
1
解决办法
4703
查看次数

Freeswitch 中的通话录音

我有一个在一台服务器上工作的 freeswitch,通话工作正常。但现在我想记录每一个特定格式的调用,比如我已经尝试过使用“record_session”应用程序的 .wav 或 .gsm。录制会话应用程序

录音电话的申请是正确的吗?

如果是,那么请建议我举一些例子,如果不是,那么也建议我其他应用程序。

freeswitch

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

freeswitch ×10

sip ×3

voip ×3

node.js ×2

acl ×1

asterisk ×1

audio ×1

ice ×1

lua ×1

playback ×1

red5 ×1

sdp ×1

sip-server ×1

virtual-machine ×1

virtualbox ×1

webrtc ×1