Browse Source

add sleep neuron

nico 8 years ago
parent
commit
4d23dc0139
6 changed files with 34 additions and 3 deletions
  1. 4 0
      brain.yml
  2. 2 1
      core/OrderAnalyser.py
  3. 1 0
      neurons/__init__.py
  4. 1 0
      neurons/sleep/__init__.py
  5. 22 0
      neurons/sleep/sleep.py
  6. 4 2
      test.py

+ 4 - 0
brain.yml

@@ -3,6 +3,10 @@
     neurons:
       - say:
           message: "Bonjour monsieur"
+      - sleep:
+          seconds: 2
+      - say:
+          message: "Je suis Jarvice"
     when:
       - order: "dis bonjour"
 

+ 2 - 1
core/OrderAnalyser.py

@@ -1,5 +1,6 @@
 import re
 
+from core import ConfigurationManager
 from core.NeuroneLauncher import NeuroneLauncher
 
 
@@ -12,7 +13,7 @@ class OrderAnalyser:
         """
         self.main_controller = main_controller
         self.order = order
-        self.brain = main_controller.conf.brainLoader.get_config()
+        self.brain = ConfigurationManager.get_brain()
         print "Receiver order: %s" % self.order
 
     def start(self):

+ 1 - 0
neurons/__init__.py

@@ -4,3 +4,4 @@ from systemdate import Systemdate
 from script import Script
 from command import Command
 from ansible_tasks import Ansible_tasks
+from sleep import Sleep

+ 1 - 0
neurons/sleep/__init__.py

@@ -0,0 +1 @@
+from sleep import Sleep

+ 22 - 0
neurons/sleep/sleep.py

@@ -0,0 +1,22 @@
+from neurons import Neurone
+import time
+
+
+class NoSecondsException(Exception):
+    pass
+
+
+class Sleep(Neurone):
+
+    def __init__(self, *args , **kwargs):
+        Neurone.__init__(self)
+
+        # get message to spell out loud
+        seconds = kwargs.get('seconds', None)
+        # user must specify a message
+        if seconds is None:
+            raise NoSecondsException("You must set a number of seconds as parameter")
+        time.sleep(seconds)
+
+
+

+ 4 - 2
test.py

@@ -11,7 +11,9 @@ logger = logging.getLogger()
 logger.setLevel(logging.DEBUG)
 
 
-order = OrderListener()
+order = OrderAnalyser("dis bonjour")
+
+order.start()
+
 
-order.load_stt_plugin()