summaryrefslogtreecommitdiff
path: root/apps/confbridge
diff options
context:
space:
mode:
Diffstat (limited to 'apps/confbridge')
-rw-r--r--apps/confbridge/conf_config_parser.c17
-rw-r--r--apps/confbridge/include/confbridge.h5
2 files changed, 22 insertions, 0 deletions
diff --git a/apps/confbridge/conf_config_parser.c b/apps/confbridge/conf_config_parser.c
index 29d7b7f53..4729139c2 100644
--- a/apps/confbridge/conf_config_parser.c
+++ b/apps/confbridge/conf_config_parser.c
@@ -425,6 +425,8 @@
<enum name="sound_kicked"><para>The sound played to a user who has been kicked from the conference.</para></enum>
<enum name="sound_muted"><para>The sound played when the mute option it toggled on.</para></enum>
<enum name="sound_unmuted"><para>The sound played when the mute option it toggled off.</para></enum>
+ <enum name="sound_binaural_on"><para>The sound played when binaural auudio is turned on.</para></enum>
+ <enum name="sound_binaural_off"><para>The sound played when the binaural audio is turned off.</para></enum>
<enum name="sound_only_person"><para>The sound played when the user is the only person in the conference.</para></enum>
<enum name="sound_only_one"><para>The sound played to a user when there is only one other
person is in the conference.</para></enum>
@@ -512,6 +514,9 @@
Toggle turning on and off mute. Mute will make the user silent
to everyone else, but the user will still be able to listen in.
</para></enum>
+ <enum name="toggle_binaural"><para>
+ Toggle turning on and off binaural audio processing.
+ </para></enum>
<enum name="no_op"><para>
This action does nothing (No Operation). Its only real purpose exists for
being able to reserve a sequence in the config as a menu exit sequence.</para></enum>
@@ -916,6 +921,10 @@ static int set_sound(const char *sound_name, const char *sound_file, struct brid
ast_string_field_set(sounds, muted, sound_file);
} else if (!strcasecmp(sound_name, "sound_unmuted")) {
ast_string_field_set(sounds, unmuted, sound_file);
+ } else if (!strcasecmp(sound_name, "sound_binaural_on")) {
+ ast_string_field_set(sounds, binauralon, sound_file);
+ } else if (!strcasecmp(sound_name, "sound_binaural_off")) {
+ ast_string_field_set(sounds, binauraloff, sound_file);
} else if (!strcasecmp(sound_name, "sound_there_are")) {
ast_string_field_set(sounds, thereare, sound_file);
} else if (!strcasecmp(sound_name, "sound_other_in_party")) {
@@ -1141,6 +1150,7 @@ static int add_action_to_menu_entry(struct conf_menu_entry *menu_entry, enum con
switch (id) {
case MENU_ACTION_NOOP:
case MENU_ACTION_TOGGLE_MUTE:
+ case MENU_ACTION_TOGGLE_BINAURAL:
case MENU_ACTION_INCREASE_LISTENING:
case MENU_ACTION_DECREASE_LISTENING:
case MENU_ACTION_INCREASE_TALKING:
@@ -1249,6 +1259,8 @@ static int add_menu_entry(struct conf_menu *menu, const char *dtmf, const char *
ast_copy_string(menu_entry->dtmf, dtmf, sizeof(menu_entry->dtmf));
if (!strcasecmp(action, "toggle_mute")) {
res |= add_action_to_menu_entry(menu_entry, MENU_ACTION_TOGGLE_MUTE, NULL);
+ } else if (!strcasecmp(action, "toggle_binaural")) {
+ res |= add_action_to_menu_entry(menu_entry, MENU_ACTION_TOGGLE_BINAURAL, NULL);
} else if (!strcasecmp(action, "no_op")) {
res |= add_action_to_menu_entry(menu_entry, MENU_ACTION_NOOP, NULL);
} else if (!strcasecmp(action, "increase_listening_volume")) {
@@ -1647,6 +1659,8 @@ static char *handle_cli_confbridge_show_bridge_profile(struct ast_cli_entry *e,
ast_cli(a->fd,"sound_kicked: %s\n", conf_get_sound(CONF_SOUND_KICKED, b_profile.sounds));
ast_cli(a->fd,"sound_muted: %s\n", conf_get_sound(CONF_SOUND_MUTED, b_profile.sounds));
ast_cli(a->fd,"sound_unmuted: %s\n", conf_get_sound(CONF_SOUND_UNMUTED, b_profile.sounds));
+ ast_cli(a->fd,"sound_binaural_on: %s\n", conf_get_sound(CONF_SOUND_BINAURAL_ON, b_profile.sounds));
+ ast_cli(a->fd,"sound_binaural_off: %s\n", conf_get_sound(CONF_SOUND_BINAURAL_OFF, b_profile.sounds));
ast_cli(a->fd,"sound_there_are: %s\n", conf_get_sound(CONF_SOUND_THERE_ARE, b_profile.sounds));
ast_cli(a->fd,"sound_other_in_party: %s\n", conf_get_sound(CONF_SOUND_OTHER_IN_PARTY, b_profile.sounds));
ast_cli(a->fd,"sound_place_into_conference: %s\n", conf_get_sound(CONF_SOUND_PLACE_IN_CONF, b_profile.sounds));
@@ -1775,6 +1789,9 @@ static char *handle_cli_confbridge_show_menu(struct ast_cli_entry *e, int cmd, s
case MENU_ACTION_TOGGLE_MUTE:
ast_cli(a->fd, "toggle_mute");
break;
+ case MENU_ACTION_TOGGLE_BINAURAL:
+ ast_cli(a->fd, "toggle_binaural");
+ break;
case MENU_ACTION_NOOP:
ast_cli(a->fd, "no_op");
break;
diff --git a/apps/confbridge/include/confbridge.h b/apps/confbridge/include/confbridge.h
index f91f2dc89..584499ff3 100644
--- a/apps/confbridge/include/confbridge.h
+++ b/apps/confbridge/include/confbridge.h
@@ -93,6 +93,7 @@ enum conf_menu_action_id {
MENU_ACTION_RELEASE_SINGLE_VIDEO_SRC,
MENU_ACTION_PARTICIPANT_COUNT,
MENU_ACTION_ADMIN_TOGGLE_MUTE_PARTICIPANTS,
+ MENU_ACTION_TOGGLE_BINAURAL,
};
/*! The conference menu action contains both
@@ -170,6 +171,8 @@ enum conf_sounds {
CONF_SOUND_PARTICIPANTS_MUTED,
CONF_SOUND_PARTICIPANTS_UNMUTED,
CONF_SOUND_BEGIN,
+ CONF_SOUND_BINAURAL_ON,
+ CONF_SOUND_BINAURAL_OFF,
};
struct bridge_profile_sounds {
@@ -197,6 +200,8 @@ struct bridge_profile_sounds {
AST_STRING_FIELD(participantsmuted);
AST_STRING_FIELD(participantsunmuted);
AST_STRING_FIELD(begin);
+ AST_STRING_FIELD(binauralon);
+ AST_STRING_FIELD(binauraloff);
);
};