diff --git a/db_scripts/diff/15005.down b/db_scripts/diff/15005.down index 7c9bb146..f1be74fa 100644 --- a/db_scripts/diff/15005.down +++ b/db_scripts/diff/15005.down @@ -13,4 +13,24 @@ DELETE FROM products WHERE class IN ('sipaccount', 'pbxaccount'); USE provisioning; DROP TABLE voip_pbx_groups; +ALTER TABLE voip_subscribers + DROP COLUMN is_pbx_group; +ALTER TABLE voip_subscribers + CHANGE COLUMN pbx_group_id autoconf_group_id INT(11) UNSIGNED DEFAULT NULL; +ALTER TABLE voip_subscribers + ADD COLUMN autoconf_displayname VARCHAR(255) DEFAULT NULL; + + +SELECT id INTO @vpg_id FROM voip_preference_groups WHERE name = 'Internal'; +UPDATE voip_preferences SET + voip_preference_groups_id = @vpg_id, + internal = 0 +WHERE attribute = 'cloud_pbx'; +DELETE FROM voip_preference_groups WHERE name = 'Cloud PBX'; + +SELECT id INTO @hunt_id FROM voip_preferences WHERE attribute = 'cloud_pbx_hunt_policy'; +DELETE FROM voip_preferences_enum WHERE preference_id = @hunt_id; +DELETE FROM voip_preferences WHERE attribute IN + ('cloud_pbx_hunt_policy', 'cloud_pbx_hunt_timeout', 'cloud_pbx_hunt_group'); + COMMIT; diff --git a/db_scripts/diff/15005.up b/db_scripts/diff/15005.up index d45d8057..e27cf39c 100644 --- a/db_scripts/diff/15005.up +++ b/db_scripts/diff/15005.up @@ -35,4 +35,30 @@ CREATE TABLE `voip_pbx_groups` ( CONSTRAINT `fk_v_sub_group` FOREIGN KEY (`subscriber_id`) REFERENCES `voip_subscribers` (`id`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; +INSERT INTO voip_preference_groups (name) values ('Cloud PBX'); +SELECT LAST_INSERT_ID() INTO @vpg_id; + +UPDATE voip_preferences SET + voip_preference_groups_id = @vpg_id, + internal = 1 +WHERE attribute = 'cloud_pbx'; + +INSERT INTO voip_preferences + (voip_preference_groups_id, attribute, type, usr_pref, dom_pref, peer_pref, + internal, data_type, max_occur, description, modify_timestamp) +VALUES + (@vpg_id, 'cloud_pbx_hunt_policy', 0, 1, 0, 0, + 1, 'enum', 1, 'The hunting policy for PBX hunt groups.', '1970-01-01 00:00:00'), + (@vpg_id, 'cloud_pbx_hunt_timeout', 1, 1, 0, 0, + 1, 'int', 1, 'The serial timeout for hunting in PBX hunt groups.', '1970-01-01 00:00:00'), + (@vpg_id, 'cloud_pbx_hunt_group', 0, 1, 0, 0, + 1, 'string', 0, 'The members (as SIP URIs) of the PBX hunt group.', '1970-01-01 00:00:00'); + +SELECT id INTO @hunt_id FROM voip_preferences WHERE attribute = 'cloud_pbx_hunt_policy'; +INSERT INTO voip_preferences_enum + (preference_id, label, value, usr_pref, dom_pref, peer_pref, default_val) + VALUES + (@hunt_id, 'serial', 'serial', 1, 0, 0, 1), + (@hunt_id, 'parallel', 'parallel', 1, 0, 0, 0); + COMMIT;