Пример #1
14
    def test_get_latest_dweet_for(self):
        """`get_latest_dweet_for` should return a valid response.
        """
        dweepy.dweet_for(self.my_thing_id, test_data)

        dweets = dweepy.get_latest_dweet_for(self.my_thing_id)
        check_valid_get_response(self, dweets)
def dataRotary(mqttclient):
    
    knob = grove.GroveRotary(3)
    myLcd = lcd.Jhd1313m1(0, 0x3E, 0x62)
    twythonid = twitterHandler()

    while True:
        abs = knob.abs_value()
        myLcd.setCursor(0,0)
        myLcd.write('Health System')
        myLcd.setColor(0, 128, 0)
        myLcd.setCursor(1,0)
        myLcd.write('Heart Rate %s' % abs)
        while (abs > 950):
            myLcd.setColor(255, 0, 0)
            id = str(randint(0,1000))
            status = "0x" + id + " #IoTLab Health System Heart Rate Warning " + str(abs)
            mqttclient.publish("IoTPy/Buzzer", "None")
            twythonid.update_status(status=status)
            data = {}
            data['alive'] = "1"
            data['warning'] = "1"
            data['message'] = status
            dweepy.dweet_for('IoTHealthSystem', data)
            time.sleep(1.5)
            data['warning'] = "0"
            data['message'] = ""
            dweepy.dweet_for('IoTHealthSystem', data)
            break
        time.sleep(0.25)
Пример #3
0
 def send_controller_dweet(self, is_launch, drone_id, latitude, longitude, country, is_real, is_game):
     # If the dweet says that it is a launch, start a new drone
     is_real_boolean = bool(is_real)
     is_game_boolean = bool(is_game)
     if is_launch:
         drone_name = self.start_drone(drone_id, latitude, longitude, country, is_real_boolean, is_game_boolean)
         dweet_to_app = {
             'content': "Drone Launched",
             'droneID': drone_id,
             'drone_name': drone_name,
             'is_launch': True,
             'country': country,
             'is_real': is_real_boolean,
             'is_game_boolean': is_game_boolean
         }
         dweepy.dweet_for(self.controller_dweet_name, dweet_to_app)
         logging.debug("Drone launched!")
         self.drone_id_to_name[drone_id] = drone_name
     # If the dweet says that it is not a launch, disable the drone with the dweeted UUID
     else:
         self.stop_drone(drone_id)
         dweet_to_app = {
             'content': "Drone disabled",
             'droneID': drone_id,
             'drone_name': self.drone_id_to_name[drone_id],
             'is_launch': False,
             'country': "N/A",
             'is_real': is_real_boolean
         }
         dweepy.dweet_for(self.controller_dweet_name, dweet_to_app)
         logging.debug("Drone stopped!")
Пример #4
0
def push_score( thing, score, text ):
	dweepy.dweet_for(
		'%s-score' % thing, {
			'score': score,
			'text': text
		}
	)
Пример #5
0
def send_data(name, msg):
    """Send the collected data to Dweet.io."""
    import dweepy
    try:
        dweepy.dweet_for(name, msg)
    except dweepy.DweepyError:
        _LOGGER.error("Error saving data '%s' to Dweet.io", msg)
Пример #6
0
def exitHandler():
	print "Exiting"
        time.sleep(2)
        dweetiodatasource['alive'] = "0"
        dweetiodatasource['luxes'] =  0
        dweetiodatasource['message'] = "None"
        dweepy.dweet_for(dweetiothingname, dweetiodatasource)
	sys.exit(0)
Пример #7
0
def functionServicesDweet():
    while True:
        time.sleep(5)
        dweepy.dweet_for('InternetOfThings101Dweet', {'Status':'1'})
        print dweepy.get_latest_dweet_for('InternetOfThings101Dweet')
        time.sleep(5)
        dweepy.dweet_for('InternetOfThings101Dweet', {'Status':'0'})
        print dweepy.get_latest_dweet_for('InternetOfThings101Dweet')
Пример #8
0
def dataDweetHandler():   # Freeboard
    light = grove.GroveLight(0)
    data = {}
    while True:
        data['alive'] = "1"
        data['network'] = dataNetwork()
        data['light']   = light.value()
        dweepy.dweet_for('InternetOfThings101x00', data)
        time.sleep(5)
Пример #9
0
def functionDataSensor():
#    netdata = psutil.net_io_counters()
#    data = netdata.packets_sent + netdata.packets_recv
    temp = sensTH.readTemperature()
    hum = sensTH.readHumidity()
    lig = sensL.value()
    dweepy.dweet_for('IoT'+DeviceID, {'Temp':str(temp), \
'Hum':str(hum),'Lig':str(lig)})
    print dweepy.get_latest_dweet_for('IoT'+DeviceID)
