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

相关文章

MySQL 分区与分库分表策略应用小结

《MySQL分区与分库分表策略应用小结》在大数据量、复杂查询和高并发的应用场景下,单一数据库往往难以满足性能和扩展性的要求,本文将详细介绍这两种策略的基本概念、实现方法及优缺点,并通过实际案例展示如... 目录mysql 分区与分库分表策略1. 数据库水平拆分的背景2. MySQL 分区策略2.1 分区概念

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

SpringBoot实现微信小程序支付功能

《SpringBoot实现微信小程序支付功能》小程序支付功能已成为众多应用的核心需求之一,本文主要介绍了SpringBoot实现微信小程序支付功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作... 目录一、引言二、准备工作(一)微信支付商户平台配置(二)Spring Boot项目搭建(三)配置文件

在Android平台上实现消息推送功能

《在Android平台上实现消息推送功能》随着移动互联网应用的飞速发展,消息推送已成为移动应用中不可或缺的功能,在Android平台上,实现消息推送涉及到服务端的消息发送、客户端的消息接收、通知渠道(... 目录一、项目概述二、相关知识介绍2.1 消息推送的基本原理2.2 Firebase Cloud Me

Spring Boot项目中结合MyBatis实现MySQL的自动主从切换功能

《SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能》:本文主要介绍SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能,本文分步骤给大家介绍的... 目录原理解析1. mysql主从复制(Master-Slave Replication)2. 读写分离3.

C语言函数递归实际应用举例详解

《C语言函数递归实际应用举例详解》程序调用自身的编程技巧称为递归,递归做为一种算法在程序设计语言中广泛应用,:本文主要介绍C语言函数递归实际应用举例的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录前言一、递归的概念与思想二、递归的限制条件 三、递归的实际应用举例(一)求 n 的阶乘(二)顺序打印

Mybatis 传参与排序模糊查询功能实现

《Mybatis传参与排序模糊查询功能实现》:本文主要介绍Mybatis传参与排序模糊查询功能实现,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、#{ }和${ }传参的区别二、排序三、like查询四、数据库连接池五、mysql 开发企业规范一、#{ }和${ }传参的

Java实现文件图片的预览和下载功能

《Java实现文件图片的预览和下载功能》这篇文章主要为大家详细介绍了如何使用Java实现文件图片的预览和下载功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... Java实现文件(图片)的预览和下载 @ApiOperation("访问文件") @GetMapping("

SpringKafka消息发布之KafkaTemplate与事务支持功能

《SpringKafka消息发布之KafkaTemplate与事务支持功能》通过本文介绍的基本用法、序列化选项、事务支持、错误处理和性能优化技术,开发者可以构建高效可靠的Kafka消息发布系统,事务支... 目录引言一、KafkaTemplate基础二、消息序列化三、事务支持机制四、错误处理与重试五、性能优

SpringIntegration消息路由之Router的条件路由与过滤功能

《SpringIntegration消息路由之Router的条件路由与过滤功能》本文详细介绍了Router的基础概念、条件路由实现、基于消息头的路由、动态路由与路由表、消息过滤与选择性路由以及错误处理... 目录引言一、Router基础概念二、条件路由实现三、基于消息头的路由四、动态路由与路由表五、消息过滤