瀏覽代碼

[Feature] Neuronne Twitter first draft

monf 8 年之前
父節點
當前提交
6d345e1972
共有 8 個文件被更改,包括 49 次插入16 次删除
  1. 1 0
      brain.yml
  2. 11 0
      brains/twitter.yml
  3. 1 0
      install/files/python_requirements.txt
  4. 1 0
      neurons/__init__.py
  5. 2 0
      neurons/twitter/README.md
  6. 30 0
      neurons/twitter/Twitter.py
  7. 1 0
      neurons/twitter/__init__.py
  8. 2 16
      test.py

+ 1 - 0
brain.yml

@@ -11,3 +11,4 @@
   - !include brains/systemdate.yml
   - !include brains/tasker_autoremote.yml
   - !include brains/wake_on_lan.yml
+  - !include brains/twitter.yml

+ 11 - 0
brains/twitter.yml

@@ -0,0 +1,11 @@
+---
+
+  - name: "post tweet"
+    neurons:
+      - twitter:
+          access_token_key: ""
+          access_token_secret: ""
+          args:
+            - tweet
+    signals:
+      - order: "envoie sur Twitter {{ tweet }}"

+ 1 - 0
install/files/python_requirements.txt

@@ -11,3 +11,4 @@ pushetta==1.0.15
 wakeonlan==0.2.2
 ipaddress==1.0.16
 pyowm==2.5.0
+python-twitter==3.1

+ 1 - 0
neurons/__init__.py

@@ -10,3 +10,4 @@ from push_message import Push_message
 from openweathermap import Openweathermap
 from tasker_autoremote import Tasker_autoremote
 from wake_on_lan import Wake_on_lan
+from twitter import Twitter

+ 2 - 0
neurons/twitter/README.md

@@ -0,0 +1,2 @@
+## Twitter 
+

+ 30 - 0
neurons/twitter/Twitter.py

@@ -0,0 +1,30 @@
+import twitter
+
+from core.NeuronModule import NeuronModule
+
+
+class Twitter(NeuronModule):
+    def __init__(self, **kwargs):
+
+        consumer_key = ''
+        consumer_secret = ''
+
+        access_token_key = kwargs.get('access_token_key', None)
+        access_token_secret = kwargs.get('access_token_secret', None)
+        tweet = kwargs.get('tweet', None)
+
+        if access_token_key is None:
+            raise NotImplementedError("Twitter needs an access_token_key")
+        if access_token_secret is None:
+            raise NotImplementedError("Twitter needs and access_token_secret")
+        if tweet is None:
+            raise NotImplementedError("You need to provide something to tweet !")
+
+        api = twitter.Api(consumer_key=consumer_key,
+                          consumer_secret=consumer_secret,
+                          access_token_key=access_token_key,
+                          access_token_secret=access_token_secret)
+
+        status = api.PostUpdate(tweet)
+
+

+ 1 - 0
neurons/twitter/__init__.py

@@ -0,0 +1 @@
+from Twitter import Twitter

+ 2 - 16
test.py

@@ -1,20 +1,6 @@
 # coding: utf8
-import logging
-import re
-from collections import Counter
-
-from core import OrderAnalyser
-from core.ConfigurationManager import YAMLLoader
-from neurons import Systemdate
-from neurons.tasker_autoremote.tasker_autoremote import Tasker_autoremote
-
-logging.basicConfig()
-logger = logging.getLogger("kalliope")
-logger.setLevel(logging.DEBUG)
-
-order = "bonjour"
-oa = OrderAnalyser(order=order)
-oa.start()
+import twitter
+