|
From: <ni...@us...> - 2010-11-18 19:19:36
|
Revision: 139
http://openautomation.svn.sourceforge.net/openautomation/?rev=139&view=rev
Author: nilss1
Date: 2010-11-18 19:19:29 +0000 (Thu, 18 Nov 2010)
Log Message:
-----------
changed ID style
Modified Paths:
--------------
PyWireGate/trunk/lirc_connector/LIRC_Connector.py
Modified: PyWireGate/trunk/lirc_connector/LIRC_Connector.py
===================================================================
--- PyWireGate/trunk/lirc_connector/LIRC_Connector.py 2010-11-18 19:15:50 UTC (rev 138)
+++ PyWireGate/trunk/lirc_connector/LIRC_Connector.py 2010-11-18 19:19:29 UTC (rev 139)
@@ -74,7 +74,7 @@
try:
raw, counter, button, channel = rawmsg.split()
## default "LIRC:channel_button
- id = u"%s:%s_%s" % (self.instanceName,channel,button)
+ id = u"%s:%s:%s" % (self.instanceName,channel,button)
self.WG.DATASTORE.update(id,int(counter,16))
id = u"%s:%s" % (self.instanceName,button)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ni...@us...> - 2010-11-19 23:48:28
|
Revision: 143
http://openautomation.svn.sourceforge.net/openautomation/?rev=143&view=rev
Author: nilss1
Date: 2010-11-19 23:48:22 +0000 (Fri, 19 Nov 2010)
Log Message:
-----------
config option toggle for easy connections to KNX objects
Modified Paths:
--------------
PyWireGate/trunk/lirc_connector/LIRC_Connector.py
Modified: PyWireGate/trunk/lirc_connector/LIRC_Connector.py
===================================================================
--- PyWireGate/trunk/lirc_connector/LIRC_Connector.py 2010-11-19 23:47:12 UTC (rev 142)
+++ PyWireGate/trunk/lirc_connector/LIRC_Connector.py 2010-11-19 23:48:22 UTC (rev 143)
@@ -75,8 +75,24 @@
raw, counter, button, channel = rawmsg.split()
## default "LIRC:channel_button
id = u"%s:%s:%s" % (self.instanceName,channel,button)
- self.WG.DATASTORE.update(id,int(counter,16))
+ obj = self.WG.DATASTORE.get(id)
+ val = int(counter,16)
+ if 'toggle' in obj.config:
+ if counter <> "00":
+ continue
+ toggle = obj.config['toggle']
+ val = obj.getValue()
+ if type(val) == int:
+ val = int(val == 0)
+ else:
+ val = 0
+ #if type(obj.config['toggle']) == list:
+ # toglen = len(val)
+
+
+ self.WG.DATASTORE.update(id,val)
+
id = u"%s:%s" % (self.instanceName,button)
## dont't create it "LIRC:Button"
if id in self.WG.DATASTORE.dataobjects:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ni...@us...> - 2010-11-22 14:59:47
|
Revision: 151
http://openautomation.svn.sourceforge.net/openautomation/?rev=151&view=rev
Author: nilss1
Date: 2010-11-22 14:59:41 +0000 (Mon, 22 Nov 2010)
Log Message:
-----------
Test List support for toggle, sending increasing [0,20,40,60] and on end start over
Modified Paths:
--------------
PyWireGate/trunk/lirc_connector/LIRC_Connector.py
Modified: PyWireGate/trunk/lirc_connector/LIRC_Connector.py
===================================================================
--- PyWireGate/trunk/lirc_connector/LIRC_Connector.py 2010-11-22 14:58:25 UTC (rev 150)
+++ PyWireGate/trunk/lirc_connector/LIRC_Connector.py 2010-11-22 14:59:41 UTC (rev 151)
@@ -21,6 +21,9 @@
import select
import re
+
+nearestValue = lambda a,l:min(l,key=lambda x:abs(x-a))
+
class lirc_connector(Connector):
@@ -79,6 +82,7 @@
val = int(counter,16)
if 'toggle' in obj.config:
if counter <> "00":
+ ## only toggle once
continue
toggle = obj.config['toggle']
val = obj.getValue()
@@ -86,8 +90,16 @@
val = int(val == 0)
else:
val = 0
- #if type(obj.config['toggle']) == list:
- # toglen = len(val)
+ if type(obj.config['toggle']) == list:
+ lentoggle = len(obj.config['toggle'])
+ near = nearestValue(val,obj.config['toggle'])
+ if near < val:
+ if val > obj.config['toggle'][-1]:
+ val = obj.config['toggle'][0]
+ else:
+ val = obj.config['toggle'][obj.config['toggle'].index(near)+1]
+ else:
+ val = near
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ni...@us...> - 2010-11-23 20:23:38
|
Revision: 161
http://openautomation.svn.sourceforge.net/openautomation/?rev=161&view=rev
Author: nilss1
Date: 2010-11-23 20:23:32 +0000 (Tue, 23 Nov 2010)
Log Message:
-----------
Fix Server down loop and add some debug logging
Modified Paths:
--------------
PyWireGate/trunk/lirc_connector/LIRC_Connector.py
Modified: PyWireGate/trunk/lirc_connector/LIRC_Connector.py
===================================================================
--- PyWireGate/trunk/lirc_connector/LIRC_Connector.py 2010-11-23 14:00:52 UTC (rev 160)
+++ PyWireGate/trunk/lirc_connector/LIRC_Connector.py 2010-11-23 20:23:32 UTC (rev 161)
@@ -51,13 +51,13 @@
try:
self._socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
try:
+ self.debug("Connect to %s:%d" % (self.config['server'],self.config['port']))
self._socket.connect((self.config['server'],self.config['port']))
self._sockfile = self._socket.makefile()
self._run()
except socket.error ,e:
if e[0] == 111:
- print "NO Connection"
-
+ self.debug("Connection Reset")
finally:
try:
self._socket.close()
@@ -74,6 +74,9 @@
if not r:
continue
rawmsg = self._sockfile.readline()
+ if not rawmsg:
+ self.debug("No data connection broken")
+ break
try:
raw, counter, button, channel = rawmsg.split()
## default "LIRC:channel_button
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|