Asterisk电话会议功能主要应用介(1)

2024-01-24 18:48

本文主要是介绍Asterisk电话会议功能主要应用介(1),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

MeetMe             

       Asterisk称作为“会议桥”,但从阅读源代码可以了解到其实现的功能包括对即将进入会议的语音通道携带的参数的有效性进行检查;对会议选项参数进行设置且生效,会议选项参数将会在下面介绍;对加入成员的语音通道的语音编解码进行转换成线性语音格式;将加入成员的语音通道桥接到会议通道当中,会议通道对应DAHDI驱动中的一个伪设备,标识为pseudo;将混音后的线性语音格式转换为加入会议语音通道的语音格式;最后meetme中的闭循环监控语音通道中的DTMF事件等。

       如何配置Asterisk会议室?

       Asterisk meetme功能可通过以下三种方式配置会议室号码及密码:

       1)静态分配会议,静态会议在meetme.conf中配置,在context[rooms]下配置会议室,配置使用如下:

              conf => confno[,pin][,adminpin] 

              例如:

              conf => 2345 ;分配一个会议号码为2345的会议室

              conf => 2345,1111 ; 分配一个会议号码为2345的会议室,会议密码为1111,

              conf => 2345,1111,2222 ; 分配一个会议号码为2345的会议室,会议密码为1111                                                   ; 主持人密码为2222

       2)动态分配会议,动态会议室不需要在meetme.conf配置固定的会议号码,只需要在拨号方案中使用meetme应用时添加 d D选项,表示动态的增加一个会议室。

       例如:

exten => 12345,1,MeetMe(501,Mpd)

       3) realtime 会议,暂且翻译为实时会议,实时会议的会议号码将在数据表中分配,此数据表由Asterisk定义,通过extconfig.conf中配置访问数据表的方式。那么在拨号方案中可以无需再指定会议室号码,可以保留为空。当用户拨打进入会议室的分机号时,Asterisk将提示用户输入会议号码和会议密码,当输入的信息与数据表中保存的一致时,用户就可以加入会议室当中,此种方式配置相对复杂,但是应用却是非常广泛。

       如何在拨号方案中配置电话会议应用?

       MeetMe([confno][,options[,pin]])

       例如:

       MeetMe(501, 1111,2222) ;其中501为会议室号码,1111为参会密码,2222为主持人密码。

下面将介绍meetme应用的所有选项,引用了Asterisk电话会议中提供的信息:

         -= Info about application 'MeetMe' =-

 

[Synopsis]

MeetMe conference bridge.

 

[Description]

Enters the user into a specified MeetMe conference.  If the <confno> is o

mitted, the user will be prompted to enter one.  User can exit the conference

by hangup, or if the 'p' option is specified, by pressing '#'.

NOTE: The DAHDI kernel modules and at least one hardware driver (or

dahdi_dummy) must be present for conferencing to operate properly. In addition,

the chan_dahdi channel driver must be loaded for the 'i' and 'r' options to

operate at all.

 

[Syntax]

MeetMe([confno][,options[,pin]])

 

[Arguments]

confno

    The conference number

