最後發現所要做的工作就是做個小機器人。
下面就談談做這個所謂機器人的過程,隨便分享一下此過程所遇到的問題,以便大家分享交流。
第一步:微信公衆平臺會要求你提供一個URL,以便推送消息給開發者,此URL目前只支持80端口(由此想到apache服務器,繼續想到優先選擇php語言開發)。
第二步:signature校驗,本人不善php,找google,so很容易找到一端php code.邏輯簡單易懂,瞬間copy放到服務器上。URL提交,pass。
下面就是寫業務邏輯了。於是先給兩個選項玩玩:
1.points
2.amounts
於是就有了下面的代碼
<?php
/**
* 如果你有其他功能需要,你可直接在 weixin.class.php 類中新增你需要的方法
* 該 Demo 採用[指令分類]@[指令字符] 來實現多功能回覆
* 作者:@lxm
* 時間:2013.7.05
*/
date_default_timezone_set("PRC");
include ("weixin.class.php");
include ("util.class.php");
include ("mysql.class.php");
header ( "Content-type: text/html; charset=utf-8" );
$postStr = $GLOBALS ["HTTP_RAW_POST_DATA"];
$weixin = new Weixin ( $postStr );
$mysql = new mysql();
$util = new Util();
$keyword = $weixin->load_keyword ();
$weixin->traceHttp();
//命令處理
$command = $keyword;
if (!empty( $command )) {
switch ($command) {
case "Hello2BizUser":
echo $weixin->creat_xml_response ($weixin->get_message('CN','welcome'));
break;
case "1" :
$text="您的積分爲0.0";
echo $weixin->creat_xml_response ($text);
break;
case "2":
$text="您的餘額爲0.0";
echo $weixin->creat_xml_response ($text);
break;
case "?"://help
$text = $weixin->get_message('EN','help');
echo $weixin->creat_xml_response ($text);
break;
default :
$text = $weixin->get_message('EN','error');
echo $weixin->creat_xml_response ($text);
break;
}
}
?>
玩了玩,看起來還不錯。
所謂的機器人就是這個樣子。
現在困擾偶的一個問題就是如何做多級菜單的問題。本來應該是挺簡單的一個問題,但是由於本人對php不太擅長,故而十分困惑。希望各位有識之士,能夠解答一二,現在此拜上。
1.points
1.input cardnumber
2.return
2.amount
1.input cardnumber
2.return