Class: DeviceClient

Inherits:
BaseClient show all
Defined in:
lib/dal/device_client.rb

Constant Summary collapse

DEVICES_URL =
'/api/v1/devices/_search-by-devices'

Class Method Summary collapse

Class Method Details

.get_devices_by_ids(device_ids) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
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
49
50
51
52
53
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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
# File 'lib/dal/device_client.rb', line 4

def self.get_devices_by_ids(device_ids)
  url = DEVICES_URL
  post_body = {
    'aaa-device-ids' => device_ids
  }.to_json
  # res_hash = api_request 'POST', url, {}, post_body
  res_hash = {
    devices: [{
      "aaa_device_id": "749883ec-641c-456a-9bda-fd9ccd4107cd",
      "aaa_organization_id": "dcbeab71-dc2a-4fcb-aba0-2ba5a07feeb1",
      "activity": "Printing",
      "alerts": [{
        "area": "/IDS/CARTRIDGES/CARTRIDGE_fusing_black_0/",
        "cardinal_name": "/IDS/CARTRIDGES/CARTRIDGE_%s_%s_%d/LOW",
        "id": "161092183422018",
        "is_hidden": "false",
        "name": "LOW",
        "severity": "Warning",
        "timestamp": "2019-03-06T11:57:47.000Z"
      }, {
        "area": "/MAINTENANCE/WASTE_CONTAINER_0/",
        "cardinal_name": "/MAINTENANCE/WASTE_CONTAINER_%d/REPLACEMENT_LEVEL_REACHED",
        "id": "161092183422999",
        "is_hidden": "false",
        "name": "REPLACEMENT_LEVEL_REACHED",
        "severity": "Error",
        "timestamp": "2019-03-07T16:20:58.000Z"
      }, {
        "area": "/MAINTENANCE/LIQUID_TANK_abc_5/",
        "cardinal_name": "/MAINTENANCE/LIQUID_TANK_%s_%d/NOT_PRESENT",
        "id": "161092183422999",
        "is_hidden": "false",
        "name": "NOT_PRESENT",
        "severity": "Error",
        "timestamp": "2019-03-10T16:20:58.000Z"
      }, {
        "area": "/MAINTENANCE/FILTER_front_3/",
        "cardinal_name": "/MAINTENANCE/FILTER_%s_%d/ERROR",
        "id": "161092183422999",
        "is_hidden": "false",
        "name": "ERROR",
        "severity": "Error",
        "timestamp": "2019-03-08T16:20:58.000Z"
      }],
      "command_center_version": "CC_0.1",
      "current_job_id": "31643c1c-d397-477f-9809-2bd0a478a49d",
      "error_code": nil,
      "fw_version": "TATDAG_14_18_05.49",
      "last_updated": "2019-03-07T14:37:52.000Z",
      "last_heartbeat": "2019-03-07T14:37:52.000Z",
      "most_relevant_status": "WithAlerts",
      "part_number": "2YG73A",
      "serial_number": "SG84534001",
      "severity": "Warning",
      "status": "printing",
      "total_jobs": 2,
      "trolley_uuid": "bb9f50c3-6153-6390-2ac0-9a6b5c121f33",
      "links": [{
        "rel": "current_job",
        "href": "https://<jobDAL>/api/v1/jobs/31643c1c-d397-477f-9809-2bd0a478a49d"
      }]
    }, {
      "aaa_device_id": "b377a474-608d-4a0d-a6d8-63c4c1ee3561",
      "aaa_organization_id": "dcbeab71-dc2a-4fcb-aba0-2ba5a07feeb1",
      "activity": "Printing",
      "alerts": [{
        "area": "/IDS/PRINTHEADS/PRINTHEAD_33/",
        "cardinal_name": "/IDS/PRINTHEADS/PRINTHEAD_%d/RESEAT",
        "id": "161092183422018",
        "is_hidden": "false",
        "name": "LOW",
        "severity": "Warning",
        "timestamp": "2019-03-06T11:57:47.000Z"
      }, {
        "area": "/TOP_LAMPS/LAMP_1/",
        "cardinal_name": "/TOP_LAMPS/LAMP_%d/FUSED",
        "id": "161092183422999",
        "is_hidden": "false",
        "name": "REPLACEMENT_LEVEL_REACHED",
        "severity": "Error",
        "timestamp": "2019-03-07T16:20:58.000Z"
      }, {
        "area": "/IDS/CARTRIDGES/CARTRIDGE_fusing_blue_5/",
        "cardinal_name": "/IDS/CARTRIDGES/CARTRIDGE_%s_%s_%d/LOW",
        "id": "161092183422018",
        "is_hidden": "false",
        "name": "LOW",
        "severity": "Warning",
        "timestamp": "2019-03-09T11:57:47.000Z"
      }, {
        "area": "/IDS/PRINTHEADS/PRINTHEAD_1/",
        "cardinal_name": "/IDS/PRINTHEADS/PRINTHEAD_%d/TEST_SEPARATELY",
        "id": "161092183422018",
        "is_hidden": "false",
        "name": "LOW",
        "severity": "Warning",
        "timestamp": "2019-03-12T11:57:47.000Z"
      }, {
        "area": "/MAINTENANCE/FILTER_front_3/",
        "cardinal_name": "/MAINTENANCE/FILTER_%s_%d/ERROR",
        "id": "161092183422999",
        "is_hidden": "false",
        "name": "ERROR",
        "severity": "Error",
        "timestamp": "2019-03-10T16:20:58.000Z"
      }, {
        "area": "/MAINTENANCE/LIQUID_TANK_xyz_1/",
        "cardinal_name": "/MAINTENANCE/LIQUID_TANK_%s_%d/ERROR",
        "id": "161092183422999",
        "is_hidden": "false",
        "name": "ERROR",
        "severity": "Error",
        "timestamp": "2019-03-10T16:20:58.000Z"
      }],
      "command_center_version": "CC_0.1",
      "current_job_id": "31643c1c-d397-477f-9809-2bd0a478a49d",
      "error_code": nil,
      "fw_version": "TATDAG_14_18_05.49",
      "last_updated": "2019-03-07T14:37:52.000Z",
      "last_heartbeat": "2019-03-07T14:37:52.000Z",
      "most_relevant_status": "WithAlerts",
      "part_number": "2YG73A",
      "serial_number": "SG84534001",
      "severity": "Warning",
      "status": "printing",
      "total_jobs": 2,
      "trolley_uuid": "bb9f50c3-6153-6390-2ac0-9a6b5c121f33",
      "links": [{
        "rel": "current_job",
        "href": "https://<jobDAL>/api/v1/jobs/31643c1c-d397-477f-9809-2bd0a478a49d"
      }]
    }]
  }
  res_hash.present? ? res_hash[:devices] : nil
end