如何从Android应用程序将命令重定向到覆盆子?

时间:2014-12-26 20:58:13

标签: node.js

我有一个VPS的试用版,我想用它作为服务器将命令从智能手机发送到树莓。

我使用http向VPS发送请求,但如何将从智能手机收到的命令重定向到树莓?

1 个答案:

答案 0 :(得分:2)

您可以使用Python编写客户端脚本,该脚本每2秒(或其他时间)读取VPS的响应并执行所需的命令。 E.g。

客户端脚本(read.py)

#client example

import socket, time
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect(('theVPSip', 80)) # port 80 by default
TIME = 2 # amount of time to wait. Do not saturate VPS server
while 1:
    time.sleep(TIME)
    data = client_socket.recv(512)
    print "RECIEVED:" , data
    import subprocess
    process = subprocess.Popen(bashCommand.split(), stdout=subprocess.PIPE)
    output = process.communicate()[0]

服务器端脚本

根据您编码的语言,您将使用不同的语法(当然)。但我会告诉你你需要做什么:

  1. 将Raspberry IP注册到变量中(仅限第一次,试验,然后将其修复)
  2. 在数据库中注册待发送命令
  3. 检查请求是来自RPi还是来自手机。
    1. RPi->发送命令以纯文本形式返回执行
    2. 电话 - >将数据(从POST / GET请求中获取)注册到数据库
  4. 我想你可以使用其他模型与raspberry通信,但你需要对服务器有更大的控制,并能够运行那种套接字连接的脚本(例如使用Python / Java)