FreeSWITCH 1.10.10 简单图形化界面15 - JsSIP媒体控制(LookLook)


FreeSWITCH界面安装参考:https://blog.csdn.net/jia198810/article/details/137820796

0、 界面预览

http://myfs.f3322.net:8020/
用户名:admin,密码:admin

FreeSWITCH界面安装参考:https://blog.csdn.net/jia198810/article/details/137820796

1、本地媒体流

通过JsSIP建立通话后,获取JsSIP.RTCSession类,通过mute()方法可控制是否关闭和开启本地音频或者视频媒体。
可参考JsSIP使用手册https://jssip.net/documentation/api/session/#method_mute

如下:

获取session
  //通过JsSIP.UA的newRTCSession事件获取呼叫session,并通过mute开启关闭本地音频和视频
  this.ua.on('newRTCSession', (e) => {
      this.currentSession = e.session;
      //其他代码
      .....
   })
本地音频
//关闭本地音频
//通过options控制是关闭音频还是视频
this.muteLocalAudio = () =>{
    //开启音频,则audio:false
	this.currentSession.mute(options={audio:true,video:false})
}
本地视频
//关闭本地视频
//通过options控制是关闭音频还是视频
this.muteLocalVideo = () =>{
    //开启视频,则video:false
	this.currentSession.mute(options={audio:true,video:true})
}

2、远端媒体流

通过JsSIP建立通话后,获取JsSIP.RTCSession类的confirmed事件获取远端媒体MediaStream对象,然后通过媒体轨道MediaStreamTrack关闭和开启远端媒体。
可参考web开发手册https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrack/enabled

如下:

获取媒体流
 //获取JsSIP.RTCSession类的confirmed事件获取远端媒体
this.audioReceiver = null;
this.videoReceiver = null;
this.currentSession.on("confirmed", (e) => {
    

     // 分别获取音频和视频
    receivers.forEach((receiver) => {
        if (receiver.track.kind === "audio") {
            audioReceiver = receiver;
        } else if (receiver.track.kind === "video") {
            videoReceiver = receiver;
        }
     }); 
   // 播放音频及视频
   ......
});
远端音频

通过MediaStreamTrack的enabled属性控制媒体轨道

//关闭远端音频
this.closeRemoteAudio = () =>{
    //开启音频,则enabled = true
    this.audioReceiver.getAudioTracks()[0].enabled = false
}
远端视频
//关闭远端视频,黑屏
this.closeRemoteVideo = () =>{
    //开启视频,则enabled = true
    this.videoReceiver.getVideoTracks()[0].enabled = false
}
  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: Freeswitch是一种开放源代码的语音和通信软件,提供语音、视频和多媒体通信能力。为了方便用户操作和管理,开发者为Freeswitch开发了简单图形化界面Freeswitch图形化界面基于Web技术实现,并采用Bootstrap框架和React.js技术。它具有简洁、易用的界面和友好的用户体验。用户只需在浏览器中输入相关的IP地址和端口号即可进入图形化界面。在界面中,用户可以登录、配置路由、管理通话、监控系统状态等操作。 图形化界面默认包含一些基本配置,例如:用户、呼入路由、呼出路由,用户可以根据自己的需求进行修改或者新增配置。用户也可以在界面中管理通话,例如:发起呼叫、挂断电话、进行转移等等。此外,Freeswitch图形化界面还提供系统日志、性能监控等功能,方便用户进行系统维护和管理。 总体来看,Freeswitch 1.10.7图形化界面为用户提供了方便、高效的使用体验,并提高了系统管理的可视化程度,这对于语音和通信行业的从业者及其管理者来说具有很大的意义。 ### 回答2: FreeSWITCH是一款强大的开源电话系统,其中1.10.7版本是最新的稳定版本。它支持Voice over IP(VoIP)和其他通信技术,如电话、传真和视频。同时,这款软件也支持多种协议,例如SIP、H.323和WebRTC,可以在 Linux、Windows 和 macOS 等不同平台上运行。 不过,对于一些初学者来说,命令行界面较为复杂,很难驾驭,因此出现了一些可以在图形界面下进行FreeSWITCH配置和管理的工具。其中一些工具功能繁多,但使用起来相对复杂,很难快速掌握。而在这些工具中,Sangoma的FreePBX可能是比较著名的一个,但它需要安装在 FreeSWITCH 系统之外。 这里介绍一个能够在 FreeSWITCH 系统内完成图形化界面配置的工具,它是由FreeSWITCH的社区成员开发的。这个工具名为FreeSWITCH Desktop GUI (FSgui),目前已经实现了基础的系统配置以及呼叫中心方面的功能。 关于FSgui的使用,它提供了可视化的配置界面,在功能区中可以快捷地调整相关配置。例如,在呼叫中心方面,可以通过可视化配置,添加、编辑和删除IVR,管理呼叫、管理坐席分机等功能,缩短了用户配置的时间,从而提高效率。此外,其还支持SIP Trunks的管理,可以方便地配置多个SIP Trunks,以便于用户同时使用多种语音服务提供商。 总之,FreeSWITCH Desktop GUI 是一款简单易用的图形化工具,它为用户提供了快捷的配置方式,能够帮助使用者快速完成系统的配置与调整。同时,它是开源软件,可以在 GitHub 上进行下载。 ### 回答3: freeswitch是一款功能强大的开源电话交换机软件,但对于一些非技术人员来说,其操作和配置可能会比较复杂。为了能够更简单、更直观地使用freeswitch,一些第三方开发者开发了一些针对freeswitch图形化界面,使得用户只需要通过鼠标点击和填写一些基本信息就可以完成freeswitch配置和操作。 针对freeswitch 1.10.7,开发者已经开发出了一些好用的图形化界面,比如“FusionPBX”和“FreeSWITCH-GUI”。这些界面的主要特点是简单、易用、可扩展,可用于管理用户、呼叫路由、语音信箱等等freeswitch的相关服务。 以“FusionPBX”为例,其界面设计比较简洁,主要分为左侧的菜单栏和右侧的内容展示区。通过菜单栏的操作,用户可以完成一些相应的功能,比如添加、删除用户,配置呼叫路由,设置CallCenter等等。同时,FusionPBX也提供了一些实用的功能,比如在线音频播放和录制,呼叫会议等等。 值得注意的是,图形化界面只是对freeswitch的操作和配置进行了简化和优化,并不代表可以完全替代命令行操作。因此,对于freeswitch的使用者,仍需掌握一些基本的命令行操作和配置知识,以便更好地利用图形化界面完成自己的需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

贾宝玉的玉宝贾

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值