Пример #10
0
 def test_dweet_for_with_an_invalid_key(self):
     """`dweet_for` with an invalid key should raise an exception.
     """
     try:
         dweepy.dweet_for(self.my_thing_id, test_data, key='badkey')
     except dweepy.DweepyError as e:
         self.assertEqual(e.args[0], 'the key you provided doesn\'t work with this thing')
     else:
         self.fail("shouldn't ever get called")
Пример #11
0
 def test_dweet_for_without_a_key(self):
     """`dweet_for` without a key should raise an exception.
     """
     try:
         dweepy.dweet_for(self.my_thing_id, test_data)
     except dweepy.DweepyError as e:
         self.assertEqual(e.args[0], 'this thing is locked and requires a key')
     else:
         self.fail("shouldn't ever get called")
Пример #12
0
def report(thing, key, data):
    """
    Publish a dweet for a thing.

    key is used to create an hmac
    """
    mac = calc_mac(key, json.dumps(data))
    packet = {'data': data, 'sig': mac}
    print('dweeting for {}!'.format(thing))
    dweepy.dweet_for(thing, packet)
Пример #13
0
def try_read_data(carriots_client):
    if radio.available():
        len = radio.getDynamicPayloadSize()
        receive_payload = radio.read(len)
        print('Got payload size={} value="{}"'.format(len, receive_payload.decode('utf-8')))
        values = receive_payload.split('|')
        dweet = {'temp1': float(values[0].decode()), 'temp2': float(values[1].decode()), 'pressure': float(values[2].decode()), 'humidity': float(values[3].decode())}
        print(dweet)
        dweepy.dweet_for(thing_name, dweet)
		msg_dict = {'protocol': 'v2', 'device': '*****@*****.**', 'at': 'now'}
		msg_dict['data'] = dweet
		carriots_client.publish(dumps(msg_dict))
Пример #14
0
def report_dweet(tempF):
	timestamp = create_timestamp()
	# print "At: {} it is {} degrees".format(timestamp,tempF)
	try:
		dweepy.dweet_for('orangemoose-moosetemp',{
			'sensor': "Mooseometer",
			'value': tempF,
			'unit': "degrees F",
			'time': timestamp,
		});
	except Exception, e:
		print e
Пример #15
0
 def test_dweet_for_alert(self):
     """`dweet_for` should not raise an exception no matter what alert condition is used
     """
     dweepy.set_alert(
         self.my_thing_id,
         ['*****@*****.**', '*****@*****.**'],
         test_alert_condition,
         test_key,
     )
     dweet = dweepy.dweet_for(self.my_thing_id, {'alertValue': 11}, key=test_key)
     check_valid_dweet_response(self, dweet, skip_content=True)
     dweet = dweepy.dweet_for(self.my_thing_id, {'alertValue': 5}, key=test_key)
     check_valid_dweet_response(self, dweet, skip_content=True)
     dweet = dweepy.dweet_for(self.my_thing_id, {'alertValue': 10}, key=test_key)
     check_valid_dweet_response(self, dweet, skip_content=True)
Пример #16
0
def exitHandler():
        global gServo, gTemp, myLcd, light, relay
	threadlcd.do_run = False
	threadlcd.join()
        print "Exiting"
        time.sleep(2)
        datafreeboard['alive'] = "0"
        datafreeboard['luxes'] = "0"
        datafreeboard['Temp'] = "0"
        datafreeboard['message'] = "System off"
        dweepy.dweet_for('domotics', datafreeboard)
        relay.off()
	gServo.setAngle(0)
        del gServo, gTemp, myLcd, light, relay
        os._exit(0)
Пример #17
0
def send(args):
    """write the message to the queue"""
    msgList = (' '.join(args.message)).split(";")
    payLoad = []
    for msg in msgList:
        logger.debug('Message: ' + msg)
        payLoad.append(msg)
    logger.debug('Payload: ' + json.dumps(payLoad))
    jsonPayLoad = {'message': payLoad}
    logger.info('Dweeting to ' + args.queue)
    try:
        dweepy.dweet_for(args.queue, jsonPayLoad)
    except dweepy.DweepyError as e:
        logger.exception('Failed dweeting')
        sys.exit(1)
Пример #18
0
	def dweet():
		if (DWEET_ENABLED):
			dweetData = {}

			dweetData['countTotal'] = len(Device.allDevices)
			dweetData['countInHouse'] = len(Device.devicesInHouse)			

			for device in Device.allDevices:
				dweetData[device.name] = {}
				dweetData[device.name]['visible'] = device.visible
				dweetData[device.name]['inHouse'] = device.inHouse
				dweetData[device.name]['secondsSinceLastLeave'] = round(device.secondsSinceLastLeave(), 0)
				dweetData[device.name]['secondsSinceLastJoin'] = round(device.secondsSinceLastJoin(), 0)
				dweetData[device.name]['secondsSinceLastVisible'] = round(device.secondsSinceLastVisible(), 0)

			dweepy.dweet_for(DWEET_THING_NAME, dweetData)
