Class: Cassia::Requests::ConnectLocal

Inherits:
Object
  • Object
show all
Defined in:
lib/cassia/requests/connect_local.rb

Instance Method Summary collapse

Constructor Details

#initialize(access_controller, router:, device_mac: nil, type: 'random', timeout: '5000', auto: '0', discovergatt: '1') ⇒ ConnectLocal

Returns a new instance of ConnectLocal.



4
5
6
7
8
9
10
11
12
# File 'lib/cassia/requests/connect_local.rb', line 4

def initialize(access_controller, router: , device_mac: nil, type: 'random', timeout: '5000', auto: '0', discovergatt: '1')
  @access_controller = access_controller
  @router = router
  @device_mac = device_mac
  @type = type
  @timeout = timeout
  @auto = auto
  @discovergatt = discovergatt
end

Instance Method Details

#bodyObject



18
19
20
21
22
23
# File 'lib/cassia/requests/connect_local.rb', line 18

def body
  { 'type' => @type,
    'timeout' => @timeout,
    'auto' => @auto,
    'discovergatt' => @discovergatt }.to_json
end

#headersObject



25
26
27
28
29
30
# File 'lib/cassia/requests/connect_local.rb', line 25

def headers
  {
    'Authorization' => "Bearer #{@access_controller.get_token}",
    'Content-Type' => "application/json"
  }
end

#pathObject



14
15
16
# File 'lib/cassia/requests/connect_local.rb', line 14

def path
  "/api/gap/nodes/#{@device_mac}/connection?mac=#{@router.mac}"
end

#performObject



32
33
34
# File 'lib/cassia/requests/connect_local.rb', line 32

def perform
  Cassia::ResponseHandlers::ConnectLocal.new(@access_controller, router: @router, device_mac: @device_mac).handle(Cassia.api.post(self))
end