simo 2.5.41__py3-none-any.whl → 2.6.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of simo might be problematic. Click here for more details.
- simo/__pycache__/settings.cpython-38.pyc +0 -0
- simo/automation/__pycache__/__init__.cpython-38.pyc +0 -0
- simo/automation/__pycache__/app_widgets.cpython-38.pyc +0 -0
- simo/automation/__pycache__/controllers.cpython-38.pyc +0 -0
- simo/automation/__pycache__/forms.cpython-38.pyc +0 -0
- simo/automation/__pycache__/gateways.cpython-38.pyc +0 -0
- simo/automation/__pycache__/helpers.cpython-38.pyc +0 -0
- simo/{generic/scripting → automation}/__pycache__/serializers.cpython-38.pyc +0 -0
- simo/{generic/scripting/__pycache__/__init__.cpython-38.pyc → automation/__pycache__/state.cpython-38.pyc} +0 -0
- simo/automation/app_widgets.py +8 -0
- simo/automation/controllers.py +273 -0
- simo/automation/forms.py +290 -0
- simo/automation/gateways.py +257 -0
- simo/automation/migrations/0001_initial.py +39 -0
- simo/automation/migrations/0002_update_helpers_in_scripts.py +29 -0
- simo/automation/migrations/__init__.py +0 -0
- simo/automation/migrations/__pycache__/0001_initial.cpython-38.pyc +0 -0
- simo/automation/migrations/__pycache__/0002_update_helpers_in_scripts.cpython-38.pyc +0 -0
- simo/automation/migrations/__pycache__/__init__.cpython-38.pyc +0 -0
- simo/automation/templates/automations/auto_away.py +55 -0
- simo/automation/templates/automations/auto_state_script.py +31 -0
- simo/{core/templates/core/auto_night_day_script.py → automation/templates/automations/phones_sleep_script.py} +25 -13
- simo/core/__pycache__/admin.cpython-38.pyc +0 -0
- simo/core/__pycache__/api.cpython-38.pyc +0 -0
- simo/core/__pycache__/filters.cpython-38.pyc +0 -0
- simo/core/__pycache__/models.cpython-38.pyc +0 -0
- simo/core/__pycache__/signal_receivers.cpython-38.pyc +0 -0
- simo/core/__pycache__/tasks.cpython-38.pyc +0 -0
- simo/core/admin.py +7 -4
- simo/core/api.py +8 -1
- simo/core/filters.py +61 -0
- simo/core/management/_hub_template/hub/supervisor.conf +0 -1
- simo/core/signal_receivers.py +50 -17
- simo/core/utils/__pycache__/type_constants.cpython-38.pyc +0 -0
- simo/core/utils/type_constants.py +1 -1
- simo/fleet/__pycache__/api.cpython-38.pyc +0 -0
- simo/fleet/__pycache__/controllers.cpython-38.pyc +0 -0
- simo/fleet/__pycache__/forms.cpython-38.pyc +0 -0
- simo/fleet/__pycache__/serializers.cpython-38.pyc +0 -0
- simo/fleet/api.py +6 -0
- simo/fleet/controllers.py +1 -0
- simo/fleet/forms.py +22 -3
- simo/fleet/serializers.py +9 -1
- simo/generic/__pycache__/app_widgets.cpython-38.pyc +0 -0
- simo/generic/__pycache__/controllers.cpython-38.pyc +0 -0
- simo/generic/__pycache__/forms.cpython-38.pyc +0 -0
- simo/generic/__pycache__/gateways.cpython-38.pyc +0 -0
- simo/generic/app_widgets.py +0 -6
- simo/generic/controllers.py +4 -260
- simo/generic/forms.py +2 -269
- simo/generic/gateways.py +4 -193
- simo/generic/migrations/0002_auto_20241126_0726.py +34 -0
- simo/generic/migrations/__pycache__/0002_auto_20241126_0726.cpython-38.pyc +0 -0
- simo/notifications/__pycache__/api.cpython-38.pyc +0 -0
- simo/notifications/api.py +1 -1
- simo/settings.py +1 -0
- simo/users/__pycache__/api.cpython-38.pyc +0 -0
- simo/users/api.py +1 -2
- {simo-2.5.41.dist-info → simo-2.6.2.dist-info}/METADATA +1 -1
- {simo-2.5.41.dist-info → simo-2.6.2.dist-info}/RECORD +69 -51
- simo/core/templates/core/auto_state_script.py +0 -78
- simo/generic/scripting/__pycache__/helpers.cpython-38.pyc +0 -0
- /simo/{generic/scripting/example.py → automation/__init__.py} +0 -0
- /simo/{generic/scripting → automation}/helpers.py +0 -0
- /simo/{generic/scripting → automation}/serializers.py +0 -0
- /simo/{generic/scripting/__init__.py → automation/state.py} +0 -0
- /simo/{generic → automation}/templates/admin/controller_widgets/script.html +0 -0
- {simo-2.5.41.dist-info → simo-2.6.2.dist-info}/LICENSE.md +0 -0
- {simo-2.5.41.dist-info → simo-2.6.2.dist-info}/WHEEL +0 -0
- {simo-2.5.41.dist-info → simo-2.6.2.dist-info}/entry_points.txt +0 -0
- {simo-2.5.41.dist-info → simo-2.6.2.dist-info}/top_level.txt +0 -0
|
@@ -2,15 +2,41 @@ simo/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
|
2
2
|
simo/asgi.py,sha256=L8CUVZLM32IMzWDZ4IShdDN-m69t7oxAUeHods4-xNM,822
|
|
3
3
|
simo/celeryc.py,sha256=eab7_e9rw0c__DCeoUFUh_tjAGVlulxVrk75BaJf57Q,1512
|
|
4
4
|
simo/conf.py,sha256=H2BhXAV8MEDVXF8AbkaLSfR4ULd-9_bS4bnhE5sE5fg,112
|
|
5
|
-
simo/settings.py,sha256=
|
|
5
|
+
simo/settings.py,sha256=CjHxwQvyljm0qVOCHvi6gdMweDzEqAedXTmGMJ6rE1A,7009
|
|
6
6
|
simo/urls.py,sha256=fRmAsNQ_pzFloimLmxNeDcR6hHRJ3rOoZ3kGy8zOQ_A,2402
|
|
7
7
|
simo/__pycache__/__init__.cpython-38.pyc,sha256=j81de0BqHMr6bs0C7cuYrXl7HwtK_vv8hDEtAdSwDJc,153
|
|
8
8
|
simo/__pycache__/asgi.cpython-38.pyc,sha256=5W_YSKOIrRd6NQQuJDuA3Yuj688GzirXVVOyLe8wJIQ,845
|
|
9
9
|
simo/__pycache__/celeryc.cpython-38.pyc,sha256=eSRoaKwfYlxVaxAiwqpQ2ndEcx7W-VpZtbxRFSV8UYg,1653
|
|
10
10
|
simo/__pycache__/conf.cpython-38.pyc,sha256=MYP2yk3ULxiYwZsZR6tCLjKnU-z03A3avzQzIn66y3k,273
|
|
11
|
-
simo/__pycache__/settings.cpython-38.pyc,sha256=
|
|
11
|
+
simo/__pycache__/settings.cpython-38.pyc,sha256=Grz4Vv3nIjPYHWL7mzOBC3KMVB5Cf73cRVmjNBdTCAk,6149
|
|
12
12
|
simo/__pycache__/urls.cpython-38.pyc,sha256=u0x6EqT8S1YfDOSPgbI8Kf-RDlveY9OV-EDXMYKAQ7w,2125
|
|
13
13
|
simo/__pycache__/wsgi.cpython-38.pyc,sha256=TpRxO7VM_ql31hbKphVdanydC5RI1nHB4l0QA2pdWxo,322
|
|
14
|
+
simo/automation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
15
|
+
simo/automation/app_widgets.py,sha256=gaqImMZjuMHm7nIb9a4D-Y3qipz_WhSPAHXcwGx4Uzs,199
|
|
16
|
+
simo/automation/controllers.py,sha256=gIkEOqq7IJ3BoDF40mN2aTGE8_yVwhQrO0RZlJYiYfg,9451
|
|
17
|
+
simo/automation/forms.py,sha256=tom_z2CRRsjro2aq3ypjybYWfzPa-uVIJxxS5fRP8n0,10650
|
|
18
|
+
simo/automation/gateways.py,sha256=1ByxQZPDARU006b30ua6unSbp25bcbyw1ETzQXWhrbU,9349
|
|
19
|
+
simo/automation/helpers.py,sha256=iP-fxxB8HsFQy3k2CjFubu86aMqvWgmh-p24DiyOrek,4330
|
|
20
|
+
simo/automation/serializers.py,sha256=PjyFrjdPK1mBsgbNhyqMi9SWzcymqTa742ipy0LhAN4,1996
|
|
21
|
+
simo/automation/state.py,sha256=aZZvNBae7unnux_zGHCIWCV2z47hVJc-DIL72Hqfkeo,600
|
|
22
|
+
simo/automation/__pycache__/__init__.cpython-38.pyc,sha256=YmP0xAD-mxpQHgdTZeC64sXChA8TriMZD1jckNYi3xg,164
|
|
23
|
+
simo/automation/__pycache__/app_widgets.cpython-38.pyc,sha256=7DfUA9V_1MiwrOe_ta-ts8dYY8xXb9UMg2_9A3XoRcs,523
|
|
24
|
+
simo/automation/__pycache__/controllers.cpython-38.pyc,sha256=JUQ105NN-9Si1pyCkqn4P_4yQ9NG7OnQfSRBzBaeth4,7535
|
|
25
|
+
simo/automation/__pycache__/forms.cpython-38.pyc,sha256=zdNJhSZp4PXaQQgvbwO_10CaolhW5WxQOCVfQkH2N04,8131
|
|
26
|
+
simo/automation/__pycache__/gateways.cpython-38.pyc,sha256=UhLcKI2kasoVnGCoe0M0-giBIVkWWuySMjKTgX2FdOs,7502
|
|
27
|
+
simo/automation/__pycache__/helpers.cpython-38.pyc,sha256=4VSSarOFnUk_KExWwvDlx5dEhv8aHUCHMZDtGG--pUY,3627
|
|
28
|
+
simo/automation/__pycache__/serializers.cpython-38.pyc,sha256=gWgcuPE8aY-TmuRLXCuSR74mvtKerpZ04m0MfPfw0AI,3405
|
|
29
|
+
simo/automation/__pycache__/state.cpython-38.pyc,sha256=TO2IM6h2hbGVlOUcoMwHkDUF4V-54d_KVhcebMgNtCk,784
|
|
30
|
+
simo/automation/migrations/0001_initial.py,sha256=VB6WIK1RlUdtqlWYCEhtnVE24odp2dfUvOVcxUZPpQ4,990
|
|
31
|
+
simo/automation/migrations/0002_update_helpers_in_scripts.py,sha256=GHtc8ibfURDVoWHw17UxaaA0sEy4tIklIjP6GEMLjhs,714
|
|
32
|
+
simo/automation/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
33
|
+
simo/automation/migrations/__pycache__/0001_initial.cpython-38.pyc,sha256=yg99vGnCZDvtwafE86sK_Z4PQvWrP040yhl5FG6mA3o,1204
|
|
34
|
+
simo/automation/migrations/__pycache__/0002_update_helpers_in_scripts.cpython-38.pyc,sha256=O-e7CnihMInCHHBBBE6L28LeryhTECLAKQaeu2cFO5g,1039
|
|
35
|
+
simo/automation/migrations/__pycache__/__init__.cpython-38.pyc,sha256=L2WU6Wk1EXhqcOKUNA9o--Z4G0aTQqwvRhKYxuUooAM,175
|
|
36
|
+
simo/automation/templates/admin/controller_widgets/script.html,sha256=biUEMo5V35wqSrM97d5WqNDi47GNaDpi53I3YBfDLOs,1484
|
|
37
|
+
simo/automation/templates/automations/auto_away.py,sha256=Vd8zixKvF4-ESn02X3fmK0FJIAQUoKEIl9ECdmxof3w,1802
|
|
38
|
+
simo/automation/templates/automations/auto_state_script.py,sha256=pEaeKNss7L-PnhlMUpEfNRqCjquq6FAGrjTZ92CMxUY,1001
|
|
39
|
+
simo/automation/templates/automations/phones_sleep_script.py,sha256=b6JZkfXdhDd3FwDJWq93kxBsm80kNzMGPWAF5jcWTHo,2894
|
|
14
40
|
simo/backups/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
15
41
|
simo/backups/admin.py,sha256=cEakxnQlOHvUf8LdBdekXpDAvnqPoVN8y7pnN3WK29A,2487
|
|
16
42
|
simo/backups/dynamic_settings.py,sha256=Q52RLa3UQsmAhqkwR16cM6pbBnIbXqmVQ2oIUP2ZVD0,416
|
|
@@ -32,8 +58,8 @@ simo/backups/migrations/__pycache__/0003_alter_backuplog_options_alter_backup_si
|
|
|
32
58
|
simo/backups/migrations/__pycache__/0004_alter_backup_options_alter_backuplog_options_and_more.cpython-38.pyc,sha256=f4leTBkOB2kraQYyCkz9B_2pb6aKn7srV2unQA5HV1Q,710
|
|
33
59
|
simo/backups/migrations/__pycache__/__init__.cpython-38.pyc,sha256=Lz1fs6V05h2AoxTOLNye0do9bEMnyuaXB_hHOjG5-HU,172
|
|
34
60
|
simo/core/__init__.py,sha256=_s2TjJfQImsMrTIxqLAx9AZie1Ojmm6sCHASdl3WLGU,50
|
|
35
|
-
simo/core/admin.py,sha256=
|
|
36
|
-
simo/core/api.py,sha256=
|
|
61
|
+
simo/core/admin.py,sha256=nmFDO57D5hXHDfl0wjJ9J5jBxyCqW4Gp_uqHhpS2uuw,18564
|
|
62
|
+
simo/core/api.py,sha256=HWyzmFGbULndSaW3sdrQa_kw2zfjd7yzfYxErAij7cY,29070
|
|
37
63
|
simo/core/api_auth.py,sha256=vCxvczA8aWNcW0VyKs5WlC_ytlqeGP_H_hkKUNVkCwM,1247
|
|
38
64
|
simo/core/api_meta.py,sha256=EaiY-dCADP__9MvLpoHvhjytFT92IrxPZDv95xgqasU,4955
|
|
39
65
|
simo/core/app_widgets.py,sha256=VxZzapuc-a29wBH7JzpvNF2SK1ECrgNUySId5ke1ffc,2509
|
|
@@ -45,7 +71,7 @@ simo/core/context.py,sha256=LKw1I4iIRnlnzoTCuSLLqDX7crHdBnMo3hjqYvVmzFc,1557
|
|
|
45
71
|
simo/core/controllers.py,sha256=vAZwtwPb259Bw-3dPSXuDxIcErMnQ6YBpBaUh4HWghM,35656
|
|
46
72
|
simo/core/dynamic_settings.py,sha256=bUs58XEZOCIEhg1TigR3LmYggli13KMryBZ9pC7ugAQ,1872
|
|
47
73
|
simo/core/events.py,sha256=1_KIk5pJqdLPRQlCQ9xSyALst2Cn0b2lAEAJ3QjwIjE,4801
|
|
48
|
-
simo/core/filters.py,sha256=
|
|
74
|
+
simo/core/filters.py,sha256=6wbn8C2WvKTTjtfMwwLBp2Fib1V0-DMpS4iqJd6jJQo,2540
|
|
49
75
|
simo/core/form_fields.py,sha256=wowWocYgxkKBr0WYzpKn4UvH4ScnImus56Tg2G8OPBc,2274
|
|
50
76
|
simo/core/forms.py,sha256=CCKypzX32-Mp8LpyO0ffiPcwIitaw0F03e8A9ZL0Mhw,21586
|
|
51
77
|
simo/core/gateways.py,sha256=m0eS3XjVe34Dge6xtoCq16kFWCKJcdQrT0JW0REqoq8,3715
|
|
@@ -56,7 +82,7 @@ simo/core/models.py,sha256=QNVTnWeHAW6LVrs3eaR7WNMhwjICuQpXZ8vyH_2qCBo,22834
|
|
|
56
82
|
simo/core/permissions.py,sha256=2YNRot2qoHjHKWPGOpO4PBseecctPbTlUQpepnFkCRs,3027
|
|
57
83
|
simo/core/routing.py,sha256=X1_IHxyA-_Q7hw1udDoviVP4_FSBDl8GYETTC2zWTbY,499
|
|
58
84
|
simo/core/serializers.py,sha256=NgqZhBjY0or6dfN-N_EaaygR_EUoUBryuK1DbD4R3Fg,21810
|
|
59
|
-
simo/core/signal_receivers.py,sha256=
|
|
85
|
+
simo/core/signal_receivers.py,sha256=xUnQrWFBMF0Uasj6PzpERPr6h6BR-ZjUb1NSakRSzQo,9458
|
|
60
86
|
simo/core/socket_consumers.py,sha256=trRZvBGTJ7xIbfdmVvn7zoiWp_qssSkMZykDrI5YQyE,9783
|
|
61
87
|
simo/core/storage.py,sha256=_5igjaoWZAiExGWFEJMElxUw55DzJG1jqFty33xe8BE,342
|
|
62
88
|
simo/core/tasks.py,sha256=ridh-22XWY3v9DCWrGYaXrOM0w4XOebkjkkZT9NtnP4,16911
|
|
@@ -65,8 +91,8 @@ simo/core/types.py,sha256=WJEq48mIbFi_5Alt4wxWMGXxNxUTXqfQU5koH7wqHHI,1108
|
|
|
65
91
|
simo/core/views.py,sha256=yx9I0byeVUa-LAOnklpWIYwpNNOf5m9fyjKBvj4YCh4,2475
|
|
66
92
|
simo/core/widgets.py,sha256=J9e06C6I22F6xKic3VMgG7WeX07glAcl-4bF2Mg180A,2827
|
|
67
93
|
simo/core/__pycache__/__init__.cpython-38.pyc,sha256=ZJFM_XN0RmJMULQulgA_wFiOnEtsMoedcOWnXjH-Y8o,208
|
|
68
|
-
simo/core/__pycache__/admin.cpython-38.pyc,sha256=
|
|
69
|
-
simo/core/__pycache__/api.cpython-38.pyc,sha256=
|
|
94
|
+
simo/core/__pycache__/admin.cpython-38.pyc,sha256=WAfdq_hAdkW-_QwJ0E7NSd25yxnPRi_HjJ-uKFMJzcg,14146
|
|
95
|
+
simo/core/__pycache__/api.cpython-38.pyc,sha256=0kALbhViLcVqxcxzc_mmT9TzZcONc0ZNzZCWscbxjWE,22459
|
|
70
96
|
simo/core/__pycache__/api_auth.cpython-38.pyc,sha256=mi3mu5qEKio_PvfQEvr3Q6AhdPLAHxzxAxrMbAz_pKU,1712
|
|
71
97
|
simo/core/__pycache__/api_meta.cpython-38.pyc,sha256=VYx5ZeDyNBI4B_CBEIhV5B3GnLsMOx9s3rNZTSMODco,3703
|
|
72
98
|
simo/core/__pycache__/app_widgets.cpython-38.pyc,sha256=oN657XMMZ6GYN9nblv7fX3kdnTEzSP9XV6PXM6Z0wl4,4358
|
|
@@ -78,21 +104,21 @@ simo/core/__pycache__/context.cpython-38.pyc,sha256=NlTHt2GvXxA21AhBkeyOLfRFUuXw
|
|
|
78
104
|
simo/core/__pycache__/controllers.cpython-38.pyc,sha256=Lt9JDheLB3qgaZZ9NACAEeg43IY9XxZHN3Y0c5JavMo,30710
|
|
79
105
|
simo/core/__pycache__/dynamic_settings.cpython-38.pyc,sha256=wGpnscX1DxFpRl54MQURhjz2aD3NJohSzw9JCFnzh2Y,2384
|
|
80
106
|
simo/core/__pycache__/events.cpython-38.pyc,sha256=1y8YaZsiDkBOeIWzH7SQz4holmMG_RLlMWi8kuSZcoE,5280
|
|
81
|
-
simo/core/__pycache__/filters.cpython-38.pyc,sha256=
|
|
107
|
+
simo/core/__pycache__/filters.cpython-38.pyc,sha256=WBBDwcDQwOmgbrRhyUxenSN80rU4Eq9jQ6RcrRGCP_o,2440
|
|
82
108
|
simo/core/__pycache__/form_fields.cpython-38.pyc,sha256=phMdhDFRmaFDhJSnasAg8VKNP6PxkPjFqkLwEuWicIs,3465
|
|
83
109
|
simo/core/__pycache__/forms.cpython-38.pyc,sha256=9ogrGIBTmPWXUD3qgICo2oA-pBlgO2Bqg9hRv_-IUdE,17571
|
|
84
110
|
simo/core/__pycache__/gateways.cpython-38.pyc,sha256=D1ooHL-iSpQrxnD8uAl4xWFJmm-QWZfbkLiLlFOMtdU,4553
|
|
85
111
|
simo/core/__pycache__/loggers.cpython-38.pyc,sha256=Z-cdQnC6XlIonPV4Sl4E52tP4NMEdPAiHK0cFaIL7I8,1623
|
|
86
112
|
simo/core/__pycache__/managers.cpython-38.pyc,sha256=6RTIxyjOgpQGtAqcUyE2vFPS09w1V5Wmd_vOV7rHRRI,3370
|
|
87
113
|
simo/core/__pycache__/middleware.cpython-38.pyc,sha256=g3d4L2PwxFyRKIPMP9Hkdjk1PL9NarQd4hSHS55I8n8,2649
|
|
88
|
-
simo/core/__pycache__/models.cpython-38.pyc,sha256=
|
|
114
|
+
simo/core/__pycache__/models.cpython-38.pyc,sha256=po4B4bMyA-KDBu8qbVwGjrpUZJQPVBB6dkfncEBKYnM,18554
|
|
89
115
|
simo/core/__pycache__/permissions.cpython-38.pyc,sha256=UdtxCTXPEbe99vgZOfRz9wfKSYvUn9hSRbpIV9CJSyI,2988
|
|
90
116
|
simo/core/__pycache__/routing.cpython-38.pyc,sha256=3T3FPJ8Cn99xZCGvMyg2xjl7al-Shm9CelbSpkJtNP8,599
|
|
91
117
|
simo/core/__pycache__/serializers.cpython-38.pyc,sha256=QvlVp7m13i3Vn1FOmjV-y_IpLfmcSIy74jhb66ecJbo,19403
|
|
92
|
-
simo/core/__pycache__/signal_receivers.cpython-38.pyc,sha256=
|
|
118
|
+
simo/core/__pycache__/signal_receivers.cpython-38.pyc,sha256=h0AsNC33oLoADJlwUVfPB1suUYovfzjfc0SE41-3MjY,6778
|
|
93
119
|
simo/core/__pycache__/socket_consumers.cpython-38.pyc,sha256=KqbO1cOewodVPcy0-htVefyUjCuELKV0o7fOfYqfgPc,8490
|
|
94
120
|
simo/core/__pycache__/storage.cpython-38.pyc,sha256=9R1Xu0FJDflfRXUPsqEgt0SpwiP7FGk7HaR8s8XRyI8,721
|
|
95
|
-
simo/core/__pycache__/tasks.cpython-38.pyc,sha256=
|
|
121
|
+
simo/core/__pycache__/tasks.cpython-38.pyc,sha256=GFIC8IsQ_bK4rgNRl_oGbMCQHhbcgGS7dx-rjPcLy08,11220
|
|
96
122
|
simo/core/__pycache__/todos.cpython-38.pyc,sha256=lOqGZ58siHM3isoJV4r7sg8igrfE9fFd-jSfeBa0AQI,253
|
|
97
123
|
simo/core/__pycache__/views.cpython-38.pyc,sha256=IRjbX3MwKkAb10sMIJ3esKZH8W-tHwnuzm-mLIT_NWc,2584
|
|
98
124
|
simo/core/__pycache__/widgets.cpython-38.pyc,sha256=sR0ZeHCHrhnNDBJuRrxp3zUsfBp0xrtF0xrK2TkQv1o,3520
|
|
@@ -153,7 +179,7 @@ simo/core/management/_hub_template/hub/celeryc.py,sha256=3ksDXftIZKJ4Cq9WNKJERdZ
|
|
|
153
179
|
simo/core/management/_hub_template/hub/manage.py,sha256=PNNlw3EVeIJDgkG0l-klqoxsKWfTYWG9jzRG0upmAaI,620
|
|
154
180
|
simo/core/management/_hub_template/hub/nginx.conf,sha256=40hvXL42MeiqqkLURNcDQsRudv1dNFLJnvb2-Y3RCkk,2394
|
|
155
181
|
simo/core/management/_hub_template/hub/settings.py,sha256=4QhvhbtLRxHvAntwqG_qeAAtpDUqKvN4jzw9u3vqff8,361
|
|
156
|
-
simo/core/management/_hub_template/hub/supervisor.conf,sha256
|
|
182
|
+
simo/core/management/_hub_template/hub/supervisor.conf,sha256=-xFtt7cVyY-SCZ_6Z4yI1-1LNtd0f0EAM9zB5VbY9i8,2362
|
|
157
183
|
simo/core/management/_hub_template/hub/urls.py,sha256=Ydm-1BkYAzWeEF-MKSDIFf-7aE4qNLPm48-SA51XgJQ,25
|
|
158
184
|
simo/core/management/_hub_template/hub/wsgi.py,sha256=Lo-huLHnMDTxSmMBOodVFMWBls9poddrV2KRzXU0xGo,280
|
|
159
185
|
simo/core/management/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -10172,8 +10198,6 @@ simo/core/templates/admin/users/qr_code.html,sha256=kE4WNSVsPUvNUFnSUAY8jiD9JCvc
|
|
|
10172
10198
|
simo/core/templates/admin/wizard/discovery.html,sha256=xpAiXgKneT0d53c7h1MyAjoOFdXc_lDaH9TdelrggVU,6608
|
|
10173
10199
|
simo/core/templates/admin/wizard/field.html,sha256=ZbgzAUMs6RdJDH44yQ3-rmAkPmBdsIvBTk1RAQaENAs,413
|
|
10174
10200
|
simo/core/templates/admin/wizard/wizard_add.html,sha256=RPkwKXctu_yxJxjJqcvVEzG4YtK9-CJK801RPxleWRE,4127
|
|
10175
|
-
simo/core/templates/core/auto_night_day_script.py,sha256=6dnoU4UsjgdiEaD3hIPMovBRhI4p1aCAKL8ca_D-3zQ,2349
|
|
10176
|
-
simo/core/templates/core/auto_state_script.py,sha256=_UhSTpeCnv1oOzRzdOI9EXGdaSYevBolWChCKfPPZ6w,2666
|
|
10177
10201
|
simo/core/templates/core/icon_acutocomplete_select_item.html,sha256=D7aWefAJjrDqyMcwt4vtuwkruklJ1aSjCTi99HLrQUY,768
|
|
10178
10202
|
simo/core/templates/core/object_acutocomplete_select_item.html,sha256=pS8APlv1IdhfttONh3npzQNfrOhj63YC7837tnOfSHk,465
|
|
10179
10203
|
simo/core/templates/core/openvpn_client.conf,sha256=z1838G8v8vmIiQKyfE8URCCMpLsges5jbX3hDJkztF4,249
|
|
@@ -10200,7 +10224,7 @@ simo/core/utils/model_helpers.py,sha256=3IzJeOvBoYdUJVXCJkY20npOZXPjNPAiEFvuT0OP
|
|
|
10200
10224
|
simo/core/utils/operations.py,sha256=W234NEetDnMWP7_tvxJq5CWo_rT6Xhe4Cw7n9-VOpyU,176
|
|
10201
10225
|
simo/core/utils/relay.py,sha256=i1xy_nPTgY5Xn0l2W4lNI3xeVUpDQTUUfV3M8h2DeBg,457
|
|
10202
10226
|
simo/core/utils/serialization.py,sha256=v0HLQ98r3zOlsf6dv6S4WxOEt6BzmFz2eTXa_iuKjSM,2057
|
|
10203
|
-
simo/core/utils/type_constants.py,sha256=
|
|
10227
|
+
simo/core/utils/type_constants.py,sha256=xyRvrOht6w0AQZVNYZZIzlM91nnJNN0rU4GBMyryaO0,4261
|
|
10204
10228
|
simo/core/utils/validators.py,sha256=FRO6_K5HAO1OaC-LosApZjh-W3EA-IJZ53HnwEJgqiI,1297
|
|
10205
10229
|
simo/core/utils/__pycache__/__init__.cpython-38.pyc,sha256=NJHPMizDKYRDEyMdQIh-ZRwT-BntwrvYfF450N2RYdI,164
|
|
10206
10230
|
simo/core/utils/__pycache__/admin.cpython-38.pyc,sha256=ER2IoAHAfOO3q0PfKBtS7647fM-gkEptJ_DpC8LlUeY,2473
|
|
@@ -10219,38 +10243,38 @@ simo/core/utils/__pycache__/model_helpers.cpython-38.pyc,sha256=QzO0rh1NuQePHDCS
|
|
|
10219
10243
|
simo/core/utils/__pycache__/operations.cpython-38.pyc,sha256=1BUP7gbpBgX7mwWLpkmRH0eXgisbjn-6TIa8VDPj6v8,381
|
|
10220
10244
|
simo/core/utils/__pycache__/relay.cpython-38.pyc,sha256=gs4iN9TWBo_JIW07emIggIcv6gHKuOY_4jfmAFhuL3k,697
|
|
10221
10245
|
simo/core/utils/__pycache__/serialization.cpython-38.pyc,sha256=9nTbzozDi8Avl6krHvAo67CLdiTrYW0ij3hQtucHty0,1338
|
|
10222
|
-
simo/core/utils/__pycache__/type_constants.cpython-38.pyc,sha256=
|
|
10246
|
+
simo/core/utils/__pycache__/type_constants.cpython-38.pyc,sha256=ERC5U7T5pThjLrstSO97sCNoJO7tofTbrSwoIEZBWLA,3441
|
|
10223
10247
|
simo/core/utils/__pycache__/validators.cpython-38.pyc,sha256=gjeBOjL_keMoRDjdn8v-3F3wcjPIT3Xx5KpTalo0e-Y,1247
|
|
10224
10248
|
simo/fleet/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10225
10249
|
simo/fleet/admin.py,sha256=3udiNaNoL37699SN-rQqjvvZ0lO2pi2zvg9SqZPp5R0,6403
|
|
10226
|
-
simo/fleet/api.py,sha256=
|
|
10250
|
+
simo/fleet/api.py,sha256=rJwAYJvp0uslW7O6Q4XOpOa8hfCdy3keUD7b3UNL43E,3424
|
|
10227
10251
|
simo/fleet/auto_urls.py,sha256=UX66eR2ykMqFgfIllW-RTdjup5-FieCWl_BVm3CcXKg,702
|
|
10228
10252
|
simo/fleet/base_types.py,sha256=wL9RVkHr0gA7HI1wZq0pruGEIgvQqpfnCL4cC3ywsvw,102
|
|
10229
10253
|
simo/fleet/ble.py,sha256=eHA_9ABjbmH1vUVCv9hiPXQL2GZZSEVwfO0xyI1S0nI,1081
|
|
10230
|
-
simo/fleet/controllers.py,sha256=
|
|
10231
|
-
simo/fleet/forms.py,sha256=
|
|
10254
|
+
simo/fleet/controllers.py,sha256=w2Zf-hFXyaaekoHbar7pIfE0iGN0S__79rANFm23hW8,29157
|
|
10255
|
+
simo/fleet/forms.py,sha256=S0OsfQ6VOm6lox2gSTKjRrIH0mlPcsAUhaplm6Wsiuw,64772
|
|
10232
10256
|
simo/fleet/gateways.py,sha256=lKEJW0MgaOEiNnijH50DNSVChvaUT3TA3UurcI57P8k,5677
|
|
10233
10257
|
simo/fleet/managers.py,sha256=ZNeHFSkF5kzsl9E1DCBevOW6kXJlD6kw0LU4B-JMOG8,828
|
|
10234
10258
|
simo/fleet/models.py,sha256=zPplx_v64nfKBmb-nCb74aCVtEeY3m3SjEy-VhbnydU,17511
|
|
10235
10259
|
simo/fleet/routing.py,sha256=cofGsVWXMfPDwsJ6HM88xxtRxHwERhJ48Xyxc8mxg5o,149
|
|
10236
|
-
simo/fleet/serializers.py,sha256=
|
|
10260
|
+
simo/fleet/serializers.py,sha256=PQnjp7LaEpMts-om2OPV5XOU9ut6KFWiePPDCXK0M98,2679
|
|
10237
10261
|
simo/fleet/socket_consumers.py,sha256=4hVSvFNq9Hi44R7JmaujFoEtgmH5YBST2cFYtIiMDRA,18840
|
|
10238
10262
|
simo/fleet/tasks.py,sha256=NX_opj-rbkK9eeQMeRNwHj_ZJ0LC4rYOZovMg9_r0kA,904
|
|
10239
10263
|
simo/fleet/utils.py,sha256=wNJvURzLP3-aho3D3rfg07N9kWCaMIw5gOsmeeO9Nlg,4740
|
|
10240
10264
|
simo/fleet/views.py,sha256=jT3GcGv_JEj3dqyfHH2whCnGqwT8YEAuFxRgIX4Dk9w,3237
|
|
10241
10265
|
simo/fleet/__pycache__/__init__.cpython-38.pyc,sha256=pIZE7EL6-cuJ3pQtaSwjKLrKLsTYelp1k9sRhXKLh6s,159
|
|
10242
10266
|
simo/fleet/__pycache__/admin.cpython-38.pyc,sha256=iweeu5AkaggBhQntP6-VF_eEodkNc6E7zKy0VjfwC2o,6652
|
|
10243
|
-
simo/fleet/__pycache__/api.cpython-38.pyc,sha256=
|
|
10267
|
+
simo/fleet/__pycache__/api.cpython-38.pyc,sha256=rZ1mkfkaMBEXhi9sw_jTKdk2CPJhBNxoImtjQ3Rf1VY,4016
|
|
10244
10268
|
simo/fleet/__pycache__/auto_urls.cpython-38.pyc,sha256=Tc6a6BCXHjijP8U2jE2ghlJwnSNrGm59-hW5t-80wF0,689
|
|
10245
10269
|
simo/fleet/__pycache__/base_types.cpython-38.pyc,sha256=deyPwjpT6xZiFxBGFnj5b7R-lbdOTh2krgpJhrcGVhc,274
|
|
10246
10270
|
simo/fleet/__pycache__/ble.cpython-38.pyc,sha256=Nrof9w7cm4OlpFWHeVnmvvanh2_oF9oQ3TknJiV93-0,1267
|
|
10247
|
-
simo/fleet/__pycache__/controllers.cpython-38.pyc,sha256=
|
|
10248
|
-
simo/fleet/__pycache__/forms.cpython-38.pyc,sha256=
|
|
10271
|
+
simo/fleet/__pycache__/controllers.cpython-38.pyc,sha256=jpXIYOPPQyumLwiO-PbgB8L5WYKkvd5T5GlAFnBKHp8,24906
|
|
10272
|
+
simo/fleet/__pycache__/forms.cpython-38.pyc,sha256=yyRnT_AU1kCLo3ISyuXonzP8hoiu8SAvRxhu9WQPIoc,43550
|
|
10249
10273
|
simo/fleet/__pycache__/gateways.cpython-38.pyc,sha256=0RKVn0ndreVKhsrukqeLPSdMnRrsQ_W7yeVeBkRLfIk,5058
|
|
10250
10274
|
simo/fleet/__pycache__/managers.cpython-38.pyc,sha256=Vmm23zoQnS3-uS5_WJt2n3wtjhLiEhLWaYxXJCU6Gts,1339
|
|
10251
10275
|
simo/fleet/__pycache__/models.cpython-38.pyc,sha256=WUahZgETWlem5rVXlJ_vINFRM7OZWp5xpWXGMoeBXsM,14131
|
|
10252
10276
|
simo/fleet/__pycache__/routing.cpython-38.pyc,sha256=aPrCmxFKVyB8R8ZbJDwdPdFfvT7CvobovvZeq_mqRgY,314
|
|
10253
|
-
simo/fleet/__pycache__/serializers.cpython-38.pyc,sha256=
|
|
10277
|
+
simo/fleet/__pycache__/serializers.cpython-38.pyc,sha256=l_FzORWCM1hcSZV0AaGRO-p0CMTcEfqnLGgbn2IVvI0,3648
|
|
10254
10278
|
simo/fleet/__pycache__/socket_consumers.cpython-38.pyc,sha256=m8sJWln-uyjeTD-alyoNikEJcHCxZGTe2vXnMGVNZog,14170
|
|
10255
10279
|
simo/fleet/__pycache__/tasks.cpython-38.pyc,sha256=RoNxL2WUiW67s9O9DjaYVVjCBSZu2nje0Qn9FJkWVS0,1116
|
|
10256
10280
|
simo/fleet/__pycache__/utils.cpython-38.pyc,sha256=obUd-X2Y-ybx4icqUWq_qwIxrP9yyarJjexWAfO4MTI,3344
|
|
@@ -10344,34 +10368,29 @@ simo/fleet/migrations/__pycache__/__init__.cpython-38.pyc,sha256=5k1KW0jeSDzw6Rn
|
|
|
10344
10368
|
simo/fleet/templates/fleet/controllers_info/Button.md,sha256=GIuxqG617174NEtpPeCGVocxO4YMe7-CacgVSu_L5-E,739
|
|
10345
10369
|
simo/fleet/templates/fleet/controllers_info/ENS160AirQualitySensor.md,sha256=3LSTY9YPFuVPIbVsYCAifcotrXJcOXl2k774_vo6nAE,770
|
|
10346
10370
|
simo/generic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10347
|
-
simo/generic/app_widgets.py,sha256=
|
|
10371
|
+
simo/generic/app_widgets.py,sha256=y8W3jR76Hh26O9pPQyg2SophMbYIOtAWD33MPKbB8Mg,856
|
|
10348
10372
|
simo/generic/base_types.py,sha256=u3SlfpNYaCwkVBwomWgso4ODzL71ay9MhiAW-bxgnDU,341
|
|
10349
|
-
simo/generic/controllers.py,sha256=
|
|
10350
|
-
simo/generic/forms.py,sha256=
|
|
10351
|
-
simo/generic/gateways.py,sha256=
|
|
10373
|
+
simo/generic/controllers.py,sha256=9u6Z_69t1Pkfmbsepx4AOj3cJKrZhik2elVuZjuBYGA,41722
|
|
10374
|
+
simo/generic/forms.py,sha256=i1TDb8pvFBws2COlmLCH12dTY4MKElFlQoSu5pwdw_w,18967
|
|
10375
|
+
simo/generic/gateways.py,sha256=apT1PxvTiciOMhAQMfIMZJJCI9r1Ke-zgoUhclqDCcA,8790
|
|
10352
10376
|
simo/generic/models.py,sha256=Adq7ipWK-renxJlNW-SZnAq2oGEOwKx8EdUWaKnfcVQ,7597
|
|
10353
10377
|
simo/generic/routing.py,sha256=elQVZmgnPiieEuti4sJ7zITk1hlRxpgbotcutJJgC60,228
|
|
10354
10378
|
simo/generic/socket_consumers.py,sha256=K2OjphIhKJH48BvfFfoCOyCQZ1NmXb_phs6y1IP-qaQ,1757
|
|
10355
10379
|
simo/generic/__pycache__/__init__.cpython-38.pyc,sha256=mLu54WS9KIl-pHwVCBKpsDFIlOqml--JsOVzAUHg6cU,161
|
|
10356
|
-
simo/generic/__pycache__/app_widgets.cpython-38.pyc,sha256=
|
|
10380
|
+
simo/generic/__pycache__/app_widgets.cpython-38.pyc,sha256=D9b13pbMlirgHmjDnQhfLIDGSVINoSouHb4SWOeCRrs,1642
|
|
10357
10381
|
simo/generic/__pycache__/base_types.cpython-38.pyc,sha256=aV5NdIuvXR-ItKpI__MwcyPZHD6Z882TFdgYkPCkr1I,493
|
|
10358
|
-
simo/generic/__pycache__/controllers.cpython-38.pyc,sha256=
|
|
10359
|
-
simo/generic/__pycache__/forms.cpython-38.pyc,sha256=
|
|
10360
|
-
simo/generic/__pycache__/gateways.cpython-38.pyc,sha256=
|
|
10382
|
+
simo/generic/__pycache__/controllers.cpython-38.pyc,sha256=_JsNQrL8iR-SY3MlrGJqguoAYaDGg2KGL7IwA0jl3w4,27025
|
|
10383
|
+
simo/generic/__pycache__/forms.cpython-38.pyc,sha256=fm8tOkr4t0VUiwAOjibvRdh7FPPL2VNH2w78DZsMYW4,14380
|
|
10384
|
+
simo/generic/__pycache__/gateways.cpython-38.pyc,sha256=iTIYK_K-08-MFvz5qX1u5ITfXqopP9QkRnVdVHqE12M,7224
|
|
10361
10385
|
simo/generic/__pycache__/models.cpython-38.pyc,sha256=MZpum7syAFxuulf47K7gtUlJJ7xRD-IBUBAwUM1ZRnw,5825
|
|
10362
10386
|
simo/generic/__pycache__/routing.cpython-38.pyc,sha256=xtxTUTBTdivzFyA5Wh7k-hUj1WDO_FiRq6HYXdbr9Ks,382
|
|
10363
10387
|
simo/generic/__pycache__/socket_consumers.cpython-38.pyc,sha256=qJO5kvQLWhsQDOr1AtAtsAybuRWioxSkQei3Pc7rdP0,1737
|
|
10364
10388
|
simo/generic/migrations/0001_initial.py,sha256=7FpPcfpRU5ya0b8s2KbxR5a3npf92YruvZltUybjzys,676
|
|
10389
|
+
simo/generic/migrations/0002_auto_20241126_0726.py,sha256=SX38JwP732QooOm5HM1Xo7Th_Mv_6YZloT3eozULOhs,922
|
|
10365
10390
|
simo/generic/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10366
10391
|
simo/generic/migrations/__pycache__/0001_initial.cpython-38.pyc,sha256=xy_fN8vnebC_X8hArqHAOLYHLm3puD_stzJ-LvUOhgk,1009
|
|
10392
|
+
simo/generic/migrations/__pycache__/0002_auto_20241126_0726.cpython-38.pyc,sha256=vfPHUDBG6UlfdqsIi35ZcdQ0NfsSeawvTNzZ7YTKQd0,1130
|
|
10367
10393
|
simo/generic/migrations/__pycache__/__init__.cpython-38.pyc,sha256=nJV0NkIT8MuONj1hUX-V6aCU2lX3BXHyPjisapnBsPA,172
|
|
10368
|
-
simo/generic/scripting/__init__.py,sha256=aZZvNBae7unnux_zGHCIWCV2z47hVJc-DIL72Hqfkeo,600
|
|
10369
|
-
simo/generic/scripting/example.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10370
|
-
simo/generic/scripting/helpers.py,sha256=iP-fxxB8HsFQy3k2CjFubu86aMqvWgmh-p24DiyOrek,4330
|
|
10371
|
-
simo/generic/scripting/serializers.py,sha256=PjyFrjdPK1mBsgbNhyqMi9SWzcymqTa742ipy0LhAN4,1996
|
|
10372
|
-
simo/generic/scripting/__pycache__/__init__.cpython-38.pyc,sha256=eHncoNpv5dy35IO1_htWd8CK0sHFBnU_WJ0hl5TKOHQ,794
|
|
10373
|
-
simo/generic/scripting/__pycache__/helpers.cpython-38.pyc,sha256=34sa3L2cK1Aw636PCaoCYIWUBIE1h6XmbgDIto9cLeo,2757
|
|
10374
|
-
simo/generic/scripting/__pycache__/serializers.cpython-38.pyc,sha256=JD9KCNO27H18mkFaeSMdybTMdTvodqcZSLNbC3pheHU,3412
|
|
10375
10394
|
simo/generic/static/weather_icons/01d@2x.png,sha256=TZfWi6Rfddb2P-oldWWcjUiuCHiU9Yrc5hyrQAhF26I,948
|
|
10376
10395
|
simo/generic/static/weather_icons/01n@2x.png,sha256=e9RleTa0T7To9Wi2wJ-9waeTbfHOsUB_xGwkx-89eEg,945
|
|
10377
10396
|
simo/generic/static/weather_icons/02d@2x.png,sha256=ex522OxNzNNpSRGGzh7EmsBZi_MOFY-1IkQXTOMLL3I,1628
|
|
@@ -10393,7 +10412,6 @@ simo/generic/static/weather_icons/50n@2x.png,sha256=-WLnYCwLWwlJ0_RlJCI96iKQUD7u
|
|
|
10393
10412
|
simo/generic/templates/admin/controller_widgets/blinds.html,sha256=8nk8xFLw8vCahMaiDnjS9Zk2ZG_rESi6LrE0Tj7x_vs,1907
|
|
10394
10413
|
simo/generic/templates/admin/controller_widgets/gate.html,sha256=rqtgEQTmyK8Q66ohEP2VLPs6Ij9IZARFlYxPbAJoFGU,509
|
|
10395
10414
|
simo/generic/templates/admin/controller_widgets/ip_camera.html,sha256=ZmWm21EswkgT6XR9x1GgzDIkSU2j_GpdOTfbPINg6jY,657
|
|
10396
|
-
simo/generic/templates/admin/controller_widgets/script.html,sha256=biUEMo5V35wqSrM97d5WqNDi47GNaDpi53I3YBfDLOs,1484
|
|
10397
10415
|
simo/generic/templates/admin/controller_widgets/thermostat.html,sha256=iH7j631AY6ahsI7dTMyMYHL_EuX6Q_aRxQgQcPIVxvI,288
|
|
10398
10416
|
simo/generic/templates/admin/controller_widgets/weather.html,sha256=84SESQBhhzNUay8-6l8XtrC_GNZqI5HWJrgk0Mi6qbM,489
|
|
10399
10417
|
simo/generic/templates/generic/controllers_info/dummy.md,sha256=DcdkpYXpK7sroINukZZPUQs9uekN9kkE7p5hfnArgFo,147
|
|
@@ -10429,13 +10447,13 @@ simo/multimedia/migrations/__pycache__/0004_auto_20231023_1055.cpython-38.pyc,sh
|
|
|
10429
10447
|
simo/multimedia/migrations/__pycache__/__init__.cpython-38.pyc,sha256=mCgSiQBphL85imdWyTi9-4zBDYF6HfXbhB0ycSPVVuA,175
|
|
10430
10448
|
simo/notifications/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10431
10449
|
simo/notifications/admin.py,sha256=WQbN_bd2KRxVjbOajeworNrV9QlDNSadQT58La0Nn2M,1174
|
|
10432
|
-
simo/notifications/api.py,sha256=
|
|
10450
|
+
simo/notifications/api.py,sha256=qzM-P3kq_YQ8_wHS8EMIutRbTvtqOXczQbJFb7EgQ08,1773
|
|
10433
10451
|
simo/notifications/models.py,sha256=QGDLGAi5gk8OTcvd7ho5WNdctDymWGmGF1ZqN4-G_ZA,2443
|
|
10434
10452
|
simo/notifications/serializers.py,sha256=altDEAPWwOhxRcEzE9-34jL8EFpyf3vPoEdAPoVLfGc,523
|
|
10435
10453
|
simo/notifications/utils.py,sha256=uBl-Y7WGu00iaGM5rrdogcq0OMRVtyVfJF39-mdB3_k,1853
|
|
10436
10454
|
simo/notifications/__pycache__/__init__.cpython-38.pyc,sha256=YvucUfu98XFvEEg1LYFMlOZJpo_jSGxTVrM-ylAFLOg,167
|
|
10437
10455
|
simo/notifications/__pycache__/admin.cpython-38.pyc,sha256=MScNrtVM1wavefsPfxy0A7LVyXKcbvEkLH9GJkgNOl8,1945
|
|
10438
|
-
simo/notifications/__pycache__/api.cpython-38.pyc,sha256=
|
|
10456
|
+
simo/notifications/__pycache__/api.cpython-38.pyc,sha256=8dPiIMaFQlBFP01VwXbQ98udaZaqwibZJtz_Y2cXa8U,2073
|
|
10439
10457
|
simo/notifications/__pycache__/models.cpython-38.pyc,sha256=PoqLuOnlaAWQQ-20AtqhvAlLSkakPmdn7J7wGvHNW3g,2449
|
|
10440
10458
|
simo/notifications/__pycache__/serializers.cpython-38.pyc,sha256=7-eRGKYuQ4g1SpKOMpz17SIiu1HmaMoYv-cJbaO9QGA,1028
|
|
10441
10459
|
simo/notifications/__pycache__/utils.cpython-38.pyc,sha256=6Tq7VkW-pZLzWzcxPtBU9MDFZLO7iLY8-ygyefoJ5OQ,1529
|
|
@@ -10449,7 +10467,7 @@ simo/notifications/migrations/__pycache__/0003_alter_notification_instance.cpyth
|
|
|
10449
10467
|
simo/notifications/migrations/__pycache__/__init__.cpython-38.pyc,sha256=YMBRHVon2nWDtIUbghckjnC12sIg_ykPWhV5aM0tto4,178
|
|
10450
10468
|
simo/users/__init__.py,sha256=6a7uBpCWB_DR7p54rbHusc0xvi1qfT1ZCCQGb6TiBh8,52
|
|
10451
10469
|
simo/users/admin.py,sha256=Vkx1KLHBRN7U5mgriOYolW-itcz0gi6x1qk7UdJP3ko,7229
|
|
10452
|
-
simo/users/api.py,sha256=
|
|
10470
|
+
simo/users/api.py,sha256=lrjwJc3IZxVN4VQsqs9LeQVYjgY17hbshB23NzyIVUI,13142
|
|
10453
10471
|
simo/users/apps.py,sha256=cq0A8-U1HALEwev0TicgFhr4CAu7Icz8rwq0HfOaL4E,207
|
|
10454
10472
|
simo/users/auth_backends.py,sha256=KIw2AdjCUKfm_7Lql6aC4qdE6JznP0ECIMA5MVMLeiM,4251
|
|
10455
10473
|
simo/users/auto_urls.py,sha256=lcJvteBsbHQMJieZpDz-63tDYejLApqsW3CUnDakd7k,272
|
|
@@ -10466,7 +10484,7 @@ simo/users/utils.py,sha256=-Lu7C_sz8JJauLaIwgEa6umArqzNL7JJTY-ZcuF4irA,2004
|
|
|
10466
10484
|
simo/users/views.py,sha256=dOQVvmlHG7ihWKJLFUBcqKOA0UDctlMKR0pTc36JZqg,3487
|
|
10467
10485
|
simo/users/__pycache__/__init__.cpython-38.pyc,sha256=VFoDJE_SKKaPqqYaaBYd1Ndb1hjakkTo_u0EG_XJ1GM,211
|
|
10468
10486
|
simo/users/__pycache__/admin.cpython-38.pyc,sha256=lQHm_2V104pUoUj0xSEa28b542GO1QNd_jdH1ebxXqM,8233
|
|
10469
|
-
simo/users/__pycache__/api.cpython-38.pyc,sha256=
|
|
10487
|
+
simo/users/__pycache__/api.cpython-38.pyc,sha256=fYvDObLTK7bK8nrl11YK1JHRPZuwhGNZyqVPuK985Vg,10307
|
|
10470
10488
|
simo/users/__pycache__/apps.cpython-38.pyc,sha256=dgbWL8CxzzISJQTmq_4IztPJ2UzykNVdqA2Ae1PmeGk,605
|
|
10471
10489
|
simo/users/__pycache__/auth_backends.cpython-38.pyc,sha256=jYS2hlbTZh_ZtPeWcN50pc0IpyfCSO7_MvIbuVwEp8M,3144
|
|
10472
10490
|
simo/users/__pycache__/auto_urls.cpython-38.pyc,sha256=K-3sz2h-cEitoflSmZk1t0eUg5mQMMGLNZFREVwG7_o,430
|
|
@@ -10579,9 +10597,9 @@ simo/users/templates/invitations/expired_msg.html,sha256=47DEQpj8HBSa-_TImW-5JCe
|
|
|
10579
10597
|
simo/users/templates/invitations/expired_suggestion.html,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10580
10598
|
simo/users/templates/invitations/taken_msg.html,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10581
10599
|
simo/users/templates/invitations/taken_suggestion.html,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10582
|
-
simo-2.
|
|
10583
|
-
simo-2.
|
|
10584
|
-
simo-2.
|
|
10585
|
-
simo-2.
|
|
10586
|
-
simo-2.
|
|
10587
|
-
simo-2.
|
|
10600
|
+
simo-2.6.2.dist-info/LICENSE.md,sha256=M7wm1EmMGDtwPRdg7kW4d00h1uAXjKOT3HFScYQMeiE,34916
|
|
10601
|
+
simo-2.6.2.dist-info/METADATA,sha256=cAbQa5xBzOrd28hMtHVGC9zYeYZEyEQD9c0_zIoqrJI,1952
|
|
10602
|
+
simo-2.6.2.dist-info/WHEEL,sha256=P9jw-gEje8ByB7_hXoICnHtVCrEwMQh-630tKvQWehc,91
|
|
10603
|
+
simo-2.6.2.dist-info/entry_points.txt,sha256=S9PwnUYmTSW7681GKDCxUbL0leRJIaRk6fDQIKgbZBA,135
|
|
10604
|
+
simo-2.6.2.dist-info/top_level.txt,sha256=GmS1hrAbpVqn9OWZh6UX82eIOdRLgYA82RG9fe8v4Rs,5
|
|
10605
|
+
simo-2.6.2.dist-info/RECORD,,
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import time
|
|
2
|
-
from django.utils import timezone
|
|
3
|
-
from simo.core.middleware import get_current_instance
|
|
4
|
-
from simo.core.models import Component
|
|
5
|
-
from simo.users.models import InstanceUser
|
|
6
|
-
from simo.generic.scripting.helpers import LocalSun
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
class Automation:
|
|
10
|
-
STATE_COMPONENT_ID = {{ state_comp_id }}
|
|
11
|
-
last_state = None
|
|
12
|
-
weekdays_morning_hour = 10
|
|
13
|
-
weekends_morning_hour = 11
|
|
14
|
-
|
|
15
|
-
def __init__(self):
|
|
16
|
-
self.instance = get_current_instance()
|
|
17
|
-
self.state = Component.objects.get(id=self.STATE_COMPONENT_ID)
|
|
18
|
-
self.sun = LocalSun(self.instance.location)
|
|
19
|
-
|
|
20
|
-
def check_at_home(self):
|
|
21
|
-
return bool(InstanceUser.objects.filter(
|
|
22
|
-
is_active=True, at_home=True
|
|
23
|
-
).count())
|
|
24
|
-
|
|
25
|
-
def calculate_appropriate_state(self, localtime, at_home):
|
|
26
|
-
if not at_home:
|
|
27
|
-
return 'away'
|
|
28
|
-
if self.sun.is_night(localtime) \
|
|
29
|
-
and self.sun.get_sunset_time(localtime) < localtime:
|
|
30
|
-
return 'evening'
|
|
31
|
-
|
|
32
|
-
if localtime.weekday() < 5 \
|
|
33
|
-
and localtime.hour < self.weekdays_morning_hour:
|
|
34
|
-
return 'night'
|
|
35
|
-
|
|
36
|
-
if localtime.weekday() >= 5 \
|
|
37
|
-
and localtime.hour < self.weekends_morning_hour:
|
|
38
|
-
return 'night'
|
|
39
|
-
|
|
40
|
-
return 'day'
|
|
41
|
-
|
|
42
|
-
def get_new_state(self, state, localtime, at_home):
|
|
43
|
-
# If state component on vacation or in some other state
|
|
44
|
-
# we do not interfere!
|
|
45
|
-
if state.value not in ('day', 'night', 'evening', 'away'):
|
|
46
|
-
return
|
|
47
|
-
should_be = self.calculate_appropriate_state(
|
|
48
|
-
localtime, at_home
|
|
49
|
-
)
|
|
50
|
-
|
|
51
|
-
if self.last_state != state.value:
|
|
52
|
-
# user changed something manually
|
|
53
|
-
# we must first wait for appropriate state to get in to
|
|
54
|
-
# manually selected one, only then we will transition to forward.
|
|
55
|
-
if should_be == state.value:
|
|
56
|
-
print("Consensus with system users reached!")
|
|
57
|
-
self.last_state = should_be
|
|
58
|
-
elif self.last_state != should_be:
|
|
59
|
-
print("New state: ", should_be)
|
|
60
|
-
self.last_state = should_be
|
|
61
|
-
return should_be
|
|
62
|
-
|
|
63
|
-
def run(self):
|
|
64
|
-
# do not interfere on script start,
|
|
65
|
-
# only later when we absolutely must
|
|
66
|
-
self.last_state = self.get_new_state(
|
|
67
|
-
self.state, timezone.localtime(),
|
|
68
|
-
self.check_at_home()
|
|
69
|
-
)
|
|
70
|
-
while True:
|
|
71
|
-
self.state.refresh_from_db()
|
|
72
|
-
new_state_value = self.get_new_state(
|
|
73
|
-
self.state, timezone.localtime(),
|
|
74
|
-
self.check_at_home()
|
|
75
|
-
)
|
|
76
|
-
if new_state_value:
|
|
77
|
-
self.state.send(new_state_value)
|
|
78
|
-
time.sleep(10)
|
|
Binary file
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|