mirror of https://github.com/sipwise/db-schema.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
2.4 KiB
46 lines
2.4 KiB
use provisioning;
|
|
|
|
alter table autoprov_devices
|
|
add column bootstrap_method enum('http','redirect_panasonic','redirect_linksys','redirect_yealink') not null default 'http';
|
|
|
|
update autoprov_devices set bootstrap_method='http' where vendor='Cisco';
|
|
|
|
create table autoprov_sync_parameters(
|
|
`id` integer unsigned not null auto_increment primary key,
|
|
`bootstrap_method` enum('http','redirect_panasonic','redirect_linksys','redirect_yealink') not null default 'http',
|
|
`parameter_name` enum('sync_uri','sync_method','sync_params','security_handler'),
|
|
`parameter_constraint` varchar(255),
|
|
UNIQUE KEY sync_parameter (bootstrap_method,parameter_name)
|
|
);
|
|
insert into autoprov_sync_parameters(bootstrap_method,parameter_name,parameter_constraint) values('http','sync_uri','');
|
|
insert into autoprov_sync_parameters(bootstrap_method,parameter_name,parameter_constraint) values('http','sync_params','');
|
|
insert into autoprov_sync_parameters(bootstrap_method,parameter_name,parameter_constraint) values('http','sync_method','/^(?:GET|POST)$/i');
|
|
insert into autoprov_sync_parameters(bootstrap_method,parameter_name,parameter_constraint) values('http','security_handler','');
|
|
|
|
create table autoprov_sync(
|
|
`id` integer unsigned not null auto_increment primary key,
|
|
`device_id` integer unsigned not null,
|
|
`parameter_id` integer unsigned not null,
|
|
`parameter_value` varchar(255),
|
|
CONSTRAINT `a_s_paramid_ref` FOREIGN KEY (`parameter_id`) REFERENCES `autoprov_sync_parameters` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
|
CONSTRAINT `a_s_deviceid_ref` FOREIGN KEY (`device_id`) REFERENCES `autoprov_devices` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
|
);
|
|
|
|
insert into autoprov_sync(device_id,parameter_id,parameter_value)
|
|
select a.id,p.id,a.val from (
|
|
select id,'sync_uri' as name, sync_uri as val, bootstrap_method from autoprov_devices
|
|
union
|
|
select id,'sync_method' as name, sync_method as val, bootstrap_method from autoprov_devices
|
|
union
|
|
select id,'sync_params' as name, sync_params as val, bootstrap_method from autoprov_devices
|
|
union
|
|
select id,'security_handler' as name, security_handler as val, bootstrap_method from autoprov_devices
|
|
) a inner join autoprov_sync_parameters p on a.name=p.parameter_name and a.bootstrap_method=p.bootstrap_method;
|
|
|
|
|
|
alter table autoprov_devices
|
|
drop column sync_uri,
|
|
drop column sync_method,
|
|
drop column sync_params,
|
|
drop column security_handler;
|