Пример #19
0
 def test_valid_dweet_for(self):
     """`dweet_for` should return a valid response.
     """
     my_thing_id = str(uuid.uuid4())
     dweet = dweepy.dweet_for(my_thing_id, test_data)
     check_valid_dweet_response(self, dweet)
     self.assertEqual(dweet['thing'], my_thing_id)
Пример #20
0
    def publish_status(self, target, temp, heater_percent, cooler_percent):

        if (datetime.now() - self._last_published).seconds < self._frequency:
            # Don't Dweet until the defined frequency has passed.
            return

        try:
            response = dweepy.dweet_for(
                self._thing_name,
                {
                    'temperature':  temp,
                    'target':       target,
                    'heater':       heater_percent,
                    'cooler':       cooler_percent,
                }
            )
        except Exception as err:
            raise OutputError(
                'Error publishing to Dweet API: {0}'.format(err))
        if response['this'] != 'succeeded':
            print response
            raise OutputError(
                'Error publishing to Dweet API: {0}'.format(response['this']))
        else:
            self._last_published = datetime.now()
Пример #21
0
def dumpToDweet(data):
    # dweetUrl = 'http://dweet.io:80/dweet/for/decisive-train/'
    info = {
        "user": "******",
        "genericName": data["product"]["generic_name"],
        "code": data["code"],
        "calories": data["product"]["nutriments"]["energy"],
    }

    dweepy.dweet_for("decisive-train", info)
    # resp = requests.post(dweetUrl, data=json.dumps(info), headers=headers)
    # print resp
    return {
        "user": "******",
        "genericName": data["product"]["generic_name"],
        "code": data["code"],
        "calories": data["product"]["nutriments"]["energy"],
    }
Пример #22
0
def send(args):
    """write the message to the queue"""
    msgList = (' '.join(args.message)).split(";")
    payLoad = []
    for msg in msgList:
        logger.debug('Message: ' + msg)
        payLoad.append(msg)
    logger.debug('Payload: ' + json.dumps(payLoad))
    jsonPayLoad = {'message': payLoad}
    logger.info('Dweeting to ' + args.queue)
    try:
        dweepy.dweet_for(args.queue, jsonPayLoad)
    # except dweepy.DweepyError as e:
    except dweepy.DweepyError:
        logger.exception('Failed dweeting')
        # FIXME Where does this exit come from?
        # Perhaps should be imported from sys?
        exit(1)
Пример #23
0
    def send(self, data):
        # send data to dweet

        try:
            response = dweepy.dweet_for(self.dweet_name, data)
        except Exception as exception:
            response = {'error': exception.message}

        return response
Пример #24
0
def uploadDweet():
    time_d = time.time()

    while(True):
        if(time.time()-time_d > 5):
            print "Sending data, " + str(time.time())
            time_d = time.time()
            while (redis_q.llen('queue') > 0):
                print "Queue len: %s" % redis_q.llen('queue')
                message = redis_q.blpop('queue')
                message_d = cPickle.loads(message[1])
                thing = message_d[0]
                data = message_d[1]
                try:
                    #pass
                    dweepy.dweet_for(thing, data)
                except:
                    print "Error dweepy"
            print "cleared queue"
def dataNetworkHandler():
               	i=0
		a=0
		b=15
		mqttclient = paho.Client()
		mqttclient.on_publish = on_publish
		mqttclient.connect("test.mosquitto.org", 1883, 60)
		while True:
			dataWeatherHandler()
			LcdShow="              "
			print bar0
			print "Hello Internet of Things 101"
			idDevice=GetMACAdress()		
                        myLcd.setColor(53, 39, 249)
                        packets = dataNetwork()
                        message = idDevice + " " + str(packets)
			print "dataNetworkHandler " + message
			print "MQTT dataNetworkHandler " + message
			pass0={'network':packets}
			dweepy.dweet_for('hvelazquezs',pass0)
			mqttmsg="IoT101/"+idDevice+"/Network"
			mqttclient.publish(mqttmsg,message)			
			LcdShow=('MAC: '+ idDevice)
			myLcd.setCursor(1,8) 
			myLcd.write(' CPU%'+str(psutil.cpu_percent()))
			myLcd.setCursor(0,0) 
			myLcd.write(LcdShow[a:b]) 
			myLcd.setCursor(1,0)
			myLcd.write('Pk:' + str(packets))
			data[i]=message
			a=a+1
			b=b+1
			i=i+1
			if (b>=23):
				a=0
				b=15
			
			if (i==16):
				i=0
		
			
			time.sleep(2)
