Sha256: 469a95755ccce51a9ee0f4cdac2c593f903e3facbb1c6c73cddf309aa973cd4d

Contents?: true

Size: 1002 Bytes

Versions: 2

Compression:

Stored size: 1002 Bytes

Contents

module Zabbix
  class ZabbixApi
    def get_group_id(pattern)

      message = {
        'method' => 'hostgroup.get',
        'params' => {
          'filter' => {
            'name' => pattern
          }
        }
      }

      response = send_request(message)
      response.empty? ? nil : response[0]['groupid']
    end

    def group_exist?(pattern)
      group_id = get_groups_id(pattern)
      group_id ? true : false
    end

    def add_group(groupname)

      message = {
        'method' => 'hostgroup.create',
        'params' => {
          'name' => groupname
        }
      }

      response = send_request(message)
      response ? response['groupids'] : nil
    end

    def add_host_to_group(host_id, group_id)
      
      message = {
        'method' => 'hostgroup.massAdd',
        'params' => {
          'groups' => [ group_id ],
          'hosts' => [ host_id ]
        }
      }

      response = send_request(message)

      response.empty? ? false : true
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
iteh-zabbixapi-0.2.4 lib/zabbixapi/group.rb
iteh-zabbixapi-0.2.3 lib/zabbixapi/group.rb