微信公众号在VFP开发其实非常容易,跟着猫猫的节奏走就一定能走通,当然也少不了猫框的加持,很多老狐其实抱着开放的心态去接触新的东西,才会发现世界也就不一样了。
公众号的类型
服务号:为企业和组织提供更强大的业务服务与用户管理能力,主要偏向服务类交互(功能类似12315,114,银行,提供绑定信息,服务交互的);
适用人群:媒体、企业、政府或其他组织。
群发次数:服务号1个月(按自然月)内可发送4条群发消息。
订阅号:为媒体和个人提供一种新的信息传播方式,主要功能是在微信侧给用户传达资讯;(功能类似报纸杂志,提供新闻信息或娱乐趣事)
适用人群:个人、媒体、企业、政府或其他组织。
群发次数:订阅号(认证用户、非认证用户)1天内可群发1条消息。
1)如果想用公众平台简单发发消息,做宣传推广服务,建议可选择订阅号;
2)如果想用公众平台进行商品销售,建议可选择服务号,后续可认证再申请微信支付商户
开发当然使用测试号,无门槛,手机扫码就可以申请。
让你的微信公众号能够回复消息
用户打开公众号,在底部对话框发文字,你的程序接收处理

公众号对话图片
测试号开发的准备工作
1 申请测试号
https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login7
2 申请一个内网穿透账号〔有云服务器就在云服务器开发就不用内网穿透了〕
3 配置好端口转发, qiyusoft.free.idcfengye.com :80->127.0.0.1:801
qiyusoft 为你自己申请的子域名。
4 运行猫框环境设置,打开调试服务器。
5 打开浏览器,输入http://qiyusoft.free.idcfengye.com/a1send.fsp?proc=send,如果有响应,说明内网穿透成功。

微信后台配置

微信后台设置
域名填写二级域名即可

回调URL
填写刚刚内网穿透的域名和实际调用的类
猫框设置
wxsetting.dbf填写上图中的appid,appsercert,appuser 填写自己喜欢的名字,我这里填写bluesky;
编写一个微信响应后台程序
*微信自动回复默认调用Answermsg, DoAnyThing为勾子方法Define Class ctl_wxcenter2 As weixinApi Of Locfile("weixinApi.prg")*-- 事件处理中心 返回XML消息格式,或返回空消息,再调用主动接口Procedure DoAnythingLparameters ToUserName,FromUserName,MsgText,MsgType,MsgId?msgtxtEndprocEnddefine
框架约定类名等于文件名,保存为ctl_wxcenter2.prg controller目录
现在往微信测试号发一条消息
可以看到,我们的程序响应了,把消息内容显示出来了,它是XML格式提示故障,是因为我们没有回复它的消息

响应

如何回复一条信息呢
Procedure DoAnythingLparameters ToUserName,FromUserName,MsgText,MsgType,MsgIdlcContent="感谢关注麦熊科技,你将收到消费、充值时"*-- text消息格式 注意 收发人是要转过来TEXT TO lcMSG NOSHOW TEXTMERGE PRETEXT 1+2<xml><ToUserName><![CDATA[<<FromUserName>>]]></ToUserName><FromUserName><![CDATA[<<ToUserName>>]]></FromUserName><CreateTime><<Tton(DATETIME())>></CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[<<lcContent>>]]></Content></xml>ENDTEXTReturn lcMSGEndproc

开发完成,就是这么简单,你也可以根据接收到的消息,回复不回的内容啦。
各位狐友看到这里,有没有觉得代码很爽,只需要写一点点代码,我们就能够与公众号对话啦。这就是使用框架的努力,很多人问用框架会不会限制住自己的手脚,框架本身是没有实体的,你原来是什么开发习惯,基本也是一致,只不过在BS不要用messagebox,wait 等打断程序运行的指令就好。
744

被折叠的 条评论
为什么被折叠?



