菜鸟学freeswitch(二)webRTC拨软电话自动挂断


2019-01-08 17:39:49.221806 [ERR] mod_sofia.c:2343 CODEC NEGOTIATION ERROR. SDP:
v=0
o=- 3481799438673358832 2 IN IP4 127.0.0.1
s=-
t=0 0
a=group:BUNDLE audio
a=msid-semantic: WMS MP9KUnaULVHFpwTqhoSfv1fphnZ1jZqMmqsP
m=audio 57630 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 106 105 13 110 112 113 126
c=IN IP4 192.168.1.19
a=rtpmap:111 opus/48000/2
a=fmtp:111 minptime=10;useinbandfec=1
a=rtpmap:103 ISAC/16000
a=rtpmap:104 ISAC/32000
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:106 CN/32000
a=rtpmap:105 CN/16000
a=rtpmap:13 CN/8000
a=rtpmap:110 telephone-event/48000
a=rtpmap:112 telephone-event/32000
a=rtpmap:113 telephone-event/16000
a=rtpmap:126 telephone-event/8000
a=rtcp:9 IN IP4 0.0.0.0
a=candidate:2382557538 1 udp 2113937151 192.168.1.19 57630 typ host generation 0 network-cost 999
a=ice-ufrag:B3vK
a=ice-pwd:V7sBbym5dh+buN6G60VzS1zZ
a=ice-options:trickle
a=fingerprint:sha-256 01:E0:C0:8A:2A:6D:3A:C1:89:51:01:1D:49:A1:BB:93:7F:BF:09:0D:20:18:1A:FB:5A:32:B0:35:71:FF:79:FB
a=setup:actpass
a=mid:audio
a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=rtcp-mux
a=rtcp-fb:111 transport-cc
a=ssrc:1707582762 cname:IEUyTgVxrZhvH1Wf
a=ssrc:1707582762 msid:MP9KUnaULVHFpwTqhoSfv1fphnZ1jZqMmqsP 8824eac9-c860-4baa-bcd6-ae06a2103a4f
a=ssrc:1707582762 mslabel:MP9KUnaULVHFpwTqhoSfv1fphnZ1jZqMmqsP
a=ssrc:1707582762 label:8824eac9-c860-4baa-bcd6-ae06a2103a4f

 

这种问题是webRTC默认的编码问题

修改internal.xml

在xml的最后添加

<param name="apply-candidate-acl" value="rfc1918.auto"/>
<param name="apply-candidate-acl" value="localnet.auto"/>  

最后按F6 reloadxml  再去试试 应该就好了 再不行重启freeswitch

原文地址:https://www.cnblogs.com/pangyangqi/p/10240351.html

时间: 2024-10-12 16:41:58

菜鸟学freeswitch(二)webRTC拨软电话自动挂断的相关文章

android项目实现电话自动挂断的功能

private void endCall() {        try {            /*             * 1.得到字节码文件             * 2.得到对应的方法getService             * 4.执行这个方法             * 以上是反射过程             * 5.拷贝aidl文件             * 6.生成java代码             * 7,执行endCall():             */  

菜鸟学freeswitch(六)将猫池注册到公网fs上

1.了解一下啥是猫池,简单来说就是插了很多张手机卡的一个硬件设备,可以通过猫池将信号拨出去,具体可以谷歌搜一搜 2.登录设备网页 我这个是192.168.1.249 输入账号和密码 3.基本知识了解,要将猫池注册到公网的fs上,由于是通过UDP通信的 ,因此你得在阿里云上开放5070端口: 4.修改 /usr/local/freeswitch/conf/sip_profiles/external.xml  找到 ext-rtp-ip ,ext-sip-ip修改为 <param name="

菜鸟学freeswitch(一)freeswitch安装

一 源码安装 1.1 linux安装依赖 centos7 yum install -y http://files.freeswitch.org/freeswitch-release-1-6.noarch.rpm epel-release yum install -y git alsa-lib-devel autoconf automake bison broadvoice-devel bzip2 curl-devel db-devel e2fsprogs-devel flite-devel g7

android 5.0 播放音乐时闹钟响,此时来电话并挂断,闹钟和音乐同时响

请按照如下方法进行修改: frameworks\base\media\java\android\media\MediaFocusControl.java: 1.import packages: import com.android.internal.telephony.ITelephony; import android.os.ServiceManager; 2.增加获取当前Phone Call State的方法getPhoneCallState(): private int getPhoneC

解决低电量自动关机时如果有来电自动关断电话

1.问题描述: 低电量时,由于系统已经无法继续提供通话服务,为了不影响通话服务质量或其它问题,因此在自动关机时应自动挂断电话 2.解决思路: 在低电量自动关机时,如果此时有来电,调用挂断电话的接口,挂断电话. 3.实现方式: BatteryService.java private void shutdownIfNoPowerLocked() { // shut down gracefully if our battery is critically low and we are not powe

菜鸟学Java(二十)——你知道long和Long有什么区别吗?

Java中数据类型分两种: 1.基本类型:long,int,byte,float,double2.对象类型:Long,Integer,Byte,Float,Double其它一切java提供的,或者你自己创建的类. 其中Long叫 long的包装类.Integer.Byte和Float也类似,一般包装类的名字首写是数值名的大写开头. 什么是包装类? 在java中有时候的运算必须是两个类对象之间进行的,不充许对象与数字之间进行运算.所以需要有一个对象,这个对象把数字进行了一下包装,这样这个对象就可以

菜鸟学Java(二十一)——如何更好的进行单元测试——JUnit

测试在软件声明周期中的重要性,不用我多说想必大家也都非常清楚.软件测试有很多分类,从测试的方法上可分为:黑盒测试.白盒测试.静态测试.动态测试等:从软件开发的过程分为:单元测试.集成测试.确认测试.验收.回归等. 在众多的分类中,与开发人员关系最紧密的莫过于单元测试了.像其他种类的测试基本上都是由专门的测试人员来完成,只有单元测试是完全由开发人员来完成的.那么今天我们就来说说什么是单元测试,为什么要进行单元测试,以及如更好的何进行单元测试. 什么是单元测试? 单元测试(unit testing)

本机用软电话拨打虚拟机FreeSWITCH

虚拟机安装完FreeSWITCH,我们可以用SIP软电话拨打 常用的SIP软电话很多,具体可以看这个博客:https://blog.csdn.net/sameplace/article/details/5430983 我这里用的是eyebeam和x-Lite eyebeam下载地址:http://pcdown.ttrar.com:801/small/eyebeam_ttrar.zip X-Lite5.8下载地址:https://counterpath.s3.amazonaws.com/downl

菜鸟学php扩展 之 自动生成的扩展框架详解(二)

前言 上一文:菜鸟学php扩展 之 hello world(一),不问所以然的,强行与php扩展say hello了.对于ext_skel自动生成的框架,将在本文进行详解,当作备忘录. 正文 ext_skel的用法 ./ext_skel --extname=module [--proto=file] [--stubs=file] [--xml[=file]] [--skel=dir] [--full-xml] [--no-help] --extname=module module is the