1

我有一个带有用户定义菜单界面的微信服务帐户,该界面以富媒体消息进行响应。菜单和响应功能但很慢而且有点碰碰运气。在将服务器配置部署到微信时,我注意到类似的命中和未命中效果。所有这一切使我的菜单响应变得笨拙而且有时毫无用处。我正在使用 if..else 语句,因为它们在命中/未命中部分给出了最好的结果,但由于菜单很大,因此需要很长时间。这是在 PHP 中处理我的菜单事件的最可靠方法的示例

$body = file_get_contents('php://input');
$obj = simplexml_load_string($body);
$key = $obj->EventKey; 
$fromUser=$obj->FromUserName;
$toUser=$obj->ToUserName;
if($key == "button_001"){
    //respond to the event
}else if($key == "button_002"){
    //respond to the event
}

我省略了验证,因为它与教程和文档中的相同。任何帮助,将不胜感激。

4

2 回答 2

2

我遇到了类似的问题,只是响应消息(没有菜单)。我不明白为什么我的解决方案有效,但对我来说解决问题的是

1)注释掉responseMsg()代码并通过微信验证,
2)然后,注释掉valid()代码并取消注释我的responseMsg( ) 线。
3)神奇地,我没有更多的命中或错过,也没有延迟响应......

1.

$wechatObj->valid();
//$wechatObj->responseMsg();

1a.通过微信后台验证代码

2.将代码保存为实时部署:

//$wechatObj->valid();
$wechatObj->responseMsg();
于 2014-06-25T10:05:06.810 回答
1

请注意,我们正在努力找出您遇到此问题的确切原因,并将尽快更新此帖子!我回答时腾讯正在研究这个问题。

你可以尝试两件事。

  1. 现在实施推送消息,因为它们 100% 可靠 - http://admin.wechat.com/wiki/index.php?title=Customer_Service_Messages
  2. 请从托管在香港或中国的服务器上进行测试
于 2014-05-22T20:30:49.947 回答