def dataNetworkHandler():
    global idDevice 
    idDevice = GetMACAddress() # Make this a global variable
    mqttclient = paho.Client()
    mqttclient.on_publish = on_publish
    adaclient = MQTTClient(ADAFRUIT_IO_USERNAME, ADAFRUIT_IO_KEY)
    mqttclient.connect("test.mosquitto.org", 1883, 60)
    adaclient.connect()
    #adaclient.loop_background()
    while True:
        packets = dataNetwork()    
    	global message 
        message = idDevice + " " + str(packets)
    	#pdb.set_trace()
        print "dataNetworkHandler " + message
    	mqttclient.publish("IoT101/"+idDevice+"/Network", message)
    	adaclient.publish("IoT101/"+idDevice+"/Network", message)
	json = {'id':idDevice,'packets':int(packets)}
        dweepy.dweet_for('DataReportingSystem',json)
        time.sleep(3)
Пример #27
0
def dumpToDweet(data, aggrData, user):

    alert = isProhibited(data, user)
    info = getDefaultInfo(user)
    aggrData = getDefaultAggrDoc(aggrData)

    info = {
        "user": user,
        "genericName": data["product"]["product_name"],
        "code": data["code"],
        "calories": data["product"]["nutriments"]["energy"],
        "caloriesForToday": aggrData["caloriesForToday"],
        "carbsForToday": aggrData["carbsForToday"],
        "fatForToday": aggrData["fatForToday"],
        "proteinsForToday": aggrData["proteinsForToday"],
        "weekly_calories": "10,2,3,5,6,7,8",
        "alert": alert,
    }

    dweepy.dweet_for("decisive-train", info)
    return info
def sendTemperature(id, t, ws):
	value = {}
	update = {}
	temperature = {}
	sensorID = {}
	connectionType = {}
	device = {}

	# Generate an ISO 8601 timestamp for the data packet
	lognow = time.gmtime(time.time())
	timestamp = ( '{0}-{1:02d}-{2:02d}T{3:02d}:{4:02d}:{5:02d}Z'.
			format(lognow.tm_year,lognow.tm_mon,lognow.tm_mday,
			lognow.tm_hour,lognow.tm_min,lognow.tm_sec) )

	value["value"] = t
	value["unit"] = "degrees F"
	value["time"] = timestamp
	value["name"] = id
	update[".update"] = value
	temperature["temperature"] = update
	sensorID[id] = temperature
	connectionType["IP"] = sensorID
	device["device"] = connectionType

	# DEBUG: print "sending msg: ", json.dumps(device, indent=4)
	
	# Output what we sent (for logging purposes) 
	# print "{0},{1:.3f}".format(timestamp,t)
	logstring(timestamp + "," + str(t) + "\n")

	# Send the value to the server via our websocket
	ws.send(json.dumps(device))

	# Oh, and dweet the data while we're at it (for fun)
	dweepy.dweet_for('orangemoose-thingy', {
		'sensor': id,
		'value': t,
		'unit': "degrees F",
		'time': timestamp,
	});
def post(dic):
    thing = 'LauraPi'
    print(dweepy.dweet_for(thing, dic))
Пример #30
0
import psutil
import signal
import sys
import time

from flask import Flask, jsonify

app = Flask(__name__)

def ThingDataSensors():
    netdata = psutil.net_io_counters()
    return netdata.packets_sent + netdata.packets_recv

def ThingDataActuators():
    return "Thing Data Actuators"

def SignalHandler(signal, frame):
    sys.exit(0)

if __name__ == '__main__':

    signal.signal(signal.SIGINT, SignalHandler)

    while True:

         dweepy.dweet_for('DweetThingDataSensors', {'Sensors': ThingDataSensors()})
         dweepy.dweet_for('DweetThingDataActuators', {'Actuators': ThingDataActuators()})
         time.sleep(5)

# End of File
def post(dic):
    thing = 'ultra-rpi'
    print dweepy.dweet_for(thing, dic)
Пример #32
0
#                                                                              #
#    You should have received a copy of the GNU General Public License         #
#    along with this program.  If not, see <http://www.gnu.org/licenses/>.     #
################################################################################

import dweepy
import Adafruit_MCP3008
import time

## Software SPI setup
CLK = 11
MISO = 9
MOSI = 10
CS = 8
mcp = Adafruit_MCP3008.MCP3008(clk=CLK, cs=CS, miso=MISO, mosi=MOSI)


