大作业三 通过pcduino控制linkspriteIO平台进而对LinkNode R4/R8的继电器进行设置

实验目的

进一步熟悉pcDuino,熟练掌握pcduino中的命令行编程的相关方法,了解spriteIO平台的数据更新方法。

实验内容

通过使用pcDuino上的命令行编程,来编写出能够更新spriteIO平台上数据的方法程序,运行后更新spriteIO上的数据进而能够对LinkNode R4/R8进行有效的控制,实现能够远程操控LinkNode R4/R8的继电器开关的作用。

实验要求

可以在pcduino中使用shell编程,java,python等语言编程,不过需要做出友好的ui交互界面,并完善各种功能,比如:基础的开关设置,定时开关设置,添加linknode断网的情况下的默认处理等。如果会编写android程序的,也可以通过手机app来实现以上的功能。

附录

向linkspriteIO平台发送post请求操作的python源码:

#!/usr/bin/env python
# -*- coding:UTF-8 -*-

import urllib
import urllib2
import json
deviceID="xxxxxxxx"
apikey = "xxxxxxxxxxxxxxxxxxxxx"

s = "s"
door = "door"
PIR = "pir"
Leak = "leak"
Smoke = "smoke"
Remote = "remote"

def http_post(data):
    try:
        url = 'http://www.linksprite.io/api/http'
        jdata = json.dumps(data)
        req = urllib2.Request(url, jdata)
        req.add_header('Content-Type','application/json')
        response = urllib2.urlopen(req)
        return response.read()
    except urllib2.URLError:
        print "connect failed"
        return "connect failed"
        pass
values ={
    "action":"update",
    "apikey":apikey,
    "deviceid":deviceID,
    "params":
    {
        "Door":door,
        "PIR":PIR,
        "Leak":Leak,
        "Smoke":Smoke,
        "Remote":Remote,
        "SOS":s
    }}
print http_post(values)

results matching ""

    No results matching ""