2017-02-03 26 views
-2

Мне нужен код для получения данных из bluemix, который посылается этим кодомполучение данных от IBM bluemix в питона код

import RPi.GPIO as GPIO 
import dht11 
import time 
import datetime 
import ibmiotf.device 

# initialize GPIO 
GPIO.setwarnings(False) 
GPIO.setmode(GPIO.BCM) 
GPIO.cleanup() 

1 
client.connect() 



# read data using pin GPIO4 
instance = dht11.DHT11(pin=4) 

while True: 
    result = instance.read() 
    if result.is_valid(): 
     print("Last valid input: " + str(datetime.datetime.now())) 
     temp=(" %d C" % result.temperature) 
     print("temperature:" +temp) 
     humid=("%d %%" % result.humidity) 
    print("Humidity:" +humid) 
     # print("Temperature: %d C" % result.temperature) 
     # print("Humidity: %d %%" % result.humidity) 
     print("Data is published into the cloued") 
     Data={'Temperature' :temp, 'Humidity' :humid } 
     client.publishEvent("status", "json", Data) 

    time.sleep(1) 
+0

Опишите, что вы достигли, и расскажите нам больше о проблеме. Этот вопрос требует редактирования. –

+0

из этого кода я отправил данные в bluemix i.e. {"temp": "34 c", "влажность": "35"}. поэтому теперь я хочу получить те же данные с устройства iot в bluemix, чтобы мой код на Python. –

+0

Добро пожаловать в stackoverflow. К сожалению, ваш вопрос не соответствует критериям качества и, вероятно, будет закрыт. См. Http://stackoverflow.com/help/how-to-ask, а затем отредактируйте свой вопрос. –

ответ

0

вы можете использовать NodeRed, чтобы добавить узел (вставка, функция, iotout) для публикации данные на платформу iot (опубликовать ее как тип устройства) в тему, а затем в PI с pyhton подписаться на эту тему как приложение ..., которое должно работать нормально. Все сведения о подключении/публикации/подписке/реквизитах можно найти здесь: https://console.ng.bluemix.net/docs/services/IoT/index.html

+0

Мне нужен только код подписки на указанный код –

0

Вы подключаетесь как устройство ->import ibmiotf.device. Устройство может отправлять событиям и получать команды. Он не может принять события. Для этого вам необходимо подключиться как приложение. Вы будете import ibmiotf.application и иметь что-то вроде:

options = ibmiotf.application.ParseConfigFile(configFilePath) 
appClient = ibmiotf.application.Client(options) 

appClient.connect() 
appClient.subscribeToDeviceEvents() 

конфигурационный файл должен быть как:

[application] 
org=orgId 
id=myApplication 
auth-method=apikey 
auth-key=key 
auth-token=token 

Где ключ аутентификации/аутентификации-маркер приходит из Apps часть вашей платформы. Вам нужно будет создать набор для подключения в качестве приложения. Авт-метод следует оставить как apikey.

Это список всех событий, которые приходят на вашу платформу. Вы можете сделать его более зернистым. См. api guide, который также ссылается на пример приложения на github.

+0

, это нормально, но как я могу получить эту информацию обратно на python и отображаться на консоли –

+0

Вы даже попробовали? Вам нужно будет приложить больше усилий в свои вопросы, или вы найдете их закрытыми. Вы, кажется, не приложили к этому никаких усилий! – amadain

+0

Я пробовал, но он предоставит дату, идентификатор устройства, тип устройства, подобные этим деталям, но мне нужны данные json, которые хранятся в вышеуказанной программе ... –