Class: Cassia::AccessController

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

Instance Method Summary collapse

Instance Method Details

#close_ap_stateObject



63
64
65
# File 'lib/cassia/access_controller.rb', line 63

def close_ap_state
  Cassia::Requests::CloseApState.new(self).perform
end

#close_char_notification(router:, device_mac:, handle:) ⇒ Object



103
104
105
# File 'lib/cassia/access_controller.rb', line 103

def close_char_notification(router: , device_mac: , handle: )
  Cassia::Requests::WriteCharByHandle.new(self, router: router, device_mac: device_mac, handle: handle, value: "0000").perform
end

#close_connection_state(aps:) ⇒ Object



55
56
57
# File 'lib/cassia/access_controller.rb', line 55

def close_connection_state(aps: )
  Cassia::Requests::CloseConnectionState.new(self, aps: aps).perform
end

#close_notify(aps:) ⇒ Object



47
48
49
# File 'lib/cassia/access_controller.rb', line 47

def close_notify(aps: )
  Cassia::Requests::CloseNotify.new(self, aps: aps).perform
end

#close_scan(aps:) ⇒ Object



31
32
33
# File 'lib/cassia/access_controller.rb', line 31

def close_scan(aps: )
  Cassia::Requests::CloseScan.new(self, aps: aps).perform
end

#combined_sseObject



67
68
69
70
71
72
73
# File 'lib/cassia/access_controller.rb', line 67

def combined_sse
  combined_sse = Cassia::Requests::CombinedSse.new(self)

  self.sse = SSE::Client.new("#{ac_url}#{combined_sse.path}", headers: combined_sse.headers) do |client|
    yield(client)
  end
end

#connect_device(aps: '*', device_mac:) ⇒ Object



35
36
37
# File 'lib/cassia/access_controller.rb', line 35

def connect_device(aps: '*', device_mac: )
  Cassia::Requests::ConnectDevice.new(self, aps: aps, device_mac: device_mac).perform
end

#disconnect_device(device_mac:) ⇒ Object



39
40
41
# File 'lib/cassia/access_controller.rb', line 39

def disconnect_device(device_mac: )
  Cassia::Requests::DisconnectDevice.new(self, device_mac: device_mac).perform
end

#discover_all_char(router:, device_mac:) ⇒ Object



79
80
81
# File 'lib/cassia/access_controller.rb', line 79

def discover_all_char(router: , device_mac: )
  Cassia::Requests::DiscoverAllChar.new(self, router: router, device_mac: device_mac).perform
end

#discover_all_services(router:, device_mac:) ⇒ Object



75
76
77
# File 'lib/cassia/access_controller.rb', line 75

def discover_all_services(router: , device_mac: )
  Cassia::Requests::DiscoverAllServices.new(self, router: router, device_mac: device_mac).perform
end

#discover_all_services_and_chars(router:, device_mac:) ⇒ Object



91
92
93
# File 'lib/cassia/access_controller.rb', line 91

def discover_all_services_and_chars(router: , device_mac: )
  Cassia::Requests::DiscoverAllServicesAndChars.new(self, router: router, device_mac: device_mac).perform
end

#discover_char_of_service(router:, device_mac:, service_uuid:) ⇒ Object



83
84
85
# File 'lib/cassia/access_controller.rb', line 83

def discover_char_of_service(router: , device_mac: , service_uuid: )
  Cassia::Requests::DiscoverCharOfService.new(self, router: router, device_mac: device_mac, service_uuid: service_uuid).perform
end

#discover_descriptor_of_char(router:, device_mac:, char_uuid:) ⇒ Object



87
88
89
# File 'lib/cassia/access_controller.rb', line 87

def discover_descriptor_of_char(router: , device_mac: , char_uuid: )
  Cassia::Requests::DiscoverDescriptorOfChar.new(self, router: router, device_mac: device_mac, char_uuid: char_uuid).perform
end

#get_all_routers_statusObject



19
20
21
# File 'lib/cassia/access_controller.rb', line 19

def get_all_routers_status
  Cassia::Requests::GetAllRoutersStatus.new(self).perform
end

#get_tokenObject



14
15
16
17
# File 'lib/cassia/access_controller.rb', line 14

def get_token
  Cassia::Requests::GetToken.new(self).perform if access_token.nil? || Time.now.getutc > access_token_expiration
  access_token
end

#open_ap_stateObject



59
60
61
# File 'lib/cassia/access_controller.rb', line 59

def open_ap_state
  Cassia::Requests::OpenApState.new(self).perform
end

#open_char_notification(router:, device_mac:, handle:) ⇒ Object



99
100
101
# File 'lib/cassia/access_controller.rb', line 99

def open_char_notification(router: , device_mac: , handle: )
  Cassia::Requests::WriteCharByHandle.new(self, router: router, device_mac: device_mac, handle: handle, value: "0100").perform
end

#open_connection_state(aps:) ⇒ Object



51
52
53
# File 'lib/cassia/access_controller.rb', line 51

def open_connection_state(aps: )
  Cassia::Requests::OpenConnectionState.new(self, aps: aps).perform
end

#open_notify(aps:) ⇒ Object



43
44
45
# File 'lib/cassia/access_controller.rb', line 43

def open_notify(aps: )
  Cassia::Requests::OpenNotify.new(self, aps: aps).perform
end

#open_scan(aps:, chip: nil, active: nil, filter_name: nil, filter_mac: nil, filter_uuid: nil) ⇒ Object



27
28
29
# File 'lib/cassia/access_controller.rb', line 27

def open_scan(aps: , chip: nil, active: nil, filter_name: nil, filter_mac: nil, filter_uuid: nil)
  Cassia::Requests::OpenScan.new(self, aps: aps, chip: chip, active: active, filter_name: filter_name, filter_mac: filter_mac, filter_uuid: filter_uuid).perform
end

#switch_autoselect(flag:) ⇒ Object



23
24
25
# File 'lib/cassia/access_controller.rb', line 23

def switch_autoselect(flag: )
  Cassia::Requests::SwitchAutoselect.new(self, flag: flag).perform
end

#write_char_by_handle(router:, device_mac:, handle:, value:) ⇒ Object



95
96
97
# File 'lib/cassia/access_controller.rb', line 95

def write_char_by_handle(router: , device_mac:, handle: , value: )
  Cassia::Requests::WriteCharByHandle.new(self, router: router, device_mac: device_mac, handle: handle, value: value).perform
end