Class: Verizon::DeviceServiceManagementController

Inherits:
BaseController show all
Defined in:
lib/verizon/controllers/device_service_management_controller.rb

Overview

DeviceServiceManagementController

Constant Summary

Constants inherited from BaseController

BaseController::GLOBAL_ERRORS

Instance Attribute Summary

Attributes inherited from BaseController

#config, #http_call_back

Instance Method Summary collapse

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

#get_device_hyper_precise_status(imei, account_number) ⇒ ApiResponse

Gets the list of a status for hyper-precise location devices. device. an account.

Parameters:

  • imei (String)

    Required parameter: A unique identifier for a

  • account_number (String)

    Required parameter: A unique identifier for

Returns:

  • (ApiResponse)

    the complete http response with raw body and status code.



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/verizon/controllers/device_service_management_controller.rb', line 15

def get_device_hyper_precise_status(imei,
                                    )
  new_api_call_builder
    .request(new_request_builder(HttpMethodEnum::GET,
                                 '/devices/services',
                                 Server::HYPER_PRECISE_LOCATION)
               .query_param(new_parameter(imei, key: 'imei'))
               .query_param(new_parameter(, key: 'accountNumber'))
               .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(BullseyeServiceResult.method(:from_hash))
                .is_api_response(true)
                .local_error('400',
                             'Bad request.',
                             HyperPreciseLocationResultException)
                .local_error('401',
                             'Unauthorized request. Access token is missing or invalid.',
                             HyperPreciseLocationResultException)
                .local_error('403',
                             'Forbidden request.',
                             HyperPreciseLocationResultException)
                .local_error('404',
                             'Bad request. Not found.',
                             HyperPreciseLocationResultException)
                .local_error('409',
                             'Bad request. Conflict state.',
                             HyperPreciseLocationResultException)
                .local_error('500',
                             'Internal Server Error.',
                             HyperPreciseLocationResultException))
    .execute
end

#update_device_hyper_precise_status(body) ⇒ ApiResponse

Enable/disable hyper-precise service for a device. and hyper-precise required statuses.

Parameters:

Returns:

  • (ApiResponse)

    the complete http response with raw body and status code.



54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# File 'lib/verizon/controllers/device_service_management_controller.rb', line 54

def update_device_hyper_precise_status(body)
  new_api_call_builder
    .request(new_request_builder(HttpMethodEnum::PUT,
                                 '/devices/services',
                                 Server::HYPER_PRECISE_LOCATION)
               .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(And.new('thingspace_oauth', 'VZ-M2M-Token')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(BullseyeServiceResult.method(:from_hash))
                .is_api_response(true)
                .local_error('400',
                             'Bad request.',
                             HyperPreciseLocationResultException)
                .local_error('401',
                             'Unauthorized request. Access token is missing or invalid.',
                             HyperPreciseLocationResultException)
                .local_error('403',
                             'Forbidden request.',
                             HyperPreciseLocationResultException)
                .local_error('404',
                             'Bad request. Not found.',
                             HyperPreciseLocationResultException)
                .local_error('409',
                             'Bad request. Conflict state.',
                             HyperPreciseLocationResultException)
                .local_error('500',
                             'Internal Server Error.',
                             HyperPreciseLocationResultException))
    .execute
end