Skip to content

Commit c160d4e

Browse files
authored
Update bricks library to 0.4.4 version
1 parent f32ac9e commit c160d4e

File tree

149 files changed

+1134
-433
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

149 files changed

+1134
-433
lines changed

debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.4.3/api-docs/arduino/app_bricks/video_imageclassification/API.md

Lines changed: 0 additions & 63 deletions
This file was deleted.

debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.4.3/docs/arduino/video_image_classification/README.md

Lines changed: 0 additions & 22 deletions
This file was deleted.

debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.4.3/docs/arduino/visual_anomaly_detection/README.md

Lines changed: 0 additions & 30 deletions
This file was deleted.
Lines changed: 192 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,192 @@
1+
# air_quality_monitoring API Reference
2+
3+
## Index
4+
5+
- Class `AQILevel`
6+
- Class `AirQualityData`
7+
- Class `AirQualityMonitoring`
8+
- Class `AirQualityLookupError`
9+
10+
---
11+
12+
## `AQILevel` dataclass
13+
14+
```python
15+
class AQILevel()
16+
```
17+
18+
Data class to represent AQI levels.
19+
20+
### Attributes
21+
22+
- **min_value** (*int*): Minimum AQI value for the level.
23+
- **max_value** (*int*): Maximum AQI value for the level.
24+
- **description** (*str*): Description of the AQI level.
25+
- **color** (*str*): Color associated with the AQI level in hex.
26+
27+
28+
---
29+
30+
## `AirQualityData` dataclass
31+
32+
```python
33+
class AirQualityData()
34+
```
35+
36+
Data class to represent air quality data.
37+
38+
### Attributes
39+
40+
- **city** (*str*): Name of the city.
41+
- **lat** (*float*): Latitude of the city.
42+
- **lon** (*float*): Longitude of the city.
43+
- **url** (*str*): URL for more information about the air quality data.
44+
- **last_update** (*str*): Last update timestamp of the air quality data.
45+
- **aqi** (*int*): Air Quality Index value.
46+
- **dominantpol** (*str*): Dominant pollutant in the air.
47+
- **iaqi** (*dict*): Individual AQI values for various pollutants.
48+
49+
### Methods
50+
51+
#### `pandas_dict()`
52+
53+
Return the data as a dictionary suitable for pandas DataFrame.
54+
55+
56+
---
57+
58+
## `AirQualityMonitoring` class
59+
60+
```python
61+
class AirQualityMonitoring(token: str)
62+
```
63+
64+
Class to get air quality data from AQICN API.
65+
66+
### Parameters
67+
68+
- **token** (*str*): API token for AQICN service.
69+
70+
### Raises
71+
72+
- **ValueError**: If the token is not provided.
73+
74+
### Methods
75+
76+
#### `get_air_quality_by_city(city: str)`
77+
78+
Get air quality data by city name.
79+
80+
##### Parameters
81+
82+
- **city** (*str*): Name of the city.
83+
84+
##### Returns
85+
86+
- (*AirQualityData*): Air quality assembled data.
87+
88+
##### Raises
89+
90+
- **AirQualityLookupError**: If the API request fails.
91+
92+
#### `get_air_quality_by_coords(latitude: float, longitude: float)`
93+
94+
Get air quality data by coordinates.
95+
96+
##### Parameters
97+
98+
- **latitude** (*float*): Latitude.
99+
- **longitude** (*float*): Longitude.
100+
101+
##### Returns
102+
103+
- (*AirQualityData*): Air quality assembled data.
104+
105+
##### Raises
106+
107+
- **AirQualityLookupError**: If the API request fails.
108+
109+
#### `get_air_quality_by_ip()`
110+
111+
Get air quality data by IP address.
112+
113+
##### Returns
114+
115+
- (*AirQualityData*): Air quality assembled data.
116+
117+
##### Raises
118+
119+
- **AirQualityLookupError**: If the API request fails.
120+
121+
#### `process(item: dict)`
122+
123+
Process the input dictionary to get air quality data.
124+
125+
##### Parameters
126+
127+
- **item** (*dict*): Input dictionary containing either 'city', 'latitude' and 'longitude', or 'ip'.
128+
129+
##### Returns
130+
131+
- (*dict*): Air quality data.
132+
133+
##### Raises
134+
135+
- **ValueError**: If the input dictionary is not valid.
136+
137+
#### `assemble_data(data: dict)`
138+
139+
Create a payload for the air quality data.
140+
141+
##### Parameters
142+
143+
- **data** (*dict*): Air quality data.
144+
145+
##### Returns
146+
147+
- (*dict*): Payload with relevant air quality information.
148+
149+
#### `map_aqi_level(aqi: int)`
150+
151+
Returns AQILevel class matching provided AQI.
152+
153+
154+
---
155+
156+
## `AirQualityLookupError` class
157+
158+
```python
159+
class AirQualityLookupError(message: str, status: str)
160+
```
161+
162+
Custom exception for air quality lookup errors.
163+
164+
### Parameters
165+
166+
- **message** (*str*): Error message.
167+
- **status** (*str*): Status of the error, defaults to None.
168+
169+
### Methods
170+
171+
#### `from_api_response(cls, data: dict)`
172+
173+
AirQualityLookupError error handling based on response provided by AQI API.
174+
175+
Documented errors:
176+
- {"status": "error", "data": "Invalid key"}
177+
- {"status": "error", "data": "Unknown station"}
178+
- {"status": "error", "data": "Over quota"}
179+
- {"status": "error", "data": "Invalid query"}
180+
- {"status": "error", "data": "Too Many Requests"}
181+
- {"status": "error", "data": "IP not allowed"}
182+
- {"status": "error", "data": "Unknown error"}
183+
- {"status": "error", "data": {"message": "..."}}
184+
185+
##### Parameters
186+
187+
- **data** (*dict*): Response data from the AQI API.
188+
189+
##### Returns
190+
191+
- (*AirQualityLookupError*): An instance of AirQualityLookupError with the error message and status.
192+

0 commit comments

Comments
 (0)