## Convert 10-bit ADC output to RGB friendly 0-255, store as variables
## NewValue = (((OldValue - OldMin) * (NewMax - NewMin) / (OldMax - OldMin)) + $

while True:
        red = (((mcp.read_adc(0) - 0) * (255 - 0)) / (1023 - 0)) + 0
        blue  = (((mcp.read_adc(2) - 0) * (255 - 0)) / (1023 - 0)) + 0
        green = (((mcp.read_adc(1) - 0) * (255 - 0)) / (1023 - 0)) + 0
	dweepy.dweet_for('pot-one', {'red': red})
	time.sleep(0.1)
	dweepy.dweet_for('pot-two', {'blue': blue})
	time.sleep(0.1)
	dweepy.dweet_for('pot-three', {'green': green})
	time.sleep(0.2)
Пример #33
0
        #else:
        #        print_id = 0
        text += "(" + str(print_id+1) + "/" + str(no_of_sensors) + ")"
        #text += sensor_names[print_id] + ": " + str(sensor_values[print_id])
        setText(text)

        if not data_available:
                setRGB(50, 50, 50)
                data_available = True

    #Try to dweet it
    try:
        dweepy.dweet_for('OpenData',
                                {'Sound': sound_level,
                                'Light': light_intensity,
                                'Temperature': temp,
                                'Humidity': hum,
                'WindDirection': wind_direction,
                                'Distance': distance,
                'Switch' : switch})

            dweepy.dweet_for('OpenData2',
                                {'Sound': sound_level+randint(0,50),
                                'Light': light_intensity+randint(0,100),
                                'Temperature': temp + +randint(0,5),
                                'Humidity': hum +randint(0,20),
                'WindDirection': wind_direction + randint(0,25),
                                'Distance': distance + randint(0,5),
                'Switch' : switch + +randint(0,1)})

    except:
        print " Dweetio exception"
Пример #34
0
def post(dict):
    thing = 'mike_ca'
    print dweepy.dweet_for(thing, dict)
    pass
Пример #35
0
                              }
                          }
                       }
                mqttc.publish("$aws/things/TARC/shadow/update", json.dumps(payload), qos=1)

#publish for dynamodb
                payload = {
                   "datetime": str(datetime.datetime.now()),
                   "temperature": str(temp_value),
                   "ldr": str(ldr_value)
                       }
                mqttc.publish("TARC/sensors", json.dumps(payload), qos=1)

#registro em arquivo
                arq.write(str(x)+" -> temp = "+str(temp_value)+", ldr = "+str(ldr_value))
                arq.write("\n")
                x = x + 1

                dweepy.dweet_for(
                'tarc',
                {
                    'datetime': time,
                    'temperature': temp_value,
                    'ldr': ldr_value,
                    'terremoto': terremoto,
                    'enchente': enchente,
                    'tempestade': tempestade,
                    'latitude': -23.581497,
                    'longitude': -47.526555,
                })
Пример #36
0
# Configuracion del puerto GPIO al cual esta conectado  (GPIO 23)
pin = 23

# Intenta ejecutar las siguientes instrucciones, si falla va a la instruccion except
try:
    # Ciclo principal infinito
    while True:
        # Obtiene la humedad y la temperatura desde el sensor
        humedad, temperatura = Adafruit_DHT.read_retry(sensor, pin)

        # Imprime en la consola las variables temperatura y humedad con un decimal
        print('Temperatura={0:0.1f}*  Humedad={1:0.1f}%'.format(
            temperatura, humedad))

        dweepy.dweet_for('sensor', {'temp': temperatura, 'humedad': humedad})
        {
            u'content': {
                u'temp': temperatura,
                'humedad': humedad
            },
            u'created': u'2019-03-18',
            u'thing': u'dht11'
        }

        # Duerme 10 segundos
        time.sleep(10)

# Se ejecuta en caso de que falle alguna instruccion dentro del try
except Exception as e:
    # Imprime en pantalla el error e
Пример #37
0
def post(dic):
    thing = 'get_your_own_thing'
    print dweepy.dweet_for(thing, dic)
Пример #38
0
def post(readings):
    thing = config.thing
    print dweepy.dweet_for(thing, readings)
Пример #39
0
def publish_dweepy(inverter):
  try:
    result = dweepy.dweet_for(config.dweepy_uuid,inverter)
    print("[INFO] Sent to dweet.io")
  except:
    result = None
Пример #40
0
def post(dic):
    thing='therapeutic-caption'
    #dweet.io
    print dweepy.dweet_for(thing, dic)
Пример #41
0
def send_update(metric,
                value):  #method for sending updates about metrics as needed.
    logger.debug("Sending update for {}: {}".format(metric, value))
    dweepy.dweet_for(configstuff['dweet_thing'], {metric: value})
