Class: Verizon::FirmwareV3Controller
- Inherits:
-
BaseController
- Object
- BaseController
- Verizon::FirmwareV3Controller
- Defined in:
- lib/verizon/controllers/firmware_v3_controller.rb
Overview
FirmwareV3Controller
Constant Summary
Constants inherited from BaseController
Instance Attribute Summary
Attributes inherited from BaseController
Instance Method Summary collapse
-
#list_available_firmware(acc, protocol) ⇒ Array[FirmwarePackage]
This endpoint allows user to list the firmware of an account.
-
#report_device_firmware(acc, device_id) ⇒ DeviceFirmwareVersionUpdateResult
Ask a device to report its firmware version asynchronously.
-
#synchronize_device_firmware(acc, body) ⇒ DeviceFirmwareList
Synchronize ThingSpace with the FOTA server for up to 100 devices.
Methods inherited from BaseController
#initialize, #new_api_call_builder, #new_parameter, #new_request_builder, #new_response_handler, user_agent
Constructor Details
This class inherits a constructor from Verizon::BaseController
Instance Method Details
#list_available_firmware(acc, protocol) ⇒ Array[FirmwarePackage]
This endpoint allows user to list the firmware of an account. retrieve a specific protocol type used.
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/verizon/controllers/firmware_v3_controller.rb', line 14 def list_available_firmware(acc, protocol) new_api_call_builder .request(new_request_builder(HttpMethodEnum::GET, '/firmware/{acc}', Server::SOFTWARE_MANAGEMENT_V3) .template_param(new_parameter(acc, key: 'acc') .should_encode(true)) .query_param(new_parameter(protocol, key: 'protocol')) .header_param(new_parameter('application/json', key: 'accept')) .auth(Single.new('oAuth2'))) .response(new_response_handler .deserializer(APIHelper.method(:custom_type_deserializer)) .deserialize_into(FirmwarePackage.method(:from_hash)) .is_api_response(true) .is_response_array(true) .local_error('400', 'Unexpected error.', FotaV3ResultException)) .execute end |
#report_device_firmware(acc, device_id) ⇒ DeviceFirmwareVersionUpdateResult
Ask a device to report its firmware version asynchronously.
68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/verizon/controllers/firmware_v3_controller.rb', line 68 def report_device_firmware(acc, device_id) new_api_call_builder .request(new_request_builder(HttpMethodEnum::PUT, '/firmware/{acc}/async/{deviceId}', Server::SOFTWARE_MANAGEMENT_V3) .template_param(new_parameter(acc, key: 'acc') .should_encode(true)) .template_param(new_parameter(device_id, key: 'deviceId') .should_encode(true)) .header_param(new_parameter('application/json', key: 'accept')) .auth(Single.new('oAuth2'))) .response(new_response_handler .deserializer(APIHelper.method(:custom_type_deserializer)) .deserialize_into(DeviceFirmwareVersionUpdateResult.method(:from_hash)) .is_api_response(true) .local_error('400', 'Unexpected error.', FotaV3ResultException)) .execute end |
#synchronize_device_firmware(acc, body) ⇒ DeviceFirmwareList
Synchronize ThingSpace with the FOTA server for up to 100 devices. info synchronously.
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/verizon/controllers/firmware_v3_controller.rb', line 41 def synchronize_device_firmware(acc, body) new_api_call_builder .request(new_request_builder(HttpMethodEnum::PUT, '/firmware/{acc}/devices', Server::SOFTWARE_MANAGEMENT_V3) .template_param(new_parameter(acc, key: 'acc') .should_encode(true)) .header_param(new_parameter('application/json', key: 'Content-Type')) .body_param(new_parameter(body)) .header_param(new_parameter('application/json', key: 'accept')) .body_serializer(proc do |param| param.to_json unless param.nil? end) .auth(Single.new('oAuth2'))) .response(new_response_handler .deserializer(APIHelper.method(:custom_type_deserializer)) .deserialize_into(DeviceFirmwareList.method(:from_hash)) .is_api_response(true) .local_error('400', 'Unexpected error.', FotaV3ResultException)) .execute end |