From 7cbb6eab15a29af562d1ef3f174f9af0b64b83b1 Mon Sep 17 00:00:00 2001 From: Kinsey Moore Date: Wed, 15 Jan 2014 13:16:10 +0000 Subject: PJSIP: Add Path header support This adds Path support to chan_pjsip in res_pjsip_path.c with minimal additions in res_pjsip_registrar.c to store the path and additions in res_pjsip_outbound_registration.c to enable advertisement of path support to registrars and intervening proxies. Path information is stored on contacts and is enabled via Address of Record (AoRs) and Registration configuration sections. While adding path support, it became necessary to be able to add SIP supplements that handled messages outside of sessions, so a framework for handling these types of hooks was added in parallel to the already-existing session supplements and several senders of out-of-dialog requests were refactored as a result. (closes issue ASTERISK-21084) Review: https://reviewboard.asterisk.org/r/3050/ ........ Merged revisions 405565 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@405566 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- ...930b41b3_add_pjsip_endpoint_options_for_12_1.py | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100755 contrib/ast-db-manage/config/versions/2fc7930b41b3_add_pjsip_endpoint_options_for_12_1.py (limited to 'contrib/ast-db-manage/config/versions/2fc7930b41b3_add_pjsip_endpoint_options_for_12_1.py') diff --git a/contrib/ast-db-manage/config/versions/2fc7930b41b3_add_pjsip_endpoint_options_for_12_1.py b/contrib/ast-db-manage/config/versions/2fc7930b41b3_add_pjsip_endpoint_options_for_12_1.py new file mode 100755 index 000000000..979aea8f9 --- /dev/null +++ b/contrib/ast-db-manage/config/versions/2fc7930b41b3_add_pjsip_endpoint_options_for_12_1.py @@ -0,0 +1,32 @@ +"""Add pjsip endpoint options for 12.1 + +Revision ID: 2fc7930b41b3 +Revises: 581a4264e537 +Create Date: 2014-01-14 09:23:53.923454 + +""" + +# revision identifiers, used by Alembic. +revision = '2fc7930b41b3' +down_revision = '581a4264e537' + +from alembic import op +import sqlalchemy as sa + +YESNO_VALUES = ['yes', 'no'] +REDIRECT_METHODS = ['user', 'uri_core', 'uri_pjsip'] + +def upgrade(): + op.add_column('ps_endpoints', sa.Column('redirect_method', sa.Enum(*REDIRECT_METHODS, name='redirect_methods'))) + op.add_column('ps_endpoints', sa.Column('set_var', sa.Text())) + op.add_column('ps_contacts', sa.Column('path', sa.Text())) + op.add_column('ps_aors', sa.Column('support_path', sa.Enum(*YESNO_VALUES, name='yesno_values'))) + op.add_column('ps_registrations', sa.Column('support_path', sa.Enum(*YESNO_VALUES, name='yesno_values'))) + + +def downgrade(): + op.drop_column('ps_endpoints', 'redirect_method') + op.drop_column('ps_endpoints', 'set_var') + op.drop_column('ps_contacts', 'path') + op.drop_column('ps_aors', 'support_path') + op.drop_column('ps_registrations', 'support_path') -- cgit v1.2.3