使用gtalk来控制内网的派
对于像我这样没有外网ip的童鞋来说.如果你有一台外网的linux服务器还能控制..如果一点外网资源都没有的情况下.怎样来远程控制树莓派呢?答案是使用gtalk...优点是随便找一个gtalk客户端就能控制树莓派并且不用外网IP的哦....
start....
1. 依赖包:xmpppy和pydns
http://xmpppy.sourceforge.net/
http://pydns.sourceforge.net/
下载完以后。安装
python setup.py install
2. 附件解压出来有三个文件
HomeCenter.py processmsg.py PyGtalkRobot.py
只需要打开HomeCenter.py 修改开头的
gtalk_account = 'username@gmail.com'
gtalk_password = 'password'
为你的gtalk账号密码
3. 修改管理员的gtalk账户
修改可以发送命令的管理员gtalk账户
processmsg.py文件中.找到164行上下...把hackers365@gmail.com 修改为你的可以控制的gtalk账户.这个账户发送的命令会被执行.
def command_999_default(self, user, message, args):
"""(.*?)(?s)(?m)"""
if user.getStripped() == 'hackers365@gmail.com':
self.execute_cmd(user, message, message)
4. 运行
如果安装了screen则把它丢进screen执行
screen -dmS robot python HomeCenter.py
没有安装screen 则直接运行
python HomeCenter.py &
5. 扩展
如果你想扩展自己的功能.只需要修改processmsg.py文件
在
def command_999_default(self, user, message, args):
"""(.*?)(?s)(?m)"""
if user.getStripped() == 'hackers365@gmail.com':
self.execute_cmd(user, message, message)
下边添加以'command_优先级_名称'命名的方法名称.在文件字符串中修改要匹配的正则表达式就OK了.
例:
def command_100_new_test(self, user, message, args):
'''^\s*/\s+(\S+)\s*$'''
if user.getStripped() == 'hackers365@gmail.com':
self.execute_cmd(user, message, message)
这是匹配
/d /tmp/1.txt
的正则.你就可以在gtalk中发送/d /tmp/1.txt 然后做你想要的处理了...
附件:
使用gtalk来控制内网的派
这个怎没人交流呢?使用gtalk来控制内网的派
很牛使用gtalk来控制内网的派
如果你能控制路由器的话,人是可以动态ip转为静态域名的。当然Gtalk也是一种非实时控制方法
使用gtalk来控制内网的派
GTalk在国内似乎十分容易不好用。。。使用gtalk来控制内网的派
这么牛?!!!!!!!使用gtalk来控制内网的派
看不太懂。。。能不能写的详细点?使用gtalk来控制内网的派
感谢楼主分享使用gtalk来控制内网的派
那按这种思路,可以做一个WebQQ的客户端在 pi上跑着, 登陆一个自己的QQ,然后在自己的另一个QQ上给这个QQ发消息,pi收到消息之后,做相应的动作...
而且不用GTalk,不更稳定嘛. :lol 很实用的教程,适合没有公网ip的用户。
页:
[1]