风中摆酷 发表于 2012-12-1 16:35:22

使用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 然后做你想要的处理了...


附件:

树老大 发表于 2013-1-22 14:43:42

使用gtalk来控制内网的派

这个怎没人交流呢?

♂似水流年♀ 发表于 2013-1-22 23:31:33

使用gtalk来控制内网的派

很牛

wyyyh 发表于 2013-1-28 11:38:41

使用gtalk来控制内网的派

如果你能控制路由器的话,人是可以动态ip转为静态域名的。
当然Gtalk也是一种非实时控制方法

zx0319 发表于 2013-2-8 11:33:22

使用gtalk来控制内网的派

GTalk在国内似乎十分容易不好用。。。

树老小 发表于 2013-2-10 00:52:47

使用gtalk来控制内网的派

这么牛?!!!!!!!

ィmelody 发表于 2013-2-23 00:40:56

使用gtalk来控制内网的派

看不太懂。。。能不能写的详细点?

小猫头巾 发表于 2013-2-28 20:22:13

使用gtalk来控制内网的派

感谢楼主分享

asdfasdfasdfasf 发表于 2013-8-7 18:08:38

使用gtalk来控制内网的派

那按这种思路,可以做一个WebQQ的客户端在 pi上跑着, 登陆一个自己的QQ,
然后在自己的另一个QQ上给这个QQ发消息,pi收到消息之后,做相应的动作...
而且不用GTalk,不更稳定嘛.   :lol

avtxx 发表于 2014-11-25 19:17:30

很实用的教程,适合没有公网ip的用户。
页: [1]
查看完整版本: 使用gtalk来控制内网的派