simo 2.0.38__py3-none-any.whl → 2.0.39__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.
Binary file
simo/fleet/forms.py CHANGED
@@ -578,7 +578,7 @@ class ColonelSwitchConfigForm(ColonelComponentForm):
578
578
 
579
579
  controls = FormsetField(
580
580
  formset_factory(
581
- ControlPinForm, can_delete=True, can_order=True, extra=0, max_num=1
581
+ ControlPinForm, can_delete=True, can_order=True, extra=0, max_num=10
582
582
  )
583
583
  )
584
584
 
@@ -686,7 +686,7 @@ class ColonelPWMOutputConfigForm(ColonelComponentForm):
686
686
  )
687
687
  controls = FormsetField(
688
688
  formset_factory(
689
- ControlPinForm, can_delete=True, can_order=True, extra=0, max_num=1
689
+ ControlPinForm, can_delete=True, can_order=True, extra=0, max_num=10
690
690
  )
691
691
  )
692
692
 
@@ -199,6 +199,14 @@ class PresenceLighting(Script):
199
199
  comp.send(self.light_org_values.get(comp.id, 0))
200
200
 
201
201
 
202
+ # TODO: Night lighting
203
+ #
204
+ # Lights: components (switches, dimmers)
205
+ # On value: 40
206
+ # Sunset offset (mins): negative = earlier, positive = later
207
+ # Save energy at night: 1 - 6 turn the lights completely off at night.
208
+
209
+
202
210
  class Thermostat(ControllerBase):
203
211
  name = _("Thermostat")
204
212
  base_type = 'thermostat'
@@ -1435,7 +1443,7 @@ class StateSelect(ControllerBase):
1435
1443
  config_form = StateSelectForm
1436
1444
 
1437
1445
  default_config = {'states': []}
1438
- default_value = None
1446
+ default_value = ''
1439
1447
 
1440
1448
  def _validate_val(self, value, occasion=None):
1441
1449
  available_options = [s.get('slug') for s in self.component.config.get('states', [])]
simo/generic/forms.py CHANGED
@@ -132,7 +132,7 @@ class ConditionForm(forms.Form):
132
132
 
133
133
  if self.cleaned_data['op'] == 'in':
134
134
  self.cleaned_data['value'] = ', '.join(str(v) for v in final_values)
135
- else:
135
+ elif final_values:
136
136
  self.cleaned_data['value'] = final_values[0]
137
137
 
138
138
  return self.cleaned_data
@@ -190,6 +190,14 @@ class PresenceLightingConfigForm(BaseComponentForm):
190
190
  ConditionForm, can_delete=True, can_order=True, extra=0
191
191
  ), label='Additional conditions'
192
192
  )
