07 实例讲解微信公众号开发-二维码信息识别

二维码信息识别

二位码现在随处可见,使用手机扫码可以非常方便获取到信息,减少手工输入的麻烦,每本书上也有二维码信息(图书上大部分是条形码信息),一般在书的背面。图书的条形码信息中主要包含了图书的ISBN,ISBN的具体含义说明请自行百度,这里不多介绍。

07 实例讲解微信公众号开发-二维码信息识别_第1张图片
bookisbn.png

扫码消息格式

开发者文档中对扫码消息格式说明如下:
推送XML数据包示例:







1480516329

















参数说明:

参数 描述
ToUserName 开发者微信号
FromUserName 发送方帐号(一个OpenID)
CreateTime 消息创建时间 (整型)
MsgType 消息类型,event
Event 事件类型,scancode_waitmsg
EventKey 事件KEY值,是一个32位无符号整数,即创建二维码时的二维
ScanCodeInfo 二维码具体信息

调起微信测试号里面的扫码藏书菜单,扫描图书背面的条形码就可以获得图书的ISBN信息,其中前面7位是条形码的类型信息EAN_13,后面几位是具体的值。

这个地方只是简单的将这个值反馈给公众号界面,后续介绍怎么通过这个isbn获取图书的具体信息。

代码如下

private function receiveEvent($object) {
$content = "";
switch ($object->Event) {
case "subscribe":
$content = "欢迎关注wxbook公众号!";
break;
case "unsubscribe":
$content = "谢谢关注wxbook公众号!";
break;
case "scancode_waitmsg":
$isbn = substr($object->ScanCodeInfo->ScanResult, 7);
/*将isbn反馈到微信公众号上*/
$content = "isbn:".$isbn;
break;
default:
$content = "receive a new event: " . $object->Event;
break;
}
$result = $this->transmitText($object, $content);
return $result;
}

显示的结果如下:
07 实例讲解微信公众号开发-二维码信息识别_第2张图片
qrcode.png

你可能感兴趣的:(07 实例讲解微信公众号开发-二维码信息识别)