Пример #42
0
				try: 
					curs.execute("INSERT INTO temppi (batchname, tempc, tempf, tstamp) VALUES(?, ?, ?, ?);", (batch, temp_c, temp_f, datetime.datetime.now() ) )
					conn.commit()
					last_temp[batch] = '{:0.4f}'.format(temp_c)
					print (" Logged temp in DB", end="")
				except sqlite3.Error as er:
					print (" Couldn't log temp into database: " + er.message, end="")
			if broadcast == 'true':
				dweet_packet[probecnt] = {'temp_f':'{:0.4f}'.format(temp_f), 'temp_c':'{:0.4f}'.format(temp_c), 'localtime':datetime.datetime.now().isoformat(), 'batch-id' : batch }	

			print ("")



	# End of active if statement

	if len(dweet_packet.keys()):
		try:
			dweet_key = get_key( find_dotenv(), 'DWEETY-KEY' ).lower()
			if dweet_key != '':
				dweepy.dweet_for( dweet_key, dweet_packet )	
				print (" Dweeted", end="")
		except:
			print (" Couldn't log temp to dweetly",sys.exc_info()[0], end="")

	print ("")
	freq = get_key( find_dotenv(), 'POLL-FREQ' )
	freq = int(freq) or int(15)

	time.sleep(freq)
Пример #43
0
    if retries == 9:
        return (0)
    # Split the text with new lines (\n) and select the second line.
    secondline = text.split("\n")[1]
    # Split the line into words, referring to the spaces, and select the 10th word (counting from 0).
    temperaturedata = secondline.split(" ")[9]
    # The first two characters are "t=", so get rid of those and convert the temperature from a string to a number.
    temperature = float(temperaturedata[2:])
    # Put the decimal point in the right place and display it.
    temperature = temperature / 1000
    temp = float(temperature)
    return (temp)


def get_ip():
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    s.connect(("8.8.8.8", 80))
    ip = s.getsockname()[0]
    s.close()
    return (ip)


while 1:
    reading = GetTemperature()
    ip = get_ip()
    #    values = (time.strftime('%d/%m/%Y %H:%M:%S'), reading)
    values = {"timestamp": time.time(), "temp": reading, "IP address": ip}
    dweepy.dweet_for("rpi_klima2", values)
    print values
    time.sleep(interval)
Пример #44
0
def print_image():
    if wireless.current() == printer_ssid:
        os.system("instax-print Intruder.jpeg -i 1111")
    else:
        switch_to_printer_network()


switch_to_robot_network()

try:
    response = dweepy.get_latest_dweet_for('misty')
    old_status = str(response[0]["created"])
    print("START:", old_status)
except:
    dweepy.dweet_for('misty', {'status': 'script_start'})
    time.sleep(2)

while True:
    try:
        time.sleep(1.5)
        response = dweepy.get_latest_dweet_for('misty')
        new_status = str(response[0]["created"])
        print("NOW:  ", new_status)
        if new_status != old_status:
            old_status = new_status
            print("Trigger Alarm")
            print("Preparing Image")
            prepare_image()
            print("Connecting to printer network")
            x = switch_to_printer_network()
Пример #45
0

def interruptHandler(signal, frame):
    sys.exit(0)


if __name__ == '__main__':
    signal.signal(signal.SIGINT, interruptHandler)

    touch = ttp223.TTP223(6)
    myLcd = lcd.Jhd1313m1(0, 0x3E, 0x62)
    button = grove.GroveButton(8)

    count = 0
    myLcd.setColor(0, 0, 255)

    # Read the input and print, waiting 1/2 second between readings
    while 1:
        contador = {}
        if button.value():
            count = count + 1
        if touch.isPressed():
            count = count - 1
        myLcd.setCursor(0, 0)
        myLcd.write('%6d' % count)
        contador["conteo"] = count
        dweepy.dweet_for("Legalileo_racso1290", contador)
        time.sleep(0.5)
    del button
    del touch
Пример #46
0
        GPIO.output(buzzer, GPIO.HIGH)
        while True:
            GPIO.output(redLED, GPIO.HIGH)
            time.sleep(0.1)
            GPIO.output(redLED, GPIO.HIGH)
    else:
        GPIO.output(buzzer, GPIO.LOW)
        while True:
            GPIO.output(greenLED, GPIO.HIGH)
            time.sleep(1)
            GPIO.output(greenLED, GPIO.HIGH)

    print('Distance = '), d, ('cm')

    buzzerStatus = GPIO.input(17)

    if buzzerStatus == True:
        buzzerSignal = True
    else:
        buzzerSignal = False

    iot_data = {
        'Distance': d,
        'systemName': 'Front Gate Detection System',
        'Buzzer': buzzerSignal
    }
    dweepy.dweet_for('distance_mark10', iot_data)
    time.sleep(0.1)

