Skip to content

Commit 3b8db1b

Browse files
committed
Resolved merge conflicts
2 parents 2d7840b + 3eead47 commit 3b8db1b

23 files changed

+1319
-484
lines changed

.gitignore

+4
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,10 @@ video_dir
114114
.idea
115115
docs/out
116116

117+
bugs/
118+
videos/
119+
logs/
120+
117121
# specific entries for arlo-fhem
118122
arlo-fhem.cfg
119123
debug.log

changelog

+28
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,31 @@
1+
0.8.0b7:
2+
Allow more MQTT config.
3+
Fix headers.
4+
Distinguish between user/shared location.
5+
Fix missing event issue.
6+
Tidy capture code.
7+
Specify Python 3
8+
0.8.0b6: Simplify state checking; bring API up to date and remove deprecated
9+
calls
10+
Add back the packet docs.
11+
0.8.0b5: Add initial 8-in-1 sensor support
12+
[thanks xirtamoen for lending the sensors]
13+
Support Arlo v4 APIs
14+
[thanks JeffSteinbok for the implementation]
15+
0.8.0b4: Allow ping when devices are on chargers.
16+
Added event_id and time to URL paths.
17+
Added custom cipher list.
18+
0.8.0b3: Better snapshot tidy up.
19+
Improve debugging - add component or ID to debug entry.
20+
Allow actual user agent to be used by prefixing with a !
21+
Undo broken IMAP
22+
Fix doorbell motion
23+
Fix doorbell capabilities
24+
0.8.0b2: Better shutdown of threads.
25+
Allow ciphers to be set to SSL defaults.
26+
Try to parse all email parts looking for the authentication code.
27+
Open mailbox read only, stops the wrong emails getting marked as read.
28+
Better detection of backend.
129
0.8.0b1: Fix yahoo imap support.
230
Fix creation of ArloSnapshot objects.
331

docs/packets.md

+123
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
2+
# Arlo Packet Types
3+
These are the packets we can receive over the _SSE_ or _MQTT_ back ends.
4+
5+
## Packet type #1
6+
This is a subscription reply packet. This will be received about once a
7+
minute for devices that need them.
8+
9+
```json
10+
{ "action": "is",
11+
"from": "XXXXXXXXXXXXX",
12+
"properties": {"devices": ["XXXXXXXXXXXXX"]},
13+
"resource": "subscriptions/XXXXXXXXXXXXX24993_web",
14+
"to": "XXXXXXXXXXXXX24993_web",
15+
"transId": "web!33c2027d-9b96-4a9f-9b41-aaf412082e80"}
16+
```
17+
18+
## Packet type #2
19+
A base has changed its alarm mode, ie, gone from `disarmed` to `armed`. The
20+
packet can appear when we change mode or another user changes the mode.
21+
22+
```json
23+
{ "4R068BXXXXXXX": { "activeModes": ["mode1"],
24+
"activeSchedules": [],
25+
"timestamp": 1568142116238},
26+
"resource": "activeAutomations"}
27+
```
28+
29+
## Packet type #3
30+
These packets are updates from individual devices, they normally indicate some
31+
sort of activity we are interested in; motion or sound or a temperature change.
32+
33+
```json
34+
{ "action": "is",
35+
"from": "XXXXXXXXXXXXX",
36+
"properties": {"motionDetected": "True"},
37+
"resource": "cameras/XXXXXXXXXXXXX",
38+
"transId": "XXXXXXXXXXXXX!c87fdfa6!1675735611287"}
39+
```
40+
41+
## Packet type #4
42+
These packets are returned from base stations to describe themselves and their
43+
child devices' states. We will periodically ask for this information to keep
44+
our device information up to do.
45+
46+
```json
47+
{ "action": "is",
48+
"devices": { "XXXXXXXXXXXXX": { "properties": { "activityState": "idle",
49+
"alsReading": 32,
50+
"alsSensitivity": 15,
51+
"armed": "True",
52+
"batteryLevel": 45,
53+
"batteryTech": "Rechargeable",
54+
"brightness": 0,
55+
"chargeNotificationLedEnable": "False",
56+
"chargerTech": "None",
57+
"chargingState": "Off",
58+
"colorMode": "single",
59+
"connectionState": "available",
60+
"duration": 300,
61+
"flash": "off",
62+
"hwVersion": "AL1101r3",
63+
"interfaceVersion": 2,
64+
"lampState": "off",
65+
"modelId": "AL1101",
66+
"motionDetected": "False",
67+
"motionSetupModeEnabled": "False",
68+
"motionSetupModeSensitivity": 80,
69+
"multi": { "color1": "0xFF0008",
70+
"color2": "0x23FF02",
71+
"color3": "0x2100FF",
72+
"cycle": 2},
73+
"name": "",
74+
"pattern": "flood",
75+
"sensitivity": 80,
76+
"serialNumber": "XXXXXXXXXXXXX",
77+
"signalStrength": 0,
78+
"single": "0xFFDEAD",
79+
"sleepTime": 0,
80+
"sleepTimeRel": 0,
81+
"swVersion": "3.2.51",
82+
"updateAvailable": "None"},
83+
"states": { "motionStart": { "enabled": "True",
84+
"external": {},
85+
"lightOn": { "brightness": 255,
86+
"colorMode": "white",
87+
"duration": 30,
88+
"enabled": "True",
89+
"flash": "off",
90+
"pattern": "flood"},
91+
"pushNotification": { "enabled": "False"},
92+
"sendEmail": { "enabled": "False",
93+
"recipients": [ ]},
94+
"sensitivity": 80},
95+
"schemaVersion": 1}},
96+
"XXXXXXXXXXXXYY": { "properties": { "antiFlicker": { "autoDefault": 1,
97+
"mode": 0},
98+
"apiVersion": 1,
99+
"autoUpdateEnabled": "True",
100+
"capabilities": ["bridge"],
101+
"claimed": "True",
102+
"connectivity": [ { "connected": "True",
103+
"ipAddr": "192.168.1.179",
104+
"signalStrength": 4,
105+
"ssid": "sprinterland",
106+
"type": "wifi"}],
107+
"hwVersion": "ABB1000r1.0",
108+
"interfaceVersion": 2,
109+
"mcsEnabled": "True",
110+
"modelId": "ABB1000",
111+
"olsonTimeZone": "America/New_York",
112+
"state": "idle",
113+
"swVersion": "2.0.1.0_278_341",
114+
"timeSyncState": "synchronized",
115+
"timeZone": "EST5EDT,M3.2.0,M11.1.0",
116+
"updateAvailable": "None"},
117+
"states": {}}},
118+
"from": "XXXXXXXXXXXXX",
119+
"resource": "devices",
120+
"to": "XXXXXXXXXXXXX24993_web",
121+
"transId": "web!c989b294-b117-4e5e-8647-bb039d9ff8d6"}
122+
```
123+

pyaarlo.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#!/usr/bin/env python
1+
#!/usr/bin/env python3
22

33
from pyaarlo.main import main_func
44

0 commit comments

Comments
 (0)