193
+ autostart = forms.BooleanField(
194
+ initial=True, required=False,
195
+ help_text="Start automatically on system boot."
196
+ )
197
+ keep_alive = forms.BooleanField(
198
+ initial=True, required=False,
199
+ help_text="Restart the script if it fails. "
200
+ )
193
201
  log = forms.CharField(
194
202
  widget=forms.HiddenInput, required=False
195
203
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: simo
3
- Version: 2.0.38
3
+ Version: 2.0.39
4
4
  Summary: Smart Home on Steroids!
5
5
  Author-email: Simanas Venčkauskas <simanas@simo.io>
6
6
  Project-URL: Homepage, https://simo.io
@@ -10185,7 +10185,7 @@ simo/fleet/auto_urls.py,sha256=X04oKJWA48wFW5iXg3PPROY2KDdHn_a99orQSE28QC4,518
10185
10185
  simo/fleet/base_types.py,sha256=wL9RVkHr0gA7HI1wZq0pruGEIgvQqpfnCL4cC3ywsvw,102
10186
10186
  simo/fleet/ble.py,sha256=eHA_9ABjbmH1vUVCv9hiPXQL2GZZSEVwfO0xyI1S0nI,1081
10187
10187
  simo/fleet/controllers.py,sha256=WCqOA5Qrn9RavdfcB8X06WwaTE-9TGUprTQHZ8V8-nA,23172
10188
- simo/fleet/forms.py,sha256=VVjFlWfU2jSfRp8CW9ntEd21Mr272LacRokzMon-YdU,48870
10188
+ simo/fleet/forms.py,sha256=EwqFVVabGGDgtHaBAUo_n0Mu-F3vMXzr4IirMPKAYFg,48872
10189
10189
  simo/fleet/gateways.py,sha256=KV5i5fxXIrlK-k6zyEkk83x11GJt-ELQ0npb4Ac83cM,3693
10190
10190
  simo/fleet/managers.py,sha256=XOpDOA9L-f_550TNSyXnJbun2EmtGz1TenVTMlUSb8E,807
10191
10191
  simo/fleet/models.py,sha256=bD5AebGFCAYGXPYhTA2nK1X9KpMG4WK4zFk9OzBDoHI,15301
@@ -10202,7 +10202,7 @@ simo/fleet/__pycache__/auto_urls.cpython-38.pyc,sha256=SqyTuaz_kEBvx-bL46SclsZEE
10202
10202
  simo/fleet/__pycache__/base_types.cpython-38.pyc,sha256=deyPwjpT6xZiFxBGFnj5b7R-lbdOTh2krgpJhrcGVhc,274
10203
10203
  simo/fleet/__pycache__/ble.cpython-38.pyc,sha256=Nrof9w7cm4OlpFWHeVnmvvanh2_oF9oQ3TknJiV93-0,1267
10204
10204
  simo/fleet/__pycache__/controllers.cpython-38.pyc,sha256=TN3yvfZJgS7FwzgP4S1aDoaOqxbKj2oXfXOxqbkIXJU,19856
10205
- simo/fleet/__pycache__/forms.cpython-38.pyc,sha256=0js770XdKp9PePLN-az0TLnpbfWE6u2Lwr8_sbfqOow,33943
10205
+ simo/fleet/__pycache__/forms.cpython-38.pyc,sha256=1kYMcS0G_nPp3h6-MjHyTPNwcJHUiAGfGZIAX1db2rE,33943
10206
10206
  simo/fleet/__pycache__/gateways.cpython-38.pyc,sha256=YAcgTOqJbtjGI03lvEcU6keFfrwAHkObVmErYzfRvjk,3569
10207
10207
  simo/fleet/__pycache__/managers.cpython-38.pyc,sha256=8uz-xpUiqbGDgXIZ_XRZtFb-Tju6NGxflGg-Ee4Yo6k,1310
10208
10208
  simo/fleet/__pycache__/models.cpython-38.pyc,sha256=LjcLsSytCQd17xhH-5RrzvnZ6JYI1ilvNdCY2iUCsGc,12935
@@ -10287,8 +10287,8 @@ simo/fleet/migrations/__pycache__/__init__.cpython-38.pyc,sha256=5k1KW0jeSDzw6Rn
10287
10287
  simo/generic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10288
10288
  simo/generic/app_widgets.py,sha256=E_pnpA1hxMIhenRCrHoQ5cik06jm2BAHCkl_eo-OudU,1264
10289
10289
  simo/generic/base_types.py,sha256=djymox_boXTHX1BTTCLXrCH7ED-uAsV_idhaDOc3OLI,409
10290
- simo/generic/controllers.py,sha256=qbcKSrKLvi4DCN4Tt1GpHMScVSGz0snQRRuWi4_-r_s,55823
10291
- simo/generic/forms.py,sha256=FVhQ-buK6vUp7x7PADWo31pPVtHWgBMgshnyH-CN8wI,29239
10290
+ simo/generic/controllers.py,sha256=lxMdbNxbvoUPctoLBz8heCOb5aAUx9k3h56Y7ByRKdg,56036
10291
+ simo/generic/forms.py,sha256=sxNl_iAgZJ5cCDcwgK0m4S7fs-O8RJutoiFeC1w_DlQ,29522
10292
10292
  simo/generic/gateways.py,sha256=dZQPzO23UbW9q4dEB9fqgt9Meg8mX94euXnRvfwxusY,18004
10293
10293
  simo/generic/models.py,sha256=92TACMhJHadAg0TT9GnARO_R3_Sl6i-GGjhG_x7YdFI,7391
10294
10294
  simo/generic/routing.py,sha256=elQVZmgnPiieEuti4sJ7zITk1hlRxpgbotcutJJgC60,228
@@ -10296,8 +10296,8 @@ simo/generic/socket_consumers.py,sha256=NfTQGYtVAc864IoogZRxf_0xpDPM0eMCWn0SlKA5
10296
10296
  simo/generic/__pycache__/__init__.cpython-38.pyc,sha256=mLu54WS9KIl-pHwVCBKpsDFIlOqml--JsOVzAUHg6cU,161
10297
10297
  simo/generic/__pycache__/app_widgets.cpython-38.pyc,sha256=0IoKRG9n1tkNRRkrqAeOQwWBPd_33u98JBcVtMVVCio,2374
10298
10298
  simo/generic/__pycache__/base_types.cpython-38.pyc,sha256=ptw6axyAqemZA35oa6vzr7EihzvbhW9w7Y-G6kfDedU,555
10299
- simo/generic/__pycache__/controllers.cpython-38.pyc,sha256=6WhWx_QaWrYV_WqU5coEp9VFR11DxJVjPGTrhcUoYQ4,35583
10300
- simo/generic/__pycache__/forms.cpython-38.pyc,sha256=LsYmGecSEdOnWnskBoTktLEUfYYKWMtd40lIGHbS-ZY,21207
10299
+ simo/generic/__pycache__/controllers.cpython-38.pyc,sha256=HtPEtQfdbHCwO9BejEGPIsJyqyCmo7owteXE09VXZ7Y,35588
10300
+ simo/generic/__pycache__/forms.cpython-38.pyc,sha256=g4N2Zcarce0dMovJZt3TQHAhKWA1W3k2nurBg1NqHaY,21297
10301
10301
  simo/generic/__pycache__/gateways.cpython-38.pyc,sha256=B35GiB4wBRzvd91ugL89Z3vYADiLiERP0T-21CnLqKc,13324
10302
10302
  simo/generic/__pycache__/models.cpython-38.pyc,sha256=PzlZsM1jxo3FVb7QDm3bny8UFwTsGrMQe4mj4tJ06eQ,5675
10303
10303
  simo/generic/__pycache__/routing.cpython-38.pyc,sha256=xtxTUTBTdivzFyA5Wh7k-hUj1WDO_FiRq6HYXdbr9Ks,382
@@ -10468,8 +10468,8 @@ simo/users/templates/invitations/expired_msg.html,sha256=47DEQpj8HBSa-_TImW-5JCe
10468
10468
  simo/users/templates/invitations/expired_suggestion.html,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10469
10469
  simo/users/templates/invitations/taken_msg.html,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10470
10470
  simo/users/templates/invitations/taken_suggestion.html,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10471
- simo-2.0.38.dist-info/LICENSE.md,sha256=M7wm1EmMGDtwPRdg7kW4d00h1uAXjKOT3HFScYQMeiE,34916
10472
- simo-2.0.38.dist-info/METADATA,sha256=lSORUFdH9kvVvxyK_3k0swsm7DHyYLhjUmxM_WTAFF8,1730
10473
- simo-2.0.38.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
10474
- simo-2.0.38.dist-info/top_level.txt,sha256=GmS1hrAbpVqn9OWZh6UX82eIOdRLgYA82RG9fe8v4Rs,5
10475
- simo-2.0.38.dist-info/RECORD,,
10471
+ simo-2.0.39.dist-info/LICENSE.md,sha256=M7wm1EmMGDtwPRdg7kW4d00h1uAXjKOT3HFScYQMeiE,34916
10472
+ simo-2.0.39.dist-info/METADATA,sha256=OzMAb8fubyYGVoM40_4IcFpY-tK3Rw8oX7ZEN3G9niw,1730
10473
+ simo-2.0.39.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
10474
+ simo-2.0.39.dist-info/top_level.txt,sha256=GmS1hrAbpVqn9OWZh6UX82eIOdRLgYA82RG9fe8v4Rs,5
10475
+ simo-2.0.39.dist-info/RECORD,,
File without changes