GPIO.cleanup()
Пример #47
0
                 'Vertical Speed' : truncate(vessel.vessel_vertical_speed),
                 }
                 
             'Orbit':{
                 'Vessel Periapsis' : vessel_periapsis,
                 'Vessel Apoapsis' : vessel_apoapsis,
                 'Time To Periapsis' : vessel_time_to_periapsis,
                 'Time To Apoapsis' : vessel_time_to_apoapsis,
                 }
                 
             'Resources':{
                 'EletricCharge Current' : truncate(vessel.resource_ec_current),
                 'EletricCharge Max' : truncate(vessel.resource_ec_max),
                 'Oxidizer Current' : truncate(vessel.resource_ox_current),
                 'Oxidizer Max' : truncate(vessel.resource_ox_max),
                 'MonoPropellant Current' : truncate(vessel.resource_mp_current),
                 'MonoPropellant Max' : truncate(vessel.resource_mp_max),
                 'LiquidFuel Current' : truncate(vessel.resource_lf_current),
                 'LiquidFuel Max' : truncate(vessel.resource_lf_max),
                 'SolidFuel Current' : truncate(vessel.resource_sf_current),
                 'SolidFuel Max' : truncate(vessel.resource_sf_max),
                 }
            
            
            }
 
 
 
 dweepy.dweet_for(thingId,myDweet)
 i += 1
 print ('\r'+'Still working alright, '+ str(i) + ' packets sent', end ='')
Пример #48
0
def SIGINTHandler(signum, frame):
	raise SystemExit

def exitHandler():
	print "Exiting"
        time.sleep(2)
        dweetiodatasource['alive'] = "0"
        dweetiodatasource['luxes'] =  0
        dweetiodatasource['message'] = "None"
        dweepy.dweet_for(dweetiothingname, dweetiodatasource)
	sys.exit(0)

atexit.register(exitHandler)
signal.signal(signal.SIGINT, SIGINTHandler)

if __name__ == '__main__':

    message = "Hello Xpuhil!"

    while True:

        luxes = light.value()

        dweetiodatasource['alive'] = "1"
        dweetiodatasource['luxes'] =  luxes
        dweetiodatasource['message'] = message
        dweepy.dweet_for(dweetiothingname, dweetiodatasource)

        time.sleep(2)
Пример #49
0
def SIGINTHandler(signum, frame):
	raise SystemExit

def exitHandler():
	print "Exiting"
        time.sleep(2)
        datafreeboard['alive'] = "0"
        datafreeboard['luxes'] =  0
        datafreeboard['message'] = "None"
        dweepy.dweet_for(datadweet, datafreeboard)
	sys.exit(0)

atexit.register(exitHandler)
signal.signal(signal.SIGINT, SIGINTHandler)

if __name__ == '__main__':

    message = "Hola Cacerola! I'm Xpuhil!"

    while True:

        luxes = light.value()

        datafreeboard['alive'] = "1"
        datafreeboard['luxes'] =  luxes
        datafreeboard['message'] = message
        dweepy.dweet_for(datadweet, datafreeboard)

        time.sleep(1)
Пример #50
0
        global gpsd
        while gpsp.running:
            gpsd.next()


if __name__ == '__main__':
    gpsp = GPSMain()
    try:
        gpsp.start()
        while True:
            os.system('clear')
            myDweet['latitude'] = gpsd.fix.latitude
            myDweet['longitude'] = gpsd.fix.longitude
            print
            print ' GPS Statistics'
            print '----------------------------------------'
            print 'latitude    ', gpsd.fix.latitude
            print 'longitude   ', gpsd.fix.longitude
            print 'time utc    ', gpsd.utc, ' + ', gpsd.fix.time
            print 'altitude (m)', gpsd.fix.altitude
            print 'speed (m/s) ', gpsd.fix.speed
            print '----------------------------------------'

            dweepy.dweet_for(sender, myDweet)
            time.sleep(3)  #set to whatever

    except (KeyboardInterrupt, SystemExit):  #when you press ctrl+c
        gpsp.running = False
        gpsp.join()  # wait for the thread to finish what it's doing
    print "Done.\nExiting."
Пример #51
0
def send_update(metric, value): #method for sending updates about metrics as needed.
    logger.debug("Sending update for {}: {}".format(metric, value))
    dweepy.dweet_for(configstuff['dweet_thing'], {metric: value})
Пример #52
0
def post(result):  #posts to dweet
    thing = get_file()
    print dweepy.dweet_for(thing, result)