options

    a: Set admin mode.

    A: Set marked mode.

    b: Run AGI script specified in ${MEETME_AGI_BACKGROUND} Default:

    'conf-background.agi'.

    NOTE: This does not work with non-DAHDI channels in the same

    conference).

    c: Announce user(s) count on joining a conference.

    C: Continue in dialplan when kicked out of conference.

    d: Dynamically add conference.

    D: Dynamically add conference, prompting for a PIN.

    e: Select an empty conference.

    E: Select an empty pinless conference.

    F: Pass DTMF through the conference.

    i: Announce user join/leave with review.

    I: Announce user join/leave without review.

    l: Set listen only mode (Listen only, no talking).

    m: Set initially muted.

    M[(class)]: Enable music on hold when the conference has a single

    caller. Optionally, specify a musiconhold class to use. If one is not

    provided, it will use the channel's currently set music class, or 'de

    fault'.

    o: Set talker optimization - treats talkers who aren't speaking as

    being muted, meaning (a) No encode is done on transmission and (b) Received

    audio that is not registered as talking is omitted causing no buildup

    in background noise.

    p[(keys)]: Allow user to exit the conference by pressing '#' (default)

    or any of the defined keys. If keys contain '*' this will override option

    's'. The key used is set to channel variable ${MEETME_EXIT_KEY}.

    P: Always prompt for the pin even if it is specified.

    q: Quiet mode (don't play enter/leave sounds).

    r: Record conference (records as ${MEETME_RECORDINGFILE} using format

    ${MEETME_RECORDINGFORMAT}. Default filename is 'meetme-conf-rec-${CON

    FNO}-${UNIQUEID}' and the default format is wav.

    s: Present menu (user or admin) when '*' is received (send to menu).

    t: Set talk only mode. (Talk only, no listening).

    T: Set talker detection (sent to manager interface and meetme list).

    W[(secs)]: Wait until the marked user enters the conference.

    x: Close the conference when last marked user exits

    X: Allow user to exit the conference by entering a valid single digit

    extension ${MEETME_EXIT_CONTEXT} or the current context if that variable

    is not defined.

    1: Do not play message when first person enters

    S(x): Kick the user <x> seconds *after* he entered into the

    conference.

    L([x][:y[:z]]): Limit the conference to <x> ms. Play a warning when

    <y> ms are left. Repeat the warning every <z> ms. The following special

    variables can be used with this option:

        ${CONF_LIMIT_TIMEOUT_FILE}: File to play when time is up.

        ${CONF_LIMIT_WARNING_FILE}: File to play as warning if <y>

        is defined. The default is to say the time remaining.

这篇关于Asterisk电话会议功能主要应用介(1)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/640655

相关文章

基于 HTML5 Canvas 实现图片旋转与下载功能(完整代码展示)

《基于HTML5Canvas实现图片旋转与下载功能(完整代码展示)》本文将深入剖析一段基于HTML5Canvas的代码,该代码实现了图片的旋转(90度和180度)以及旋转后图片的下载... 目录一、引言二、html 结构分析三、css 样式分析四、JavaScript 功能实现一、引言在 Web 开发中,

springboot下载接口限速功能实现

《springboot下载接口限速功能实现》通过Redis统计并发数动态调整每个用户带宽,核心逻辑为每秒读取并发送限定数据量,防止单用户占用过多资源,确保整体下载均衡且高效,本文给大家介绍spring... 目录 一、整体目标 二、涉及的主要类/方法✅ 三、核心流程图解(简化) 四、关键代码详解1️⃣ 设置

CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比

《CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比》CSS中的position属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布... css 中的 position 属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布局和层叠关

SpringBoot3应用中集成和使用Spring Retry的实践记录

《SpringBoot3应用中集成和使用SpringRetry的实践记录》SpringRetry为SpringBoot3提供重试机制,支持注解和编程式两种方式,可配置重试策略与监听器,适用于临时性故... 目录1. 简介2. 环境准备3. 使用方式3.1 注解方式 基础使用自定义重试策略失败恢复机制注意事项

苹果macOS 26 Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色

《苹果macOS26Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色》在整体系统设计方面,macOS26采用了全新的玻璃质感视觉风格,应用于Dock栏、应用图标以及桌面小部件等多个界面... 科技媒体 MACRumors 昨日(6 月 13 日)发布博文,报道称在 macOS 26 Tahoe 中

Java使用HttpClient实现图片下载与本地保存功能

《Java使用HttpClient实现图片下载与本地保存功能》在当今数字化时代,网络资源的获取与处理已成为软件开发中的常见需求,其中,图片作为网络上最常见的资源之一,其下载与保存功能在许多应用场景中都... 目录引言一、Apache HttpClient简介二、技术栈与环境准备三、实现图片下载与保存功能1.

MybatisPlus service接口功能介绍

《MybatisPlusservice接口功能介绍》:本文主要介绍MybatisPlusservice接口功能介绍,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友... 目录Service接口基本用法进阶用法总结:Lambda方法Service接口基本用法MyBATisP

Java反射实现多属性去重与分组功能

《Java反射实现多属性去重与分组功能》在Java开发中,​​List是一种非常常用的数据结构,通常我们会遇到这样的问题:如何处理​​List​​​中的相同字段?无论是去重还是分组,合理的操作可以提高... 目录一、开发环境与基础组件准备1.环境配置:2. 代码结构说明:二、基础反射工具:BeanUtils

Python使用Tkinter打造一个完整的桌面应用

《Python使用Tkinter打造一个完整的桌面应用》在Python生态中,Tkinter就像一把瑞士军刀,它没有花哨的特效,却能快速搭建出实用的图形界面,作为Python自带的标准库,无需安装即可... 目录一、界面搭建:像搭积木一样组合控件二、菜单系统:给应用装上“控制中枢”三、事件驱动:让界面“活”

如何确定哪些软件是Mac系统自带的? Mac系统内置应用查看技巧

《如何确定哪些软件是Mac系统自带的?Mac系统内置应用查看技巧》如何确定哪些软件是Mac系统自带的?mac系统中有很多自带的应用,想要看看哪些是系统自带,该怎么查看呢?下面我们就来看看Mac系统内... 在MAC电脑上,可以使用以下方法来确定哪些软件是系统自带的:1.应用程序文件夹打开应用程序文件夹