微信机器人开发教程 php,WechatRobot: 极客微信开发 - PHP微信服务号机器人开发包,提供一个便捷的PHP的微信开发包,从而可以让开发人员轻松在自己想要的框架上进行微信开发,体验微信开...

#[极客开发]WechatRobot - PHP微信机器人开发包

首先,欢迎使用WechatRobot!

其次,这是一个很简单的开包,但可以协助您快速进行微信开发!

最后,Here We Go!

利用这个短而美的微信包,您可以使用你原来熟悉或者喜欢的框架来进行微信开发。

##一进,一出,一机器人

结构很简单:一进,一出,一机器人。用文字UML图表示是:

Wechat_InMessage ---- (A)Wechat_Robot ---- (A)Wechat_OutMessage

e764f3ebb0f106635b3b5b40b06a6da6.png

##使用示例

####1. 实现自己的机器人

//$ vim ./examples/MyRobot.php

require dirname(__FILE__) . '/../Wechat/Robot.php';

class MyRobot extends Wechat_Robot {

protected function handleText($inMessage, &$outMessage)

{

$outMessage = new Wechat_OutMessage_Text();

$outMessage->setContent('Hello World!');

}

//...

}

####2. 统一入口文件

//$ vim ./examples/index.php

/**

* 微信统一入口

*

* @author: dogstar 20150122

*/

/** ------ 如果是首次接入微信,请将下面注释临时去掉 ------**/

// echo $_GET['echostr'];

// die();

if (!isset($GLOBALS['HTTP_RAW_POST_DATA'])) {

die('Access denied!');

}

require_once dirname(__FILE__) . '/MyRobot.php';

try {

$robot = new MyRobot('YourTokenHere...', true);

$rs = $robot->run();

echo $rs;

} catch (Exception $ex) {

//TODO: 出错的处理

}

##快速请求

在部署好环境后,用随便输入一个文本内容,即可以微信上看到这样的效果:

1630110534.jpg

同时,也可以快速执行下面的命令来模拟请求:

//$ vim ./examples/test.php

//假装微信请求

echo "模拟发送一条文本消息,内容为:\n一个人\n\n";

$GLOBALS['HTTP_RAW_POST_DATA'] = '

1419757723

6097812988731466682

';

echo "返回给微信的报文是:\n";

require_once dirname(__FILE__) . '/index.php';

echo "\n\n";

执行一下:

$ php ./test.php

模拟发送一条文本消息,内容为:

一个人

返回给微信的报文是:

1422027410

0

##单元测试

我们不仅提供可以重用的代码,更希望可以把最佳实践分享给大家。所以,在这里,依然,可以看到我们坚持单元测试的身影。

感兴趣的同学可以看下对应的单元测试代码。

[tests]$ tree

.

└── Wechat

├── OutMessage

│   ├── Wechat_OutMessage_Image_Test.php

│   ├── Wechat_OutMessage_News_Test.php

│   └── Wechat_OutMessage_Text_Test.php

├── Wechat_InMessage_Test.php

└── Wechat_Robot_Test.php

##目录结构

代码很简洁,也很容易理解。我们没有提供过多的功能,因为我们相信:少即是多。

只是对微信的接收、回应做了高层的抽象,即对规约层做了统一,便于各开发人员在自己原有的框架基础上快速引入进行微信开发。

[Wechat]$ tree

.

├── InMessage.php

├── OutMessage

│   ├── Image.php

│   ├── Music.php

│   ├── News

│   │   └── Item.php

│   ├── News.php

│   ├── Text.php

│   ├── Video.php

│   └── Voice.php

├── OutMessage.php

├── Plugin

│   ├── DeviceEvent.php

│   ├── DeviceText.php

│   ├── Event.php

│   ├── Image.php

│   ├── Link.php

│   ├── Location.php

│   ├── Text.php

│   ├── Video.php

│   └── Voice.php

└── Robot.php

3 directories, 19 files

##帮助

如有问题,欢迎交流,谢谢!

同时,感谢LaneWeChat,因为部分内容参考于它:http://www.oschina.net/p/lanewechat

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
环境要求 PHP >= 7.0 PHP fileinfo 拓展 储存文件需要用到 PHP gd 拓展 控制台显示二维码 PHP posix 拓展 控制台显示二维码(linux) PHP 系统命令 拓展 执行clear命令 PHP SimpleXML 拓展 解析XML 安装 请确保已经会使用composer! 运行微信的语言设置务必设置为简体中文!!否则可能出现未知的错误! 1、git git clone https://github.com/HanSon/vbot.git cd vbot composer install 2、composer composer require hanson/vbot 运行 正常运行 php example/index.php 带session运行 php example/index.php --session yoursession 关于session : 带session运行会自动寻找设定session指定的cookies,如不存在则新建一个文件夹位于 /tmp/session 中,当下次修改代码时再执行就会免扫码自动登录。 如果不设置,vbot会自动设置一个6位的字符的session值,下次登录也可以直接设定此值进行面扫码登录。 PS:运行后二维码将保存于设置的缓存目录,命名为qr.png,控制台也会显示二维码,扫描即可(linux用户请确保已经打ANSI COLOR) 警告!执行前请先查看index.php的代码,注释掉你认为不需要的代码,避免对其他人好友造成困扰 请在terminal运行!请在terminal运行!请在terminal运行! 目录结构 vbot demo (vbot 当前在运行的代码,也欢迎大家提供自己的一些实战例子) example (较为初级的实例) src (源码) tmp (假设缓存目录设置在此) session hanson (设定值 php index.php --session hanson) 523eb1 (随机值) users 23534234345 (微信的UIN值) file (文件) gif (表情) jpg (图片) mp3 (语音) mp4 (视频) contact.json (联系人 debug模式下存在) group.json (群组 debug模式下存在) member.json (所有群的所有成员 debug模式下存在) official.json (公众 debug模式下存在) special.json (特殊账 debug模式下存在) message.json (消息) 体验 扫码后,验证输入“echo”即可自动加为好友并且拉入vbot群。 vbot并非24小时执行,有时会因为开发调试等原因暂停功能。如果碰巧遇到关闭情况,可加Q群 492548647 了解放时间。执行后发送“拉我”即可自动邀请进群。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值