Пример #53
0
def listener(publisher_thread):
    print "listener thread..."
    for dweet in dweepy.listen_for_dweets_from('canary30_iot'):
        global lights_state                         #declaring global variable for sensor and actuator states
        global motion_state
        global Pan_state
        global Tilt_state

        print "Got the dweet things"

        my_dweet = dweet                            #creating a new variable my_dweet
        content = my_dweet["content"]               #my_dweet contains "content" which has the JSON dweet values
        lights_state = content["lights"]            #String lights is declared to lights_state
        Pan_state = content["pan"]                  #String pan is declared to Pan_state
        Tilt_state = content ["tilt"]               #String tilt is declared to Tilt_state

        print "Contents opened"

        # Lights
        if lights_state == "true":                  #This if statement turns on lights if lights equals to true
            LEDRight.write(1)
            LEDLeft.write(1)
            print "Right light is ON"
            lights_state = "On"


        elif lights_state == "false":               #This if statement turns off lights if lights equals to false
            print "<<<Turn off Right Light>>>"
            LEDRight.write(0)
            LEDLeft.write(0)
            print "<<<Right light is OFF>>>"
            lights_state = "Off"

        # Pan Right
        if Pan_state == "true":                     # This if statement turns the camera right if equals to true
            servoPan.enable(False);
            servoPan.pulsewidth_us(500)
            servoPan.enable(True);
            time.sleep(1)
            servoPan.enable(False);
            print "Pan turnned right"
            Pan_state = "right"

        # Pan Center
        elif Pan_state == "false":                  # This if statement turns the camera facing forward if equals to false
            servoPan.enable(False);
            servoPan.pulsewidth_us(1200)
            servoPan.enable(True);
            time.sleep(1)
            servoPan.enable(False);
            print "Pan is looking forward"
            Pan_state = "center"


        # Pan left
        if Pan_state == "left":
            servoPan.enable(False);
            servoPan.pulsewidth_us(2000)
            servoPan.enable(True);
            LEDLeft.write(1)
            time.sleep(1)
            servoPan.enable(False);
            print "Pan turned left"
            Pan_state = "left"

        elif Tilt_state == "down":
            servoTilt.enable(False);
            servoTilt.pulsewidth_us(1050)
            servoTilt.enable(True);
            time.sleep(1)
            servoTilt.enable(False);
            print "Tilted DOWN"
            Tilt_state = "up"

        # Tilt camera Up
        if Tilt_state == "true":
            servoTilt.enable(False);
            servoTilt.pulsewidth_us(650)
            servoTilt.enable(True);
            time.sleep(1)
            servoTilt.enable(False);
            print "Tilted UP"
            Tilt_state = "up"

        # Straighten camera
        elif Tilt_state == "false":
            servoTilt.enable(False);
            servoTilt.pulsewidth_us(850)
            servoTilt.enable(True);
            time.sleep(1)
            servoTilt.enable(False);
            print "Camera Level"
            Tilt_state = "straight"


        # PIR Motion Sensor
        if pir.value():                                     #The Motion sensor sends its values to canary30_iot
            print "***Motion is ON***"
            result = dweepy.dweet_for('canary30_pir', {'pir': "true"})
            print result
            dict= pir.value()

            # saves data to a local file (Canary_Backup_Data.txt) only when motion was detected
            backupFile = open('Canary_Backup_Data.txt', 'a')
            stringToWrite = str(dict)
            timeToWrite = datetime.datetime.now().strftime(dateString)
            backupFile.write(timeToWrite + " " + stringToWrite + '\n')
            backupFile.close()


        else:
            print "<<<Moton is OFF>>>"
            result = dweepy.dweet_for('canary30_pir', {'pir': "false"})
            print result
            time.sleep(2)


        if publisher_thread.is_alive():         # Activate or continue publisher
            print "Yes it is alive"
        else:
            publisher_thread.start()
Пример #54
0
def interruptHandler(signal, frame):
    sys.exit(0)


if __name__ == '__main__':
    signal.signal(signal.SIGINT, interruptHandler)

    touch = ttp223.TTP223(6)
    myLcd = lcd.Jhd1313m1(0, 0x3E, 0x62)
    button = grove.GroveButton(8)

    count = 0
    myLcd.setColor(0, 0, 255)

    # Read the input and print, waiting 1/2 second betweenreadings
    while 1:
        if button.value():
            count = count + 1
        if touch.isPressed():
            count = count - 1
        myLcd.setCursor(0, 0)
        myLcd.write('%6d' % count)
        time.sleep(0.5)
        dic = {}
        dic["cont"] = count
        dweepy.dweet_for("Aracelis", dic)
        time.sleep(1)

    del button
    del touch