Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # create Devices on the network
- self.Fosset = self.Network.add_device(21,
- "int Command;" +
- "byte Flow;" +
- "int Temp;",
- "Fosset")
- self.UnderTub = self.Network.add_device(22,
- "int Command;" +
- "int PipeTemp;" +
- "int HotTubTemp;" +
- "int OutsideTemp;" +
- "bool ValveIsOpen;" +
- "int OverflowTemp",
- "UnderTub")
- self.Fosset.add_translation('Command',
- ('Unfreeze', 2101),
- ('Regulate', 2102),
- ('Status', 99))
- self.UnderTub.add_translation('Command',
- ('Status', 99),
- ('OpenValve', 2201),
- ('CloseValve', 2202))
- # and later i use for example:
- def prevent_freezing(self):
- print "Here I come to save the day!... by preventing pipe freezing"
- d = self.UnderTub.send_and_receive('Status') # get status from UnderTub
- if not d: # if we don't get anything d will be None
- print "prevent_freezing <- UnderTub is not responding!!!"
- else:
- if d['OutsideTemp'] < 0: # if there are freezing conditions
- if d['PipeTemp'] < 20: # 20 means 2.0 °C
- print "It's my time to shine! There'll be no pipe freezing today mister!"
- if not d['ValveIsOpen']:
- self.UnderTub.send('OpenValve') # make sure valve is open
- self.Fosset.send('Unfreeze')
- # sending unfreeze means it will send hot water through for 60 seconds
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement