confbridge.conf 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377
  1. [general]
  2. ; The general section of this config
  3. ; is not currently used, but reserved
  4. ; for future use.
  5. ;
  6. ; --- Default Information ---
  7. ; The default_user and default_bridge sections are applied
  8. ; automatically to all ConfBridge instances invoked without
  9. ; a user, or bridge argument. No menu is applied by default.
  10. ;
  11. ; Note that while properties of the default_user or default_bridge
  12. ; profile can be overridden, if removed, they will be automatically
  13. ; added and made available to the dialplan upon module load.
  14. ;
  15. ; --- ConfBridge User Profile Options ---
  16. [default_user]
  17. type=user
  18. ;admin=yes ; Sets if the user is an admin or not. Off by default.
  19. ;marked=yes ; Sets if this is a marked user or not. Off by default.
  20. ;startmuted=yes; Sets if all users should start out muted. Off by default
  21. ;music_on_hold_when_empty=yes ; Sets whether MOH should be played when only
  22. ; one person is in the conference or when the
  23. ; the user is waiting on a marked user to enter
  24. ; the conference. Off by default.
  25. ;music_on_hold_class=default ; The MOH class to use for this user.
  26. quiet=yes ; When enabled enter/leave prompts and user intros are not played.
  27. ; There are some prompts, such as the prompt to enter a PIN number,
  28. ; that must be played regardless of what this option is set to.
  29. ; Off by default
  30. ;announce_user_count=yes ; Sets if the number of users should be announced to the
  31. ; caller. Off by default.
  32. ;announce_user_count_all=yes ; Sets if the number of users should be announced to
  33. ; all the other users in the conference when someone joins.
  34. ; This option can be either set to 'yes' or a number.
  35. ; When set to a number, the announcement will only occur
  36. ; once the user count is above the specified number.
  37. ;announce_only_user=yes ; Sets if the only user announcement should be played
  38. ; when a channel enters a empty conference. On by default.
  39. ;wait_marked=yes ; Sets if the user must wait for a marked user to enter before
  40. ; joining the conference. Off by default.
  41. ;end_marked=yes ; This option will kick every user with this option set in their
  42. ; user profile after the last Marked user exists the conference.
  43. ;dsp_drop_silence=yes ; This option drops what Asterisk detects as silence from
  44. ; entering into the bridge. Enabling this option will drastically
  45. ; improve performance and help remove the buildup of background
  46. ; noise from the conference. Highly recommended for large conferences
  47. ; due to its performance enhancements.
  48. ;dsp_talking_threshold=128 ; The time in milliseconds of sound above what the dsp has
  49. ; established as base line silence for a user before a user
  50. ; is considered to be talking. This value affects several
  51. ; operations and should not be changed unless the impact on
  52. ; call quality is fully understood.
  53. ;
  54. ; What this value affects internally:
  55. ;
  56. ; 1. Audio is only mixed out of a user's incoming audio stream
  57. ; if talking is detected. If this value is set too
  58. ; loose the user will hear themselves briefly each
  59. ; time they begin talking until the dsp has time to
  60. ; establish that they are in fact talking.
  61. ; 2. When talk detection AMI events are enabled, this value
  62. ; determines when talking has begun which results in
  63. ; an AMI event to fire. If this value is set too tight
  64. ; AMI events may be falsely triggered by variants in
  65. ; room noise.
  66. ; 3. The drop_silence option depends on this value to determine
  67. ; when the user's audio should be mixed into the bridge
  68. ; after periods of silence. If this value is too loose
  69. ; the beginning of a user's speech will get cut off as they
  70. ; transition from silence to talking.
  71. ;
  72. ; By default this value is 160 ms. Valid values are 1 through 2^31
  73. ;dsp_silence_threshold=2000 ; The time in milliseconds of sound falling within the what
  74. ; the dsp has established as baseline silence before a user
  75. ; is considered be silent. This value affects several
  76. ; operations and should not be changed unless the impact
  77. ; on call quality is fully understood.
  78. ;
  79. ; What this value affects internally:
  80. ;
  81. ; 1. When talk detection AMI events are enabled, this value
  82. ; determines when the user has stopped talking after a
  83. ; period of talking. If this value is set too low
  84. ; AMI events indicating the user has stopped talking
  85. ; may get falsely sent out when the user briefly pauses
  86. ; during mid sentence.
  87. ; 2. The drop_silence option depends on this value to
  88. ; determine when the user's audio should begin to be
  89. ; dropped from the conference bridge after the user
  90. ; stops talking. If this value is set too low the user's
  91. ; audio stream may sound choppy to the other participants.
  92. ; This is caused by the user transitioning constantly from
  93. ; silence to talking during mid sentence.
  94. ;
  95. ; The best way to approach this option is to set it slightly above
  96. ; the maximum amount of ms of silence a user may generate during
  97. ; natural speech.
  98. ;
  99. ; By default this value is 2500ms. Valid values are 1 through 2^31
  100. ;talk_detection_events=yes ; This option sets whether or not notifications of when a user
  101. ; begins and ends talking should be sent out as events over AMI.
  102. ; By default this option is off.
  103. ;denoise=yes ; Sets whether or not a denoise filter should be applied
  104. ; to the audio before mixing or not. Off by default. Requires
  105. ; func_speex to be built and installed. Do not confuse this option
  106. ; with drop_silence. Denoise is useful if there is a lot of background
  107. ; noise for a user as it attempts to remove the noise while preserving
  108. ; the speech. This option does NOT remove silence from being mixed into
  109. ; the conference and does come at the cost of a slight performance hit.
  110. ;jitterbuffer=yes ; Enabling this option places a jitterbuffer on the user's audio stream
  111. ; before audio mixing is performed. This is highly recommended but will
  112. ; add a slight delay to the audio. This option is using the JITTERBUFFER
  113. ; dialplan function's default adaptive jitterbuffer. For a more fine tuned
  114. ; jitterbuffer, disable this option and use the JITTERBUFFER dialplan function
  115. ; on the user before entering the ConfBridge application.
  116. ;pin=1234 ; Sets if this user must enter a PIN number before entering
  117. ; the conference. The PIN will be prompted for.
  118. ;announce_join_leave=yes ; When enabled, this option will prompt the user for a
  119. ; name when entering the conference. After the name is
  120. ; recorded, it will be played as the user enters and exists
  121. ; the conference. This option is off by default.
  122. ;announce_join_leave_review=yes ; When enabled, implies announce_join_leave, but the user
  123. ; will be prompted to review their recording before
  124. ; entering the conference. During this phase, the recording
  125. ; may be listened to, re-recorded, or accepted as is. This
  126. ; option is off by default.
  127. ;dtmf_passthrough=yes ; Sets whether or not DTMF should pass through the conference.
  128. ; This option is off by default.
  129. ;announcement=</path/to/file> ; Play a sound file to the user when they join the conference.
  130. ; --- ConfBridge Bridge Profile Options ---
  131. [default_bridge]
  132. type=bridge
  133. ;max_members=50 ; This option limits the number of participants for a single
  134. ; conference to a specific number. By default conferences
  135. ; have no participant limit. After the limit is reached, the
  136. ; conference will be locked until someone leaves. Note however
  137. ; that an Admin user will always be alowed to join the conference
  138. ; regardless if this limit is reached or not.
  139. ;record_conference=yes ; Records the conference call starting when the first user
  140. ; enters the room, and ending when the last user exits the room.
  141. ; The default recorded filename is
  142. ; 'confbridge-<name of conference bridge>-<start time>.wav
  143. ; and the default format is 8khz slinear. This file will be
  144. ; located in the configured monitoring directory in asterisk.conf.
  145. ;record_file=</path/to/file> ; When record_conference is set to yes, the specific name of the
  146. ; record file can be set using this option. Note that since multiple
  147. ; conferences may use the same bridge profile, this may cause issues
  148. ; depending on the configuration. It is recommended to only use this
  149. ; option dynamically with the CONFBRIDGE() dialplan function. This
  150. ; allows the record name to be specified and a unique name to be chosen.
  151. ; By default, the record_file is stored in Asterisk's spool/monitor directory
  152. ; with a unique filename starting with the 'confbridge' prefix.
  153. ;internal_sample_rate=auto ; Sets the internal native sample rate the
  154. ; conference is mixed at. This is set to automatically
  155. ; adjust the sample rate to the best quality by default.
  156. ; Other values can be anything from 8000-192000. If a
  157. ; sample rate is set that Asterisk does not support, the
  158. ; closest sample rate Asterisk does support to the one requested
  159. ; will be used.
  160. ;mixing_interval=40 ; Sets the internal mixing interval in milliseconds for the bridge. This
  161. ; number reflects how tight or loose the mixing will be for the conference.
  162. ; In order to improve performance a larger mixing interval such as 40ms may
  163. ; be chosen. Using a larger mixing interval comes at the cost of introducing
  164. ; larger amounts of delay into the bridge. Valid values here are 10, 20, 40,
  165. ; or 80. By default 20ms is used.
  166. ;video_mode = follow_talker; Sets how confbridge handles video distribution to the conference participants.
  167. ; Note that participants wanting to view and be the source of a video feed
  168. ; _MUST_ be sharing the same video codec. Also, using video in conjunction with
  169. ; with the jitterbuffer currently results in the audio being slightly out of sync
  170. ; with the video. This is a result of the jitterbuffer only working on the audio
  171. ; stream. It is recommended to disable the jitterbuffer when video is used.
  172. ;
  173. ; --- MODES ---
  174. ; none: No video sources are set by default in the conference. It is still
  175. ; possible for a user to be set as a video source via AMI or DTMF action
  176. ; at any time.
  177. ;
  178. ; follow_talker: The video feed will follow whoever is talking and providing video.
  179. ;
  180. ; last_marked: The last marked user to join the conference with video capabilities
  181. ; will be the single source of video distributed to all participants.
  182. ; If multiple marked users are capable of video, the last one to join
  183. ; is always the source, when that user leaves it goes to the one who
  184. ; joined before them.
  185. ;
  186. ; first_marked: The first marked user to join the conference with video capabilities
  187. ; is the single source of video distribution among all participants. If
  188. ; that user leaves, the marked user to join after them becomes the source.
  189. ;language=en ; Set the language used for announcements to the conference.
  190. ; Default is en (English).
  191. ; All sounds in the conference are customizable using the bridge profile options below.
  192. ; Simply state the option followed by the filename or full path of the filename after
  193. ; the option. Example: sound_had_joined=conf-hasjoin This will play the conf-hasjoin
  194. ; sound file found in the sounds directory when announcing someone's name is joining the
  195. ; conference.
  196. ;sound_join ; The sound played to everyone when someone enters the conference.
  197. ;sound_leave ; The sound played to everyone when someone leaves the conference.
  198. ;sound_has_joined ; The sound played before announcing someone's name has
  199. ; joined the conference. This is used for user intros.
  200. ; Example "_____ has joined the conference"
  201. ;sound_has_left ; The sound played when announcing someone's name has
  202. ; left the conference. This is used for user intros.
  203. ; Example "_____ has left the conference"
  204. ;sound_kicked ; The sound played to a user who has been kicked from the conference.
  205. ;sound_muted ; The sound played when the mute option it toggled on.
  206. ;sound_unmuted ; The sound played when the mute option it toggled off.
  207. ;sound_only_person ; The sound played when the user is the only person in the conference.
  208. ;sound_only_one ; The sound played to a user when there is only one other
  209. ; person is in the conference.
  210. ;sound_there_are ; The sound played when announcing how many users there
  211. ; are in a conference.
  212. ;sound_other_in_party; ; This file is used in conjunction with 'sound_there_are"
  213. ; when announcing how many users there are in the conference.
  214. ; The sounds are stringed together like this.
  215. ; "sound_there_are" <number of participants> "sound_other_in_party"
  216. ;sound_place_into_conference ; The sound played when someone is placed into the conference
  217. ; after waiting for a marked user. This sound is now deprecated
  218. ; since it was only ever used improperly and correcting that bug
  219. ; made it completely unused.
  220. ;sound_wait_for_leader ; The sound played when a user is placed into a conference that
  221. ; can not start until a marked user enters.
  222. ;sound_leader_has_left ; The sound played when the last marked user leaves the conference.
  223. ;sound_get_pin ; The sound played when prompting for a conference pin number.
  224. ;sound_invalid_pin ; The sound played when an invalid pin is entered too many times.
  225. ;sound_locked ; The sound played to a user trying to join a locked conference.
  226. ;sound_locked_now ; The sound played to an admin after toggling the conference to locked mode.
  227. ;sound_unlocked_now; The sound played to an admin after toggling the conference to unlocked mode.
  228. ;sound_error_menu ; The sound played when an invalid menu option is entered.
  229. ;sound_begin ; The sound played to the conference when the first marked user enters the conference.
  230. ; --- ConfBridge Menu Options ---
  231. ; The ConfBridge application also has the ability to
  232. ; apply custom DTMF menus to each channel using the
  233. ; application. Like the User and Bridge profiles
  234. ; a menu is passed in to ConfBridge as an argument in
  235. ; the dialplan.
  236. ;
  237. ; Below is a list of menu actions that can be assigned
  238. ; to a DTMF sequence.
  239. ;
  240. ; To have the first DTMF digit in a sequence be the '#' character, you need to
  241. ; escape it. If it is not escaped then normal config file processing will
  242. ; think it is a directive like #include. For example:
  243. ; \#1=toggle_mute ; Pressing #1 will toggle the mute setting.
  244. ;
  245. ; A single DTMF sequence can have multiple actions associated with it. This is
  246. ; accomplished by stringing the actions together and using a ',' as the delimiter.
  247. ; Example: Both listening and talking volume is reset when '5' is pressed.
  248. ; 5=reset_talking_volume, reset_listening_volume
  249. ;
  250. ; playback(<name of audio file>&<name of audio file>)
  251. ; Playback will play back an audio file to a channel
  252. ; and then immediately return to the conference.
  253. ; This file can not be interupted by DTMF.
  254. ; Mutliple files can be chained together using the
  255. ; '&' character.
  256. ; playback_and_continue(<name of playback prompt>&<name of playback prompt>)
  257. ; playback_and_continue will
  258. ; play back a prompt while continuing to
  259. ; collect the dtmf sequence. This is useful
  260. ; when using a menu prompt that describes all
  261. ; the menu options. Note however that any DTMF
  262. ; during this action will terminate the prompts
  263. ; playback. Prompt files can be chained together
  264. ; using the '&' character as a delimiter.
  265. ; toggle_mute ; Toggle turning on and off mute. Mute will make the user silent
  266. ; to everyone else, but the user will still be able to listen in.
  267. ; no_op ; This action does nothing (No Operation). Its only real purpose exists for
  268. ; being able to reserve a sequence in the config as a menu exit sequence.
  269. ; decrease_listening_volume ; Decreases the channel's listening volume.
  270. ; increase_listening_volume ; Increases the channel's listening volume.
  271. ; reset_listening_volume ; Reset channel's listening volume to default level.
  272. ; decrease_talking_volume ; Decreases the channel's talking volume.
  273. ; increase_talking_volume ; Icreases the channel's talking volume.
  274. ; reset_talking_volume ; Reset channel's talking volume to default level.
  275. ;
  276. ; dialplan_exec(context,exten,priority) ; The dialplan_exec action allows a user
  277. ; to escape from the conference and execute
  278. ; commands in the dialplan. Once the dialplan
  279. ; exits the user will be put back into the
  280. ; conference. The possibilities are endless!
  281. ; leave_conference ; This action allows a user to exit the conference and continue
  282. ; execution in the dialplan.
  283. ;
  284. ; admin_kick_last ; This action allows an Admin to kick the last participant from the
  285. ; conference. This action will only work for admins which allows
  286. ; a single menu to be used for both users and admins.
  287. ;
  288. ; admin_toggle_conference_lock ; This action allows an Admin to toggle locking and
  289. ; unlocking the conference. Non admins can not use
  290. ; this action even if it is in their menu.
  291. ; set_as_single_video_src ; This action allows any user to set themselves as the
  292. ; single video source distributed to all participants.
  293. ; This will make the video feed stick to them regardless
  294. ; of what the video_mode is set to.
  295. ; release_as_single_video_src ; This action allows a user to release themselves as
  296. ; the video source. If video_mode is not set to "none"
  297. ; this action will result in the conference returning to
  298. ; whatever video mode the bridge profile is using.
  299. ;
  300. ; Note that this action will have no effect if the user
  301. ; is not currently the video source. Also, the user is
  302. ; not guaranteed by using this action that they will not
  303. ; become the video source again. The bridge will return
  304. ; to whatever operation the video_mode option is set to
  305. ; upon release of the video src.
  306. ; admin_toggle_mute_participants ; This action allows an administrator to toggle the mute
  307. ; state for all non-admins within a conference. All
  308. ; admin users are unaffected by this option. Note that all
  309. ; users, regardless of their admin status, are notified
  310. ; that the conference is muted.
  311. ; participant_count ; This action plays back the number of participants currently
  312. ; in a conference
  313. [conf_bridge]
  314. type=bridge
  315. record_conference=yes
  316. [sample_user_menu]
  317. type=menu
  318. *=playback_and_continue(conf-usermenu)
  319. *1=toggle_mute
  320. 1=toggle_mute
  321. *4=decrease_listening_volume
  322. 4=decrease_listening_volume
  323. *6=increase_listening_volume
  324. 6=increase_listening_volume
  325. *7=decrease_talking_volume
  326. 7=decrease_talking_volume
  327. *8=leave_conference
  328. 8=leave_conference
  329. *9=increase_talking_volume
  330. 9=increase_talking_volume
  331. [sample_admin_menu]
  332. type=menu
  333. *=playback_and_continue(conf-adminmenu)
  334. *1=toggle_mute
  335. 1=toggle_mute
  336. *2=admin_toggle_conference_lock ; only applied to admin users
  337. 2=admin_toggle_conference_lock ; only applied to admin users
  338. *3=admin_kick_last ; only applied to admin users
  339. 3=admin_kick_last ; only applied to admin users
  340. *4=decrease_listening_volume
  341. 4=decrease_listening_volume
  342. *6=increase_listening_volume
  343. 6=increase_listening_volume
  344. *7=decrease_talking_volume
  345. 7=decrease_talking_volume
  346. *8=no_op
  347. 8=no_op
  348. *9=increase_talking_volume
  349. 9=increase_talking_volume