Class: Verizon::FirmwareV3Api
- Defined in:
- lib/verizon/apis/firmware_v3_api.rb
Overview
FirmwareV3Api
Constant Summary
Constants inherited from BaseApi
Instance Attribute Summary
Attributes inherited from BaseApi
Instance Method Summary collapse
-
#list_available_firmware(acc, protocol) ⇒ ApiResponse
This endpoint allows user to list the firmware of an account.
-
#report_device_firmware(acc, device_id) ⇒ ApiResponse
Ask a device to report its firmware version asynchronously.
-
#synchronize_device_firmware(acc, body) ⇒ ApiResponse
Synchronize ThingSpace with the FOTA server for up to 100 devices.
Methods inherited from BaseApi
#initialize, #new_parameter, #new_request_builder, #new_response_handler, user_agent, user_agent_parameters
Constructor Details
This class inherits a constructor from Verizon::BaseApi
Instance Method Details
#list_available_firmware(acc, protocol) ⇒ ApiResponse
This endpoint allows user to list the firmware of an account. 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 35 36 |
# File 'lib/verizon/apis/firmware_v3_api.rb', line 14 def list_available_firmware(acc, protocol) @api_call .request(new_request_builder(HttpMethodEnum::GET, '/firmware/{acc}', Server::SOFTWARE_MANAGEMENT_V3) .template_param(new_parameter(acc, key: 'acc') .is_required(true) .should_encode(true)) .query_param(new_parameter(protocol, key: 'protocol') .is_required(true)) .header_param(new_parameter('application/json', key: 'accept')) .auth(And.new('thingspace_oauth', 'VZ-M2M-Token'))) .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) ⇒ ApiResponse
Ask a device to report its firmware version asynchronously.
72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 |
# File 'lib/verizon/apis/firmware_v3_api.rb', line 72 def report_device_firmware(acc, device_id) @api_call .request(new_request_builder(HttpMethodEnum::PUT, '/firmware/{acc}/async/{deviceId}', Server::SOFTWARE_MANAGEMENT_V3) .template_param(new_parameter(acc, key: 'acc') .is_required(true) .should_encode(true)) .template_param(new_parameter(device_id, key: 'deviceId') .is_required(true) .should_encode(true)) .header_param(new_parameter('application/json', key: 'accept')) .auth(And.new('thingspace_oauth', 'VZ-M2M-Token'))) .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) ⇒ ApiResponse
Synchronize ThingSpace with the FOTA server for up to 100 devices. info synchronously.
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/verizon/apis/firmware_v3_api.rb', line 43 def synchronize_device_firmware(acc, body) @api_call .request(new_request_builder(HttpMethodEnum::PUT, '/firmware/{acc}/devices', Server::SOFTWARE_MANAGEMENT_V3) .template_param(new_parameter(acc, key: 'acc') .is_required(true) .should_encode(true)) .header_param(new_parameter('application/json', key: 'Content-Type')) .body_param(new_parameter(body) .is_required(true)) .header_param(new_parameter('application/json', key: 'accept')) .body_serializer(proc do |param| param.to_json unless param.nil? end) .auth(And.new('thingspace_oauth', 'VZ-M2M-Token'))) .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 |