Module: MgmtConsole::Client::EngageCommunities

Included in:
MgmtConsole::Client
Defined in:
lib/mgmt_console/client/engage_communities.rb

Overview

Methods for the Engage Communities API

Instance Method Summary collapse

Instance Method Details

#create_engage_communities(options = {}) ⇒ Array<Sawyer::Resource>

Create Engage Communities

Examples:

Get Engage Communities

@client.update_engage_communities(engage_instance_id: 'df40ec3e-4ad3-4abf-b7c9-c306721f91ea',
                                  engage_communities: [{siteid: 1, servername: 'www1.cust.spigit.com', port: 443},
                                                       {siteid: 2, servername: 'www2.cust.spigit.com', port: 443}],
                                  action: 'replace')

Returns:

  • (Array<Sawyer::Resource>)

    Array of engage communities

Raises:



30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/mgmt_console/client/engage_communities.rb', line 30

def create_engage_communities(options = {})
  # Required
  engage_instance_id = options.delete(:engage_instance_id)
  engage_communities = options.delete(:engage_communities)

  raise MgmtConsole::BadRequest.new('You must provide the Engage Instance ID as :engage_instance_id') unless engage_instance_id
  raise MgmtConsole::BadRequest.new('You must provide the Engage Communities as :engage_communities') unless engage_communities

  # Optional
  action = options.delete(:action)

  params = {
    engage_communities: engage_communities,
    action: action,
  }.reject { |k,v| v.nil? }

  data = post("#{api_endpoint}/engage_instances/#{engage_instance_id}/engage_communities", options.merge(params))
end

#engage_communities(options = {}) ⇒ Array<Sawyer::Resource>

Get Engage Communities list

Examples:

Get Engage Communities

@client.engage_communities

Returns:

  • (Array<Sawyer::Resource>)

    Array of engage communities



12
13
14
15
16
17
18
19
20
# File 'lib/mgmt_console/client/engage_communities.rb', line 12

def engage_communities(options = {})
  engage_instance_id = options.delete(:engage_instance_id)

  if engage_instance_id.nil?
    paginate("#{api_endpoint}/engage_communities", options)
  else
    paginate("#{api_endpoint}/engage_instances/#{engage_instance_id}/engage_communities", options)
  end
end