From bc450bb73fea9e8eb363f89e806e4f6084cf0511 Mon Sep 17 00:00:00 2001 From: Peter Kozak Date: Sat, 9 Mar 2013 03:01:56 -0500 Subject: perimeter control method added --- app/models/intruder.rb | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'app/models/intruder.rb') diff --git a/app/models/intruder.rb b/app/models/intruder.rb index 9a1c39a..bdfa753 100644 --- a/app/models/intruder.rb +++ b/app/models/intruder.rb @@ -50,6 +50,17 @@ class Intruder < ActiveRecord::Base } end + def self.control(action, attributes={}) + require 'freeswitch_event' + event = FreeswitchEvent.new('CUSTOM') + event.add_header('Event-Subclass', 'perimeter::control') + event.add_header('action', action) + attributes.each do |name, value| + event.add_header(name, value) + end + return event.fire() + end + private def set_key_if_empty if self.key.blank? -- cgit v1.2.3 From cf506e96cfdd2f399934251f79c6f681503b7d5f Mon Sep 17 00:00:00 2001 From: Peter Kozak Date: Sat, 9 Mar 2013 03:56:10 -0500 Subject: perimeter_db_rescan class, instance methods added --- app/models/intruder.rb | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'app/models/intruder.rb') diff --git a/app/models/intruder.rb b/app/models/intruder.rb index bdfa753..97120a7 100644 --- a/app/models/intruder.rb +++ b/app/models/intruder.rb @@ -50,13 +50,23 @@ class Intruder < ActiveRecord::Base } end - def self.control(action, attributes={}) + def perimeter_db_rescan + Intruder.perimeter_control(:db_rescan, :key => self.key) + end + + def self.perimeter_db_rescan(key=nil) + Intruder.perimeter_control(:db_rescan, :key => key) + end + + def self.perimeter_control(action, attributes={}) require 'freeswitch_event' event = FreeswitchEvent.new('CUSTOM') event.add_header('Event-Subclass', 'perimeter::control') event.add_header('action', action) attributes.each do |name, value| - event.add_header(name, value) + if !name.blank? && value then + event.add_header(name, value) + end end return event.fire() end -- cgit v1.2.3 From 4d11efbd7b0dc1c7e89210a56ea5ca77fe801c7e Mon Sep 17 00:00:00 2001 From: Peter Kozak Date: Sat, 9 Mar 2013 04:12:52 -0500 Subject: send perimeter event after_save --- app/models/intruder.rb | 3 +++ 1 file changed, 3 insertions(+) (limited to 'app/models/intruder.rb') diff --git a/app/models/intruder.rb b/app/models/intruder.rb index 97120a7..9c01634 100644 --- a/app/models/intruder.rb +++ b/app/models/intruder.rb @@ -119,6 +119,7 @@ class Intruder < ActiveRecord::Base write_firewall_list restart_firewall end + self.perimeter_db_rescan end end @@ -129,6 +130,7 @@ class Intruder < ActiveRecord::Base restart_firewall end end + self.perimeter_db_rescan end def check_if_delete_relevant @@ -138,5 +140,6 @@ class Intruder < ActiveRecord::Base restart_firewall end end + self.perimeter_db_rescan end end -- cgit v1.2.3