Sha256: c8ae553aa3c9bc6cf255f658d128c488d9b1180241ed3279b1a1defd8b5822c8
Contents?: true
Size: 1.5 KB
Versions: 1
Compression:
Stored size: 1.5 KB
Contents
#!/usr/bin/env ruby # # Sensu Handler: ecityruf # # This handler formats alerts and sends them off to the ecityruf service. # # Copyright 2018 Hauke Altmann, about source GmbH # # Released under the same terms as Sensu (the MIT license); see LICENSE # for details. require 'net/https' require 'sensu-handler' require 'timeout' class Ecityruf < Sensu::Handler def event_name @event['client']['name'] + '/' + @event['check']['name'] end def handle apiurl = settings['ecityruf']['url'] || 'https://inetgateway.emessage.de/cgi-bin/funkruf2.cgi' params = { 'action' => 'SendMessage', 'class' => '4', 'language' => settings['ecityruf']['language'] || 'de', 'number' => settings['ecityruf']['number'], 'lengthAlert' => '', 'service' => '1', 'message' => event_name + '/' + @event['check']['output'] } uri = URI.parse(apiurl) uri.query = URI.encode_www_form(params) begin Timeout.timeout(5) do Net::HTTP.start(uri.host, uri.port, use_ssl: uri.scheme == 'https', verify_mode: OpenSSL::SSL::VERIFY_NONE) do |http| request = Net::HTTP::Get.new uri response = http.request request puts response.code end puts 'ecityruf -- sent alert ' + event_name + ' to number ' + params['number'] + '.' end rescue Timeout::Error puts 'ecityruf -- time out while attempting to alert about ' + event_name + '.' end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
sensu-plugins-ecityruf-0.2.3 | bin/handler-ecityruf.rb |