diff --git a/db_scripts/diff/10423.down b/db_scripts/diff/10423.down new file mode 100644 index 00000000..475c6616 --- /dev/null +++ b/db_scripts/diff/10423.down @@ -0,0 +1,23 @@ +USE provisioning; + +DROP TRIGGER provisioning.voip_phost_crepl_trig; + +DELIMITER | + +CREATE TRIGGER voip_phost_crepl_trig AFTER INSERT ON voip_peer_hosts + FOR EACH ROW BEGIN + + INSERT INTO kamailio.lcr_gw (lcr_id, gw_name, ip_addr, hostname, port, uri_scheme, transport, strip, flags, group_id) + VALUES(1, NEW.name, NEW.ip, NEW.host, NEW.port, 1, NEW.transport, 0, NEW.id, NEW.group_id); + + INSERT INTO kamailio.lcr_rule_target (lcr_id, rule_id, gw_id, priority, weight) + SELECT rule.lcr_id, rule.id, LAST_INSERT_ID(), vpg.priority, NEW.weight + FROM kamailio.lcr_rule rule + INNER JOIN provisioning.voip_peer_groups vpg ON vpg.id = rule.group_id + WHERE vpg.id = NEW.group_id; + + END; +| + +DELIMITER ; + diff --git a/db_scripts/diff/10423.up b/db_scripts/diff/10423.up new file mode 100644 index 00000000..3fa49243 --- /dev/null +++ b/db_scripts/diff/10423.up @@ -0,0 +1,27 @@ +USE provisioning; + +DROP TRIGGER provisioning.voip_phost_crepl_trig; + +DELIMITER | + +CREATE TRIGGER voip_phost_crepl_trig AFTER INSERT ON voip_peer_hosts + FOR EACH ROW BEGIN + + INSERT INTO kamailio.lcr_gw (lcr_id, gw_name, ip_addr, hostname, port, uri_scheme, transport, strip, flags, group_id) + VALUES(1, NEW.name, NEW.ip, NEW.host, NEW.port, 1, NEW.transport, 0, NEW.id, NEW.group_id); + + INSERT INTO kamailio.lcr_rule_target (lcr_id, rule_id, gw_id, priority, weight) + SELECT rule.lcr_id, rule.id, LAST_INSERT_ID(), vpg.priority, NEW.weight + FROM kamailio.lcr_rule rule + INNER JOIN provisioning.voip_peer_groups vpg ON vpg.id = rule.group_id + WHERE vpg.id = NEW.group_id; + + INSERT INTO voip_peer_preferences (peer_host_id, attribute_id, value) + SELECT NEW.id, p.id, pe.value + FROM voip_preferences p, voip_preferences_enum pe + WHERE p.id=preference_id AND p.peer_pref=1 AND pe.peer_pref=1 AND pe.default_val=1 AND pe.value IS NOT NULL; + END; +| + +DELIMITER ; +