wechat公众号共3篇
微信公众号,用户消息接收与回复-辛达科技-一个只分享技术的站

微信公众号,用户消息接收与回复

当用户在公众号内发送消息时,我们可以在服务器配置完好的前提下,通过相关代码,接收用户发送的信息,并予以相应的回复!代码如下 <?php // 接收用户发送消息(二选一) // $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];//全局变量 存的用户的发送的信息 $postStr = file_get_contents("php://input"); // 但是有的服务器 如果使用 $GLOBALS 接不到值 使用 // 存储用户发送的消息 file_put_contents('data.txt',$postStr); $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);// 数据对象 $fromUsername = $postObj->FromUserName; // 发送者 信息 $toUsername = $postObj->ToUserName; // 接受者 信息 公众号 $msgtype = $postObj->MsgType; // 获取消息的类型 $keyword = trim($postObj->Content); // 接收发送的文本 $EventKey = $postObj->EventKey; // 获取click事件的值 公众号 // 按键回复 if($EventKey == 'music'){ echo '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[music]]></MsgType> <Music> <Title><![CDATA[我要找到你]]></Title> <Description><![CDATA[《我要找到你》是由陈明演唱的一首歌]]></Description> <MusicUrl><![CDATA[https://music.163.com/outchain/player?type=2&id=212964&auto=1&height=66]]></MusicUrl> <HQMusicUrl><![CDATA[https://music.163.com/outchain/player?type=2&id=212964&auto=1&height=66]]></HQMusicUrl> </Music> </xml>'; } // 接收消息回复 switch($keyword){ case 1: // 回复文本 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[世界很大,我想去看看]]></Content> </xml>'; break; case 2: // 回复图片消息 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[image]]></MsgType> <Image> <MediaId><![CDATA[通过素材管理中的接口上传多媒体文件,得到的图片id]]></MediaId> </Image> </xml>'; break; case 3: // 回复语音消息 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[voice]]></MsgType> <Voice> <MediaId><![CDATA[通过素材管理中的接口上传多媒体文件,得到的语音消息id]]></MediaId> </Voice> </xml>'; break; case 4: // 回复视频消息 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[video]]></MsgType> <Video> <MediaId><![CDATA[通过素材管理中的接口上传多媒体文件,得到的视频消息id]]></MediaId> <Title><![CDATA[那些年]]></Title> <Description><![CDATA[回不去的曾经!]]></Description> </Video> </xml>'; break; case 5: // 回复音乐消息 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[music]]></MsgType> <Music> <Title><![CDATA[我要找到你]]></Title> <Description><![CDATA[《我要找到你》是由陈明演唱的一首歌]]></Description> <MusicUrl><![CDATA[https://music.163.com/outchain/player?type=2&id=212964&auto=1&height=66]]></MusicUrl> <HQMusicUrl><![CDATA[https://music.163.com/outchain/player?type=2&id=212964&auto=1&height=66]]></HQMusicUrl> </Music> </xml>'; break; // 回复图文消息 case 6: $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[news]]></MsgType> <ArticleCount>1</ArticleCount> <Articles> <item> <Title><![CDATA[图文消息标题:往前走,亦或回头]]></Title> <Description><![CDATA[图文消息描述:一生的旅程]]></Description> <PicUrl><![CDATA[图片链接,支持JPG、PNG格式,较好的效果为大图360200,小图200200]]></PicUrl> <Url><![CDATA[点击图文消息跳转链接]]></Url> </item> </Articles> </xml>'; break; default: // 回复文本 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[请回复数字:【1 2 3 4 5 6】以体验不同的功能]]></Content> </xml>'; break; } echo $str;
韩昊杰的头像-辛达科技-一个只分享技术的站韩昊杰4年前
0 2 0
微信公众号获取AccessToken,并保存到文件中,且过期前5分钟时再次自动获取-辛达科技-一个只分享技术的站

微信公众号获取AccessToken,并保存到文件中,且过期前5分钟时再次自动获取

