概述

freeswitch是一款简单好用的VOIP开源软交换平台。

在fs的使用过程中,某些场景只需要对rtp媒体做透传,又不需要任何处理。

在fs1.6的版本中,我们可以使用proxy_media来代理媒体的转发,媒体的协商由AB路端对端处理,fs不处理媒体协商,也不处理媒体流,包括录音,dtmf检测等,仅仅原样转发媒体流。

但是在fs的1.10.7版本中,proxy_media模式失效了。

同步测试了fs1.6.19版本和fs1.10.7版本,其中1.6版本是可以正常使用proxy_media模式的。

环境

CentOS 7.9

freeswitch 1.10.7

问题描述

部署简图如下。fs138为注册服务器,设置为bypass模式。fs137为as服务器,需要过媒体流。

A -- fs138 -- fs137 -- fs138 -- B

首先测试正常的媒体模式。dialplan如下。

<action application="set" data="inherit_codec=true"/>

<action application="export" data="absolute_codec_string=G729,PCMA" />

<action application="bridge" data="{sip_invite_call_id=${sip_call_id}}sofia/external/$1@10.55.55.138:5080"/>

修改dialplan,在bridge之前设置proxy_media模式。

<action application="set" data="inherit_codec=true"/>

<action application="export" data="absolute_codec_string=G729,PCMA" />

<action application="set" data="proxy_media=true"/>

<action application="bridge" data="{sip_invite_call_id=${sip_call_id}}sofia/external/$1@10.55.55.138:5080"/>

再次发起呼叫,截图中可以看到其中一路rtp媒体流未正常转发。

解决方案

暂无解决方案,也没有解决的预期。

总结

同步测试了fs1.6.19版本和fs1.10.7版本,其他版本未进行进一步的测试。

proxy media模式在某些场景下还是挺好用的。

空空如常

求真得真

fs的proxy_media模式失效的更多相关文章

  1. 高阶篇:4.2.2)DFMEA层级分明的失效模式、失效后果、失效原因

    本章目的:明确失效模式.失效后果.失效原因的定义,分清楚层次关系,完成DFMEA这部分的填写. 1.失效模式,失效后果,失效原因的定义: 这是FEMEA手册第四册中的定义. 1.1 潜在失效模式 (b ...

  2. PDF 补丁丁 0.6.0.3355 版发布(修复阅读模式、书签缩放的问题)

    PDF补丁丁的新版本修复了染色阅读模式失效.编辑器书签缩放比例调整在某些场合下失败的问题.

  3. C++实现Singleton模式(effective c++ 04)

    阅读effective c++ 04 (31页) 提到的singleton设计模式.了解一下. 定义: 保证一个类仅有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享. 应用场景: 比 ...

  4. Oracle开启和关闭的四种模式

    >1 启动数据库 在cmd命令窗口,直接输入"sqlplus",直接进入oracle管理界面,输入用户名和密码后,开始启动数据库,启动数据库三个步骤:启动实例.加载数据库.打 ...

  5. 【JavaScript吉光片羽】遭遇IE8

    最初对做兼容性的认知只停留在UI层面,但其实UI层面都还好,因为毕竟你可以直接看得见现象,更为重要的是在JavaScript层面,因为这个部分涉及到功能性,前者最多是体验性的问题.下面扯一下这几天遇到 ...

  6. 【转】你所不知道的HTML <head/> 头标签

    HTML的头部内容特别多,有针对SEO的头部信息,也有针对移动设备的头部信息.而且各个浏览器内核以及各个国内浏览器厂商都有些自己的标签元素,有很多差异性.移动端的工作已经越来越成为前端工作的重要内容, ...

  7. this

    JavaScript 中的 this ! 2016-12-28 vvv阿城 JavaScript 转自  https://qiutc.me/post/this-this-this-in-javascr ...

  8. Python笔记总结week6

    关于创建.调用模块 1.我们创建一个模块commons.py,  并且在文件中写以下三个函数: def login(): print('登录') def logout(): print('退出') d ...

  9. Atitti 知识图谱构建方法attilax 总结

    Atitti 知识图谱构建方法attilax 总结   1.1. 知识图谱schema构建(体系化)1 1.2. 纵向垂直拓展(向上抽象,向下属性拓展)2 1.3. 横向拓展2 1.4. 网拓展2 1 ...

  10. [转] 移动前端不得不了解的HTML5 head 头标签

    HTML的头部内容特别多,有针对SEO的头部信息,也有针对移动设备的头部信息.而且各个浏览器内核以及各个国内浏览器厂商都有些自己的标签元 素,有很多差异性.移动端的工作已经越来越成为前端工作的重要内容 ...

随机推荐

  1. Qt音视频开发40-ffmpeg采集桌面并录制

    一.前言 之前用ffmpeg打通了各种视频文件和视频流以及本地摄像头设备的采集,近期有个客户需求要求将整个桌面屏幕采集下来,并可以录制保存成MP4文件,以前也遇到过类似的需求,由于没有搞过,也没有精力 ...

  2. 即时通讯技术文集(第39期):推送技术合集(Part1) [共18篇]

    为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第 39 期. [- 1 -] iOS的推送服务APNs详解:设计思路.技术原理及缺陷等 [链接 ...

  3. 开源即时通讯IM框架MobileIMSDK的微信小程序端开发快速入门

    一.理论知识准备 您需要对微信小程序开发有所了解: 1)真正零基础入门学习笔记系列 2)从零开始的微信小程序入门教程 3)最全教程:微信小程序开发入门详解 您需要对WebSocket技术有所了解: 1 ...

  4. 老生常谈——分布式限流:部分Sentinal源码解读

    基础知识 HTTP CODE = 429 "请求过多" A. 限流的类型 服务端 客户端 限流的标的 IP 用户 ... 基本要求 准确限制过量的请求. 低延时.限流器不能拖慢HT ...

  5. UOS系统mysql服务安装

    UOS系统mysql服务安装 背景 1.安装环境:kvm虚拟机 2.运行环境:uos server-1060e 3.架构:x86 4.安装mysql版本:mysql-5.7 1.安装准备 # Mysq ...

  6. 一种调试 线段树 / Treap / Splay / 左偏树 / LCT 等树形结构的技巧

    前言 如果我们需要观察程序运行过程中,某一个变量.某一个序列的变化情况,你可以在修改的地方打断点 debug,或者直接在需要的地方输出就行了. 但是对于一些树形结构,我们不好将其直观地呈现出来,常常只 ...

  7. 深入解析 Spring AI 系列:解析OpenAI接口对接

    今天我们将主要探讨OpenAI是如何进行接口对接的,虽然我们不打算深入细节,但会对整体流程进行一个大概的了解.后续会逐步分析其中的具体细节,大家可以耐心等待,逐步展开.好的,现在让我们开始,下面是我简 ...

  8. 史上最强Dubbo面试28题答案详解

    1.Dubbo是什么? Dubbo 是一个分布式.高性能.透明化的 RPC 服务框架,提供服务自动注册.自动发现等高效服务治理方案, 可以和 Spring 框架无缝集成. RPC 指的是远程调用协议, ...

  9. w3cschool-Nginx 入门指南

    https://www.w3cschool.cn/nginx/ Nginx 的特点 Nginx 做为 HTTP 服务器,有以下几项基本特性: 处理静态文件,索引文件以及自动索引:打开文件描述符缓冲. ...

  10. nvim及插件安装配置

    1. install neovim 1 sudo apt install neovim After installing neovim, we can delete old vi. 3. instal ...