mirror of
https://repository.entgra.net/community/device-mgt-plugins.git
synced 2025-09-16 23:42:15 +00:00
Bug fixes on Raspberry Pi agent
This commit is contained in:
parent
c761324460
commit
16f6bda20a
Binary file not shown.
@ -1,23 +1,3 @@
|
|||||||
#"""
|
|
||||||
#/**
|
|
||||||
#* Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
|
||||||
#*
|
|
||||||
#* WSO2 Inc. licenses this file to you under the Apache License,
|
|
||||||
#* Version 2.0 (the "License"); you may not use this file except
|
|
||||||
#* in compliance with the License.
|
|
||||||
#* You may obtain a copy of the License at
|
|
||||||
#*
|
|
||||||
#* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#*
|
|
||||||
#* Unless required by applicable law or agreed to in writing,
|
|
||||||
#* software distributed under the License is distributed on an
|
|
||||||
#* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
||||||
#* KIND, either express or implied. See the License for the
|
|
||||||
#* specific language governing permissions and limitations
|
|
||||||
#* under the License.
|
|
||||||
#**/
|
|
||||||
#"""
|
|
||||||
|
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
### BEGIN INIT INFO
|
### BEGIN INIT INFO
|
||||||
@ -35,7 +15,7 @@ DESC="This service is used to publish events from the Raspberry Pi to the WSO2 D
|
|||||||
NAME=RaspberryStats
|
NAME=RaspberryStats
|
||||||
|
|
||||||
DIR=/usr/local/src/RaspberryAgent/src/
|
DIR=/usr/local/src/RaspberryAgent/src/
|
||||||
DAEMON=$DIR/RaspberryAgent.py
|
DAEMON=python $DIR/RaspberryAgent.py
|
||||||
DAEMON_NAME=$NAME
|
DAEMON_NAME=$NAME
|
||||||
SCRIPTNAME=RaspberryService.sh
|
SCRIPTNAME=RaspberryService.sh
|
||||||
|
|
||||||
|
|||||||
@ -23,6 +23,7 @@ import logging, logging.handlers
|
|||||||
import sys, os, signal, argparse
|
import sys, os, signal, argparse
|
||||||
import running_mode
|
import running_mode
|
||||||
import time, threading, datetime, calendar
|
import time, threading, datetime, calendar
|
||||||
|
import iotUtils, mqttConnector, Adafruit_DHT, httpServer
|
||||||
|
|
||||||
# import httplib, ssl
|
# import httplib, ssl
|
||||||
# from functools import wraps
|
# from functools import wraps
|
||||||
@ -40,7 +41,7 @@ import time, threading, datetime, calendar
|
|||||||
# return bar
|
# return bar
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
PUSH_INTERVAL = 5000 # time interval between successive data pushes in seconds
|
PUSH_INTERVAL = 2 # time interval between successive data pushes in seconds
|
||||||
|
|
||||||
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
@ -82,7 +83,7 @@ if args.mode:
|
|||||||
running_mode.RUNNING_MODE = args.mode
|
running_mode.RUNNING_MODE = args.mode
|
||||||
iotUtils = __import__('iotUtils')
|
iotUtils = __import__('iotUtils')
|
||||||
mqttConnector = __import__('mqttConnector')
|
mqttConnector = __import__('mqttConnector')
|
||||||
# httpServer = __import__('httpServer') # python script used to start a http-server to listen for operations
|
httpServer = __import__('httpServer') # python script used to start a http-server to listen for operations
|
||||||
# (includes the TEMPERATURE global variable)
|
# (includes the TEMPERATURE global variable)
|
||||||
|
|
||||||
if running_mode.RUNNING_MODE == 'N':
|
if running_mode.RUNNING_MODE == 'N':
|
||||||
@ -329,6 +330,7 @@ def main():
|
|||||||
# ListenHTTPServerThread() # starts an HTTP Server that listens for operational commands to switch ON/OFF Led
|
# ListenHTTPServerThread() # starts an HTTP Server that listens for operational commands to switch ON/OFF Led
|
||||||
SubscribeToMQTTQueue() # connects and subscribes to an MQTT Queue that receives MQTT commands from the server
|
SubscribeToMQTTQueue() # connects and subscribes to an MQTT Queue that receives MQTT commands from the server
|
||||||
TemperatureReaderThread() # initiates and runs the thread to continuously read temperature from DHT Sensor
|
TemperatureReaderThread() # initiates and runs the thread to continuously read temperature from DHT Sensor
|
||||||
|
# time.sleep(2) #wait for agent to connect to broker before publishing data
|
||||||
while True:
|
while True:
|
||||||
try:
|
try:
|
||||||
if iotUtils.LAST_TEMP > 0: # Push data only if there had been a successful temperature read
|
if iotUtils.LAST_TEMP > 0: # Push data only if there had been a successful temperature read
|
||||||
|
|||||||
@ -72,9 +72,11 @@ def on_publish(client, userdata, mid):
|
|||||||
# The callback for when a PUBLISH message to the server when door is open or close
|
# The callback for when a PUBLISH message to the server when door is open or close
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
def publish(msg):
|
def publish(msg):
|
||||||
# global mqttClient
|
global mqttClient
|
||||||
mqttClient.publish(TOPIC_TO_PUBLISH, msg)
|
mqttClient.publish(TOPIC_TO_PUBLISH, msg)
|
||||||
|
|
||||||
|
def on_subscribe(client, userdata, mid, granted_qos):
|
||||||
|
print "Successfully subscribed to " + TOPIC_TO_SUBSCRIBE
|
||||||
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
# The Main method of the server script
|
# The Main method of the server script
|
||||||
@ -103,6 +105,7 @@ def main():
|
|||||||
mqttClient.on_connect = on_connect
|
mqttClient.on_connect = on_connect
|
||||||
mqttClient.on_message = on_message
|
mqttClient.on_message = on_message
|
||||||
mqttClient.on_publish = on_publish
|
mqttClient.on_publish = on_publish
|
||||||
|
mqttClient.on_subscribe = on_subscribe
|
||||||
mqttClient.username_pw_set(iotUtils.AUTH_TOKEN, password = "")
|
mqttClient.username_pw_set(iotUtils.AUTH_TOKEN, password = "")
|
||||||
|
|
||||||
while True:
|
while True:
|
||||||
|
|||||||
@ -33,6 +33,17 @@ if [ ! -d "$destination" ]
|
|||||||
then
|
then
|
||||||
mkdir $destination
|
mkdir $destination
|
||||||
fi
|
fi
|
||||||
|
# installing dependencies
|
||||||
|
echo ===Installing Dependencies
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install python-pip
|
||||||
|
sudo pip install paho-mqtt
|
||||||
|
|
||||||
|
#installing ada
|
||||||
|
sudo apt-get install build-essential python-dev
|
||||||
|
unzip Adafruit_Python_DHT
|
||||||
|
sudo python Adafruit_Python_DHT/setup.py install
|
||||||
|
|
||||||
sudo cp $currentDir/deviceConfig.properties $currentDir/src
|
sudo cp $currentDir/deviceConfig.properties $currentDir/src
|
||||||
sudo cp -r $currentDir/src $destination
|
sudo cp -r $currentDir/src $destination
|
||||||
sudo chmod +x $destination/src/RaspberryAgent.py
|
sudo chmod +x $destination/src/RaspberryAgent.py
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user