diff --git a/contrib/ast-db-manage/config/versions/44ccced114ce_add_webrtc.py b/contrib/ast-db-manage/config/versions/44ccced114ce_add_webrtc.py new file mode 100644 index 0000000000000000000000000000000000000000..fdeb058da47e7a116c0184cbd7d50c784c4bb775 --- /dev/null +++ b/contrib/ast-db-manage/config/versions/44ccced114ce_add_webrtc.py @@ -0,0 +1,31 @@ +"""add webrtc option to ps_endpoints + +Revision ID: 44ccced114ce +Revises: 164abbd708c +Create Date: 2017-07-10 17:07:25.926150 + +""" + +# revision identifiers, used by Alembic. +revision = '44ccced114ce' +down_revision = '164abbd708c' + +from alembic import op +import sqlalchemy as sa +from sqlalchemy.dialects.postgresql import ENUM + +YESNO_NAME = 'yesno_values' +YESNO_VALUES = ['yes', 'no'] + +def upgrade(): + ############################# Enums ############################## + + # yesno_values have already been created, so use postgres enum object + # type to get around "already created" issue - works okay with mysql + yesno_values = ENUM(*YESNO_VALUES, name=YESNO_NAME, create_type=False) + + op.add_column('ps_endpoints', sa.Column('webrtc', yesno_values)) + + +def downgrade(): + op.drop_column('ps_endpoints', 'webrtc') diff --git a/res/res_pjsip/pjsip_configuration.c b/res/res_pjsip/pjsip_configuration.c index 4e12b04cca85a4a341472d9a69a2fe3031e45b2d..d3ff1f32bc133e1b7c567d979d29c0253dbae461 100644 --- a/res/res_pjsip/pjsip_configuration.c +++ b/res/res_pjsip/pjsip_configuration.c @@ -1994,7 +1994,7 @@ int ast_res_pjsip_initialize_configuration(void) ast_sorcery_object_field_register(sip_sorcery, "endpoint", "max_audio_streams", "1", OPT_UINT_T, 0, FLDSET(struct ast_sip_endpoint, media.max_audio_streams)); ast_sorcery_object_field_register(sip_sorcery, "endpoint", "max_video_streams", "1", OPT_UINT_T, 0, FLDSET(struct ast_sip_endpoint, media.max_video_streams)); ast_sorcery_object_field_register(sip_sorcery, "endpoint", "bundle", "no", OPT_BOOL_T, 1, FLDSET(struct ast_sip_endpoint, media.bundle)); - ast_sorcery_object_field_register(sip_sorcery, "endpoint", "webrtc", "no", OPT_BOOL_T, 1, FLDSET(struct ast_sip_endpoint, media.webrtc)); + ast_sorcery_object_field_register(sip_sorcery, "endpoint", "webrtc", "no", OPT_YESNO_T, 1, FLDSET(struct ast_sip_endpoint, media.webrtc)); if (ast_sip_initialize_sorcery_transport()) { ast_log(LOG_ERROR, "Failed to register SIP transport support with sorcery\n");