diff --git a/ledd.service b/ledd.service
new file mode 100644
index 0000000..a6ba1e6
--- /dev/null
+++ b/ledd.service
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+LedD Daemon
+
+
+ _ledd._tcp
+ 1425
+
+
+
diff --git a/ledd/daemon.py b/ledd/daemon.py
index 9bccf19..5e33a09 100644
--- a/ledd/daemon.py
+++ b/ledd/daemon.py
@@ -23,9 +23,7 @@ import sys
import traceback
import time
import asyncio
-
import spectra
-from zeroconf import Zeroconf, ServiceInfo
from ledd import controller, VERSION
from ledd.decorators import ledd_protocol
@@ -57,10 +55,6 @@ class Daemon:
except FileNotFoundError:
log.info("No config file found!")
- # create zeroconf service info
- self.zinfo = ServiceInfo("_ledd._tcp.local.", "LedD Daemon._ledd._tcp.local.",
- port=self.config.get(self.daemonSection, 'port', fallback=1425))
-
# SQL init
self.sqldb = sqlite3.connect(self.config.get(self.databaseSection, 'name', fallback='ledd.sqlite'))
self.sqldb.row_factory = sqlite3.Row
@@ -75,9 +69,6 @@ class Daemon:
log.debug(self.controllers)
logging.getLogger("asyncio").setLevel(logging.DEBUG)
- # announce server to network
- self.register_zeroconf()
-
# main loop
self.loop = asyncio.get_event_loop()
coro = self.loop.create_server(LedDProtocol,
@@ -87,7 +78,6 @@ class Daemon:
self.loop.run_forever()
except (KeyboardInterrupt, SystemExit):
log.info("Exiting")
- self.deregister_zeroconf()
self.sqldb.close()
self.server.close()
self.loop.run_until_complete(self.server.wait_closed())
@@ -127,24 +117,6 @@ class Daemon:
c.close()
self.check_db()
- def register_zeroconf(self):
- try:
- zeroconf = Zeroconf()
- zeroconf.register_service(self.zinfo)
- log.info("Registered ledd daemon with zeroconf")
- except OSError as e:
- log.warning("Failed to register service with ZeroConf: %s", e)
- pass
-
- def deregister_zeroconf(self):
- try:
- zeroconf = Zeroconf()
- zeroconf.unregister_service(self.zinfo)
- log.info("Unregistered ledd daemon with zeroconf")
- except OSError as e:
- log.warning("Failed to deregister service with ZeroConf: %s", e)
- pass
-
@ledd_protocol(protocol)
def start_effect(self, req_json):
"""
diff --git a/setup.py b/setup.py
index 5690e1b..e89ed7d 100644
--- a/setup.py
+++ b/setup.py
@@ -25,6 +25,6 @@ setup(name='LedD',
license='GPLv3',
packages=['ledd'],
install_requires=[
- 'nose', 'spectra', 'zeroconf',
+ 'nose', 'spectra',
],
zip_safe=False)
diff --git a/start.py b/start.py
index eec3164..cc16563 100644
--- a/start.py
+++ b/start.py
@@ -15,6 +15,9 @@
# along with this program. If not, see .
import logging
+import ledd.daemon
+import sys
+import os
from pkgutil import iter_modules
@@ -41,15 +44,9 @@ if "smbus" not in (name for loader, name, ispkg in iter_modules()):
SMBus = SMBus
- import sys
-
sys.modules['smbus'] = SMBusModule
sys.modules['smbus'].SMBus = SMBus
-import ledd.daemon
-import sys
-import os
-
if __name__ == "__main__":
logging.basicConfig(level=logging.DEBUG,
format="[%(asctime)s] %(levelname)s [%(name)s.%(funcName)s:%(lineno)d] %(message)s",
@@ -71,4 +68,4 @@ if __name__ == "__main__":
else:
sys.exit()
except OSError as e:
- log.fatal("Forking failed: %s", os.strerror(int(str(e))))
+ log.fatal("Start failed: %s", e)