当用户在公众号内发送消息时,我们可以在服务器配置完好的前提下,通过相关代码,接收用户发送的信息,并予以相应的回复!代码如下 <?php // 接收用户发送消息(二选一) // $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];//全局变量 存的用户的发送的信息 $postStr = file_get_contents("php://input"); // 但是有的服务器 如果使用 $GLOBALS 接不到值 使用 // 存储用户发送的消息 file_put_contents('data.txt',$postStr); $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);// 数据对象 $fromUsername = $postObj->FromUserName; // 发送者 信息 $toUsername = $postObj->ToUserName; // 接受者 信息 公众号 $msgtype = $postObj->MsgType; // 获取消息的类型 $keyword = trim($postObj->Content); // 接收发送的文本 $EventKey = $postObj->EventKey; // 获取click事件的值 公众号 // 按键回复 if($EventKey == 'music'){ echo '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[music]]></MsgType> <Music> <Title><![CDATA[我要找到你]]></Title> <Description><![CDATA[《我要找到你》是由陈明演唱的一首歌]]></Description> <MusicUrl><![CDATA[https://music.163.com/outchain/player?type=2&id=212964&auto=1&height=66]]></MusicUrl> <HQMusicUrl><![CDATA[https://music.163.com/outchain/player?type=2&id=212964&auto=1&height=66]]></HQMusicUrl> </Music> </xml>'; } // 接收消息回复 switch($keyword){ case 1: // 回复文本 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[世界很大,我想去看看]]></Content> </xml>'; break; case 2: // 回复图片消息 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[image]]></MsgType> <Image> <MediaId><![CDATA[通过素材管理中的接口上传多媒体文件,得到的图片id]]></MediaId> </Image> </xml>'; break; case 3: // 回复语音消息 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[voice]]></MsgType> <Voice> <MediaId><![CDATA[通过素材管理中的接口上传多媒体文件,得到的语音消息id]]></MediaId> </Voice> </xml>'; break; case 4: // 回复视频消息 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[video]]></MsgType> <Video> <MediaId><![CDATA[通过素材管理中的接口上传多媒体文件,得到的视频消息id]]></MediaId> <Title><![CDATA[那些年]]></Title> <Description><![CDATA[回不去的曾经!]]></Description> </Video> </xml>'; break; case 5: // 回复音乐消息 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[music]]></MsgType> <Music> <Title><![CDATA[我要找到你]]></Title> <Description><![CDATA[《我要找到你》是由陈明演唱的一首歌]]></Description> <MusicUrl><![CDATA[https://music.163.com/outchain/player?type=2&id=212964&auto=1&height=66]]></MusicUrl> <HQMusicUrl><![CDATA[https://music.163.com/outchain/player?type=2&id=212964&auto=1&height=66]]></HQMusicUrl> </Music> </xml>'; break; // 回复图文消息 case 6: $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[news]]></MsgType> <ArticleCount>1</ArticleCount> <Articles> <item> <Title><![CDATA[图文消息标题:往前走,亦或回头]]></Title> <Description><![CDATA[图文消息描述:一生的旅程]]></Description> <PicUrl><![CDATA[图片链接,支持JPG、PNG格式,较好的效果为大图360200,小图200200]]></PicUrl> <Url><![CDATA[点击图文消息跳转链接]]></Url> </item> </Articles> </xml>'; break; default: // 回复文本 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[请回复数字:【1 2 3 4 5 6】以体验不同的功能]]></Content> </xml>'; break; } echo $str;
韩昊杰的头像-辛达科技-一个只分享技术的站韩昊杰4年前
2 2 0
微信公众号推送模板消息,向指定的openID群发-辛达科技-一个只分享技术的站

微信公众号推送模板消息,向指定的openID群发

当用户在公众号内发送消息时,我们可以在服务器配置完好的前提下,通过相关代码,接收用户发送的信息,并予以相应的回复!代码如下 <?php // 接收用户发送消息(二选一) // $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];//全局变量 存的用户的发送的信息 $postStr = file_get_contents("php://input"); // 但是有的服务器 如果使用 $GLOBALS 接不到值 使用 // 存储用户发送的消息 file_put_contents('data.txt',$postStr); $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);// 数据对象 $fromUsername = $postObj->FromUserName; // 发送者 信息 $toUsername = $postObj->ToUserName; // 接受者 信息 公众号 $msgtype = $postObj->MsgType; // 获取消息的类型 $keyword = trim($postObj->Content); // 接收发送的文本 $EventKey = $postObj->EventKey; // 获取click事件的值 公众号 // 按键回复 if($EventKey == 'music'){ echo '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[music]]></MsgType> <Music> <Title><![CDATA[我要找到你]]></Title> <Description><![CDATA[《我要找到你》是由陈明演唱的一首歌]]></Description> <MusicUrl><![CDATA[https://music.163.com/outchain/player?type=2&id=212964&auto=1&height=66]]></MusicUrl> <HQMusicUrl><![CDATA[https://music.163.com/outchain/player?type=2&id=212964&auto=1&height=66]]></HQMusicUrl> </Music> </xml>'; } // 接收消息回复 switch($keyword){ case 1: // 回复文本 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[世界很大,我想去看看]]></Content> </xml>'; break; case 2: // 回复图片消息 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[image]]></MsgType> <Image> <MediaId><![CDATA[通过素材管理中的接口上传多媒体文件,得到的图片id]]></MediaId> </Image> </xml>'; break; case 3: // 回复语音消息 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[voice]]></MsgType> <Voice> <MediaId><![CDATA[通过素材管理中的接口上传多媒体文件,得到的语音消息id]]></MediaId> </Voice> </xml>'; break; case 4: // 回复视频消息 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[video]]></MsgType> <Video> <MediaId><![CDATA[通过素材管理中的接口上传多媒体文件,得到的视频消息id]]></MediaId> <Title><![CDATA[那些年]]></Title> <Description><![CDATA[回不去的曾经!]]></Description> </Video> </xml>'; break; case 5: // 回复音乐消息 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[music]]></MsgType> <Music> <Title><![CDATA[我要找到你]]></Title> <Description><![CDATA[《我要找到你》是由陈明演唱的一首歌]]></Description> <MusicUrl><![CDATA[https://music.163.com/outchain/player?type=2&id=212964&auto=1&height=66]]></MusicUrl> <HQMusicUrl><![CDATA[https://music.163.com/outchain/player?type=2&id=212964&auto=1&height=66]]></HQMusicUrl> </Music> </xml>'; break; // 回复图文消息 case 6: $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[news]]></MsgType> <ArticleCount>1</ArticleCount> <Articles> <item> <Title><![CDATA[图文消息标题:往前走,亦或回头]]></Title> <Description><![CDATA[图文消息描述:一生的旅程]]></Description> <PicUrl><![CDATA[图片链接,支持JPG、PNG格式,较好的效果为大图360200,小图200200]]></PicUrl> <Url><![CDATA[点击图文消息跳转链接]]></Url> </item> </Articles> </xml>'; break; default: // 回复文本 $str = '<xml> <ToUserName><![CDATA['.$fromUsername.']]></ToUserName> <FromUserName><![CDATA['.$toUsername.']]></FromUserName> <CreateTime>'.time().'</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[请回复数字:【1 2 3 4 5 6】以体验不同的功能]]></Content> </xml>'; break; } echo $str;
韩昊杰的头像-辛达科技-一个只分享技术的站韩昊杰4年前
0 4 0