时间:2021-07-01 10:21:17 帮助过:5人阅读
- <span 1<="" span=""> <!--?<span php
- </span--><span 2<="" span=""> <span *<="" span="">
- <span 3<="" span=""> <span 方倍工作室="" <="" span=""><span 4<="" span=""> <span copyright="" 2014="" all="" rights="" reserved="" <="" span=""><span 5<="" span=""> <span *="" <="" span="">
- <span 6<="" span="">
- <span 7<="" span=""> <span define<="" span="">("TOKEN", "weixin"<span );="" <="" span=""><span 8<="" span="">
- <span 9<="" span=""> <span $wechatobj<="" span=""> = <span new<="" span=""><span wechatcallbackapitest();="" <="" span=""><span 10<="" span=""> <span if<="" span=""> (!<span isset<="" span="">(<span $_get<="" span="">['echostr'<span ]))="" {="" <="" span=""><span 11<="" span=""> <span $wechatobj<="" span="">-><span responsemsg();="" <="" span=""><span 12<="" span=""> }<span else<="" span=""><span {="" <="" span=""><span 13<="" span=""> <span $wechatobj<="" span="">-><span valid();="" <="" span=""><span 14<="" span=""> <span }="" <="" span=""><span 15<="" span="">
- <span 16<="" span=""> <span class<="" span=""><span wechatcallbackapitest="" <="" span=""><span 17<="" span=""> <span {="" <="" span=""><span 18<="" span=""> <span public<="" span=""> <span function<="" span=""><span valid()="" <="" span=""><span 19<="" span=""> <span {="" <="" span=""><span 20<="" span=""> <span $echostr<="" span=""> = <span $_get<="" span="">["echostr"<span ];="" <="" span=""><span 21<="" span=""> <span if<="" span="">(<span $this<="" span="">-><span checksignature()){="" <="" span=""><span 22<="" span=""> <span echo<="" span=""> <span $echostr<="" span=""><span ;="" <="" span=""><span 23<="" span=""> <span exit<="" span=""><span ;="" <="" span=""><span 24<="" span=""> <span }="" <="" span=""><span 25<="" span=""> <span }="" <="" span=""><span 26<="" span="">
- <span 27<="" span=""> <span private<="" span=""> <span function<="" span=""><span checksignature()="" <="" span=""><span 28<="" span=""> <span {="" <="" span=""><span 29<="" span=""> <span $signature<="" span=""> = <span $_get<="" span="">["signature"<span ];="" <="" span=""><span 30<="" span=""> <span $timestamp<="" span=""> = <span $_get<="" span="">["timestamp"<span ];="" <="" span=""><span 31<="" span=""> <span $nonce<="" span=""> = <span $_get<="" span="">["nonce"<span ];="" <="" span=""><span 32<="" span=""> <span $token<="" span=""> =<span token;="" <="" span=""><span 33<="" span=""> <span $tmparr<="" span=""> = <span array<="" span="">(<span $token<="" span="">, <span $timestamp<="" span="">, <span $nonce<="" span=""><span );="" <="" span=""><span 34<="" span=""> <span sort<="" span="">(<span $tmparr<="" span="">,<span sort_string);="" <="" span=""><span 35<="" span=""> <span $tmpstr<="" span=""> = <span implode<="" span="">(<span $tmparr<="" span=""><span );="" <="" span=""><span 36<="" span=""> <span $tmpstr<="" span=""> = <span sha1<="" span="">(<span $tmpstr<="" span=""><span );="" <="" span=""><span 37<="" span="">
- <span 38<="" span=""> <span if<="" span="">(<span $tmpstr<="" span=""> == <span $signature<="" span=""><span ){="" <="" span=""><span 39<="" span=""> <span return<="" span=""> <span true<="" span=""><span ;="" <="" span=""><span 40<="" span=""> }<span else<="" span=""><span {="" <="" span=""><span 41<="" span=""> <span return<="" span=""> <span false<="" span=""><span ;="" <="" span=""><span 42<="" span=""> <span }="" <="" span=""><span 43<="" span=""> <span }="" <="" span=""><span 44<="" span="">
- <span 45<="" span=""> <span public<="" span=""> <span function<="" span=""><span responsemsg()="" <="" span=""><span 46<="" span=""> <span {="" <="" span=""><span 47<="" span=""> <span $poststr<="" span=""> = <span $globals<="" span="">["HTTP_RAW_POST_DATA"<span ];="" <="" span=""><span 48<="" span=""> <span if<="" span=""> (!<span empty<="" span="">(<span $poststr<="" span=""><span )){="" <="" span=""><span 49<="" span=""> <span $this<="" span="">->logger("R ".<span $poststr<="" span=""><span );="" <="" span=""><span 50<="" span=""> <span $postobj<="" span=""> = <span simplexml_load_string<="" span="">(<span $poststr<="" span="">, 'SimpleXMLElement',<span libxml_nocdata);="" <="" span=""><span 51<="" span=""> <span $rx_type<="" span=""> = <span trim<="" span="">(<span $postobj<="" span="">-><span msgtype);="" <="" span=""><span 52<="" span="">
- <span 53<="" span=""> <span switch<="" span=""> (<span $rx_type<="" span=""><span )="" <="" span=""><span 54<="" span=""> <span {="" <="" span=""><span 55<="" span=""> <span case<="" span=""> "event":
- <span 56<="" span=""> <span $result<="" span=""> = <span $this<="" span="">->receiveEvent(<span $postobj<="" span=""><span );="" <="" span=""><span 57<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 58<="" span=""> <span case<="" span=""> "text":
- <span 59<="" span=""> <span $result<="" span=""> = <span $this<="" span="">->receiveText(<span $postobj<="" span=""><span );="" <="" span=""><span 60<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 61<="" span=""> <span case<="" span=""> "image":
- <span 62<="" span=""> <span $result<="" span=""> = <span $this<="" span="">->receiveImage(<span $postobj<="" span=""><span );="" <="" span=""><span 63<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 64<="" span=""> <span case<="" span=""> "location":
- <span 65<="" span=""> <span $result<="" span=""> = <span $this<="" span="">->receiveLocation(<span $postobj<="" span=""><span );="" <="" span=""><span 66<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 67<="" span=""> <span case<="" span=""> "voice":
- <span 68<="" span=""> <span $result<="" span=""> = <span $this<="" span="">->receiveVoice(<span $postobj<="" span=""><span );="" <="" span=""><span 69<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 70<="" span=""> <span case<="" span=""> "video":
- <span 71<="" span=""> <span $result<="" span=""> = <span $this<="" span="">->receiveVideo(<span $postobj<="" span=""><span );="" <="" span=""><span 72<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 73<="" span=""> <span case<="" span=""> "link":
- <span 74<="" span=""> <span $result<="" span=""> = <span $this<="" span="">->receiveLink(<span $postobj<="" span=""><span );="" <="" span=""><span 75<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 76<="" span=""> <span default<="" span="">:
- <span 77<="" span=""> <span $result<="" span=""> = "unknow msg type: ".<span $rx_type<="" span=""><span ;="" <="" span=""><span 78<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 79<="" span=""> <span }="" <="" span=""><span 80<="" span=""> <span $this<="" span="">->logger("T ".<span $result<="" span=""><span );="" <="" span=""><span 81<="" span=""> <span echo<="" span=""> <span $result<="" span=""><span ;="" <="" span=""><span 82<="" span=""> }<span else<="" span=""><span {="" <="" span=""><span 83<="" span=""> <span echo<="" span=""> ""<span ;="" <="" span=""><span 84<="" span=""> <span exit<="" span=""><span ;="" <="" span=""><span 85<="" span=""> <span }="" <="" span=""><span 86<="" span=""> <span }="" <="" span=""><span 87<="" span="">
- <span 88<="" span=""> <span private<="" span=""> <span function<="" span=""> receiveEvent(<span $object<="" span=""><span )="" <="" span=""><span 89<="" span=""> <span {="" <="" span=""><span 90<="" span=""> <span $content<="" span=""> = ""<span ;="" <="" span=""><span 91<="" span=""> <span switch<="" span=""> (<span $object<="" span="">-><span event)="" <="" span=""><span 92<="" span=""> <span {="" <="" span=""><span 93<="" span=""> <span case<="" span=""> "subscribe":
- <span 94<="" span=""> <span $content<="" span=""> = "欢迎关注方倍工作室 "<span ;="" <="" span=""><span 95<="" span=""> <span $content<="" span=""> .= (!<span empty<="" span="">(<span $object<="" span="">->EventKey))?("\n来自二维码场景 ".<span str_replace<="" span="">("qrscene_","",<span $object<="" span="">->EventKey)):""<span ;="" <="" span=""><span 96<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 97<="" span=""> <span case<="" span=""> "unsubscribe":
- <span 98<="" span=""> <span $content<="" span=""> = "取消关注"<span ;="" <="" span=""><span 99<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 100<="" span=""> <span case<="" span=""> "SCAN":
- <span 101<="" span=""> <span $content<="" span=""> = "扫描场景 ".<span $object<="" span="">-><span eventkey;="" <="" span=""><span 102<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 103<="" span=""> <span case<="" span=""> "CLICK":
- <span 104<="" span=""> <span switch<="" span=""> (<span $object<="" span="">-><span eventkey)="" <="" span=""><span 105<="" span=""> <span {="" <="" span=""><span 106<="" span=""> <span case<="" span=""> "COMPANY":
- <span 107<="" span=""> <span $content<="" span=""> = "方倍工作室提供互联网相关产品与服务。"<span ;="" <="" span=""><span 108<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 109<="" span=""> <span default<="" span="">:
- <span 110<="" span=""> <span $content<="" span=""> = "点击菜单:".<span $object<="" span="">-><span eventkey;="" <="" span=""><span 111<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 112<="" span=""> <span }="" <="" span=""><span 113<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 114<="" span=""> <span case<="" span=""> "LOCATION":
- <span 115<="" span=""> <span $content<="" span=""> = "上传位置:纬度 ".<span $object<="" span="">->Latitude.";经度 ".<span $object<="" span="">-><span longitude;="" <="" span=""><span 116<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 117<="" span=""> <span default<="" span="">:
- <span 118<="" span=""> <span $content<="" span=""> = "receive a new event: ".<span $object<="" span="">-><span event;="" <="" span=""><span 119<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 120<="" span=""> <span }="" <="" span=""><span 121<="" span=""> <span $result<="" span=""> = <span $this<="" span="">->transmitText(<span $object<="" span="">, <span $content<="" span=""><span );="" <="" span=""><span 122<="" span=""> <span return<="" span=""> <span $result<="" span=""><span ;="" <="" span=""><span 123<="" span=""> <span }="" <="" span=""><span 124<="" span="">
- <span 125<="" span=""> <span private<="" span=""> <span function<="" span=""> receiveText(<span $object<="" span=""><span )="" <="" span=""><span 126<="" span=""> <span {="" <="" span=""><span 127<="" span=""> <span $keyword<="" span=""> = <span trim<="" span="">(<span $object<="" span="">-><span content);="" <="" span=""><span 128<="" span=""> <span switch<="" span=""> (<span $keyword<="" span=""><span )="" <="" span=""><span 129<="" span=""> <span {="" <="" span=""><span 130<="" span=""> <span case<="" span=""> "文本":
- <span 131<="" span=""> <span $content<="" span=""> = "这是个文本消息"<span ;="" <="" span=""><span 132<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 133<="" span=""> <span case<="" span=""> "图文":
- <span 134<="" span=""> <span case<="" span=""> "单图文":
- <span 135<="" span=""> <span $content<="" span="">[] = <span array<="" span="">("Title"=>"单图文标题", "Description"=>"单图文内容", "PicUrl"=>"http://discuz.comli.com/weixin/weather/icon/cartoon.jpg", "Url" =>"http://m.cnblogs.com/?u=txw1958"<span );="" <="" span=""><span 136<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 137<="" span=""> <span case<="" span=""> "多图文":
- <span 138<="" span=""> <span $content<="" span="">[] = <span array<="" span="">("Title"=>"多图文1标题", "Description"=>"", "PicUrl"=>"http://discuz.comli.com/weixin/weather/icon/cartoon.jpg", "Url" =>"http://m.cnblogs.com/?u=txw1958"<span );="" <="" span=""><span 139<="" span=""> <span $content<="" span="">[] = <span array<="" span="">("Title"=>"多图文2标题", "Description"=>"", "PicUrl"=>"http://d.hiphotos.bdimg.com/wisegame/pic/item/f3529822720e0cf3ac9f1ada0846f21fbe09aaa3.jpg", "Url" =>"http://m.cnblogs.com/?u=txw1958"<span );="" <="" span=""><span 140<="" span=""> <span $content<="" span="">[] = <span array<="" span="">("Title"=>"多图文3标题", "Description"=>"", "PicUrl"=>"http://g.hiphotos.bdimg.com/wisegame/pic/item/18cb0a46f21fbe090d338acc6a600c338644adfd.jpg", "Url" =>"http://m.cnblogs.com/?u=txw1958"<span );="" <="" span=""><span 141<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 142<="" span=""> <span case<="" span=""> "音乐":
- <span 143<="" span=""> <span $content<="" span=""> = <span array<="" span="">("Title"=>"最炫民族风", "Description"=>"歌手:凤凰传奇", "MusicUrl"=>"http://121.199.4.61/music/zxmzf.mp3", "HQMusicUrl"=>"http://121.199.4.61/music/zxmzf.mp3"<span );="" <="" span=""><span 144<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 145<="" span=""> <span default<="" span="">:
- <span 146<="" span=""> <span $content<="" span=""> = "当前时间:".<span date<="" span="">("Y-m-d H:i:s",<span time<="" span=""><span ());="" <="" span=""><span 147<="" span=""> <span break<="" span=""><span ;="" <="" span=""><span 148<="" span=""> <span }="" <="" span=""><span 149<="" span=""> <span if<="" span="">(<span is_array<="" span="">(<span $content<="" span=""><span )){="" <="" span=""><span 150<="" span=""> <span if<="" span=""> (<span isset<="" span="">(<span $content<="" span="">[0]['PicUrl'<span ])){="" <="" span=""><span 151<="" span=""> <span $result<="" span=""> = <span $this<="" span="">->transmitNews(<span $object<="" span="">, <span $content<="" span=""><span );="" <="" span=""><span 152<="" span=""> }<span else<="" span=""> <span if<="" span=""> (<span isset<="" span="">(<span $content<="" span="">['MusicUrl'<span ])){="" <="" span=""><span 153<="" span=""> <span $result<="" span=""> = <span $this<="" span="">->transmitMusic(<span $object<="" span="">, <span $content<="" span=""><span );="" <="" span=""><span 154<="" span=""> <span }="" <="" span=""><span 155<="" span=""> }<span else<="" span=""><span {="" <="" span=""><span 156<="" span=""> <span $result<="" span=""> = <span $this<="" span="">->transmitText(<span $object<="" span="">, <span $content<="" span=""><span );="" <="" span=""><span 157<="" span=""> <span }="" <="" span=""><span 158<="" span=""> <span return<="" span=""> <span $result<="" span=""><span ;="" <="" span=""><span 159<="" span=""> <span }="" <="" span=""><span 160<="" span="">
- <span 161<="" span=""> </span><span private<="" span=""> </span><span function<="" span=""> receiveImage(</span><span $object<="" span=""></span><span )="" <="" span=""></span><span 162<="" span=""> </span><span {="" <="" span=""></span><span 163<="" span=""> </span><span $content<="" span=""> = </span><span array<="" span="">("MediaId"=></span><span $object<="" span="">-></span><span mediaid);="" <="" span=""></span><span 164<="" span=""> </span><span $result<="" span=""> = </span><span $this<="" span="">->transmitImage(</span><span $object<="" span="">, </span><span $content<="" span=""></span><span );="" <="" span=""></span><span 165<="" span=""> </span><span return<="" span=""> </span><span $result<="" span=""></span><span ;="" <="" span=""></span><span 166<="" span=""> </span><span }="" <="" span=""></span><span 167<="" span="">
- </span><span 168<="" span=""> </span><span private<="" span=""> </span><span function<="" span=""> receiveLocation(</span><span $object<="" span=""></span><span )="" <="" span=""></span><span 169<="" span=""> </span><span {="" <="" span=""></span><span 170<="" span=""> </span><span $content<="" span=""> = "你发送的是位置,纬度为:".</span><span $object<="" span="">->Location_X.";经度为:".</span><span $object<="" span="">->Location_Y.";缩放级别为:".</span><span $object<="" span="">->Scale.";位置为:".</span><span $object<="" span="">-></span><span label;="" <="" span=""></span><span 171<="" span=""> </span><span $result<="" span=""> = </span><span $this<="" span="">->transmitText(</span><span $object<="" span="">, </span><span $content<="" span=""></span><span );="" <="" span=""></span><span 172<="" span=""> </span><span return<="" span=""> </span><span $result<="" span=""></span><span ;="" <="" span=""></span><span 173<="" span=""> </span><span }="" <="" span=""></span><span 174<="" span="">
- </span><span 175<="" span=""> </span><span private<="" span=""> </span><span function<="" span=""> receiveVoice(</span><span $object<="" span=""></span><span )="" <="" span=""></span><span 176<="" span=""> </span><span {="" <="" span=""></span><span 177<="" span=""> </span><span if<="" span=""> (</span><span empty<="" span="">(</span><span $object<="" span="">-></span><span recognition)){="" <="" span=""></span><span 178<="" span=""> </span><span $content<="" span=""> = </span><span array<="" span="">("MediaId"=></span><span $object<="" span="">-></span><span mediaid);="" <="" span=""></span><span 179<="" span=""> </span><span $result<="" span=""> = </span><span $this<="" span="">->transmitVoice(</span><span $object<="" span="">, </span><span $content<="" span=""></span><span );="" <="" span=""></span><span 180<="" span=""> }</span><span else<="" span=""></span><span {="" <="" span=""></span><span 181<="" span=""> </span><span $content<="" span=""> = "你刚才说的是:".</span><span $object<="" span="">-></span><span recognition;="" <="" span=""></span><span 182<="" span=""> </span><span $result<="" span=""> = </span><span $this<="" span="">->transmitText(</span><span $object<="" span="">, </span><span $content<="" span=""></span><span );="" <="" span=""></span><span 183<="" span=""> </span><span }="" <="" span=""></span><span 184<="" span="">
- </span><span 185<="" span=""> </span><span return<="" span=""> </span><span $result<="" span=""></span><span ;="" <="" span=""></span><span 186<="" span=""> </span><span }="" <="" span=""></span><span 187<="" span="">
- </span><span 188<="" span=""> </span><span private<="" span=""> </span><span function<="" span=""> receiveVideo(</span><span $object<="" span=""></span><span )="" <="" span=""></span><span 189<="" span=""> </span><span {="" <="" span=""></span><span 190<="" span=""> </span><span $content<="" span=""> = </span><span array<="" span="">("MediaId"=></span><span $object<="" span="">->MediaId, "ThumbMediaId"=></span><span $object<="" span="">->ThumbMediaId, "Title"=>"", "Description"=>""</span><span );="" <="" span=""></span><span 191<="" span=""> </span><span $result<="" span=""> = </span><span $this<="" span="">->transmitVideo(</span><span $object<="" span="">, </span><span $content<="" span=""></span><span );="" <="" span=""></span><span 192<="" span=""> </span><span return<="" span=""> </span><span $result<="" span=""></span><span ;="" <="" span=""></span><span 193<="" span=""> </span><span }="" <="" span=""></span><span 194<="" span="">
- </span><span 195<="" span=""> </span><span private<="" span=""> </span><span function<="" span=""> receiveLink(</span><span $object<="" span=""></span><span )="" <="" span=""></span><span 196<="" span=""> </span><span {="" <="" span=""></span><span 197<="" span=""> </span><span $content<="" span=""> = "你发送的是链接,标题为:".</span><span $object<="" span="">->Title.";内容为:".</span><span $object<="" span="">->Description.";链接地址为:".</span><span $object<="" span="">-></span><span url;="" <="" span=""></span><span 198<="" span=""> </span><span $result<="" span=""> = </span><span $this<="" span="">->transmitText(</span><span $object<="" span="">, </span><span $content<="" span=""></span><span );="" <="" span=""></span><span 199<="" span=""> </span><span return<="" span=""> </span><span $result<="" span=""></span><span ;="" <="" span=""></span><span 200<="" span=""> </span><span }="" <="" span=""></span><span 201<="" span="">
- </span><span 202<="" span=""> </span><span private<="" span=""> </span><span function<="" span=""> transmitText(</span><span $object<="" span="">, </span><span $content<="" span=""></span><span )="" <="" span=""></span><span 203<="" span=""> </span><span {="" <="" span=""></span><span 204<="" span=""> </span><span $texttpl<="" span=""> = "</span><span <xml="">
- </span><span 205<="" span=""> </span><span <tousername="">
- </span><!--[CDATA[%s]]--><span 206<="" span=""> </span><span <fromusername="">
- </span><!--[CDATA[%s]]--><span 207<="" span=""> </span><span <createtime="">%s
- </span><span 208<="" span=""> </span><span <msgtype="">
- </span><!--[CDATA[text]]--><span 209<="" span=""> </span><span <content="">
- </span><!--[CDATA[%s]]--><span 210<="" span=""> "</span><span ;="" <="" span=""></span><span 211<="" span=""> </span><span $result<="" span=""> = </span><span sprintf<="" span="">(</span><span $texttpl<="" span="">, </span><span $object<="" span="">->FromUserName, </span><span $object<="" span="">->ToUserName, </span><span time<="" span="">(), </span><span $content<="" span=""></span><span );="" <="" span=""></span><span 212<="" span=""> </span><span return<="" span=""> </span><span $result<="" span=""></span><span ;="" <="" span=""></span><span 213<="" span=""> </span><span }="" <="" span=""></span><span 214<="" span="">
- </span><span 215<="" span=""> </span><span private<="" span=""> </span><span function<="" span=""> transmitImage(</span><span $object<="" span="">, </span><span $imagearray<="" span=""></span><span )="" <="" span=""></span><span 216<="" span=""> </span><span {="" <="" span=""></span><span 217<="" span=""> </span><span $itemtpl<="" span=""> = "</span><span <image="">
- </span><span 218<="" span=""> </span><span <mediaid="">
- </span><!--[CDATA[%s]]--><span 219<="" span=""> "</span><span ;="" <="" span=""></span><span 220<="" span="">
- </span><span 221<="" span=""> </span><span $item_str<="" span=""> = </span><span sprintf<="" span="">(</span><span $itemtpl<="" span="">, </span><span $imagearray<="" span="">['MediaId'</span><span ]);="" <="" span=""></span><span 222<="" span="">
- </span><span 223<="" span=""> </span><span $texttpl<="" span=""> = "</span><span <xml="">
- </span><span 224<="" span=""> </span><span <tousername="">
- </span><!--[CDATA[%s]]--><span 225<="" span=""> </span><span <fromusername="">
- </span><!--[CDATA[%s]]--><span 226<="" span=""> </span><span <createtime="">%s
- </span><span 227<="" span=""> </span><span <msgtype="">
- </span><!--[CDATA[image]]--><span 228<="" span=""> </span><span $item_str<="" span="">
- </span><span 229<="" span=""> "</span><span ;="" <="" span=""></span><span 230<="" span="">
- </span><span 231<="" span=""> </span><span $result<="" span=""> = </span><span sprintf<="" span="">(</span><span $texttpl<="" span="">, </span><span $object<="" span="">->FromUserName, </span><span $object<="" span="">->ToUserName, </span><span time<="" span=""></span><span ());="" <="" span=""></span><span 232<="" span=""> </span><span return<="" span=""> </span><span $result<="" span=""></span><span ;="" <="" span=""></span><span 233<="" span=""> </span><span }="" <="" span=""></span><span 234<="" span="">
- </span><span 235<="" span=""> </span><span private<="" span=""> </span><span function<="" span=""> transmitVoice(</span><span $object<="" span="">, </span><span $voicearray<="" span=""></span><span )="" <="" span=""></span><span 236<="" span=""> </span><span {="" <="" span=""></span><span 237<="" span=""> </span><span $itemtpl<="" span=""> = "</span><span <voice="">
- </span><span 238<="" span=""> </span><span <mediaid="">
- </span><!--[CDATA[%s]]--><span 239<="" span=""> "</span><span ;="" <="" span=""></span><span 240<="" span="">
- </span><span 241<="" span=""> </span><span $item_str<="" span=""> = </span><span sprintf<="" span="">(</span><span $itemtpl<="" span="">, </span><span $voicearray<="" span="">['MediaId'</span><span ]);="" <="" span=""></span><span 242<="" span="">
- </span><span 243<="" span=""> </span><span $texttpl<="" span=""> = "</span><span <xml="">
- </span><span 244<="" span=""> </span><span <tousername="">
- </span><!--[CDATA[%s]]--><span 245<="" span=""> </span><span <fromusername="">
- </span><!--[CDATA[%s]]--><span 246<="" span=""> </span><span <createtime="">%s
- </span><span 247<="" span=""> </span><span <msgtype="">
- </span><!--[CDATA[voice]]--><span 248<="" span=""> </span><span $item_str<="" span="">
- </span><span 249<="" span=""> "</span><span ;="" <="" span=""></span><span 250<="" span="">
- </span><span 251<="" span=""> </span><span $result<="" span=""> = </span><span sprintf<="" span="">(</span><span $texttpl<="" span="">, </span><span $object<="" span="">->FromUserName, </span><span $object<="" span="">->ToUserName, </span><span time<="" span=""></span><span ());="" <="" span=""></span><span 252<="" span=""> </span><span return<="" span=""> </span><span $result<="" span=""></span><span ;="" <="" span=""></span><span 253<="" span=""> </span><span }="" <="" span=""></span><span 254<="" span="">
- </span><span 255<="" span=""> </span><span private<="" span=""> </span><span function<="" span=""> transmitVideo(</span><span $object<="" span="">, </span><span $videoarray<="" span=""></span><span )="" <="" span=""></span><span 256<="" span=""> </span><span {="" <="" span=""></span><span 257<="" span=""> </span><span $itemtpl<="" span=""> = "</span><span <video="">
- </span><span 258<="" span=""> </span><span <mediaid="">
- </span><!--[CDATA[%s]]--><span 259<="" span=""> </span><span <thumbmediaid="">
- </span><!--[CDATA[%s]]--><span 260<="" span=""> </span><span <title="">
- </span><!--[CDATA[%s]]--><span 261<="" span=""> </span><span <description="">
- </span><!--[CDATA[%s]]--><span 262<="" span=""> "</span><span ;="" <="" span=""></span><span 263<="" span="">
- </span><span 264<="" span=""> </span><span $item_str<="" span=""> = </span><span sprintf<="" span="">(</span><span $itemtpl<="" span="">, </span><span $videoarray<="" span="">['MediaId'], </span><span $videoarray<="" span="">['ThumbMediaId'], </span><span $videoarray<="" span="">['Title'], </span><span $videoarray<="" span="">['Description'</span><span ]);="" <="" span=""></span><span 265<="" span="">
- </span><span 266<="" span=""> </span><span $texttpl<="" span=""> = "</span><span <xml="">
- </span><span 267<="" span=""> </span><span <tousername="">
- </span><!--[CDATA[%s]]--><span 268<="" span=""> </span><span <fromusername="">
- </span><!--[CDATA[%s]]--><span 269<="" span=""> </span><span <createtime="">%s
- </span><span 270<="" span=""> </span><span <msgtype="">
- </span><!--[CDATA[video]]--><span 271<="" span=""> </span><span $item_str<="" span="">
- </span><span 272<="" span=""> "</span><span ;="" <="" span=""></span><span 273<="" span="">
- </span><span 274<="" span=""> </span><span $result<="" span=""> = </span><span sprintf<="" span="">(</span><span $texttpl<="" span="">, </span><span $object<="" span="">->FromUserName, </span><span $object<="" span="">->ToUserName, </span><span time<="" span=""></span><span ());="" <="" span=""></span><span 275<="" span=""> </span><span return<="" span=""> </span><span $result<="" span=""></span><span ;="" <="" span=""></span><span 276<="" span=""> </span><span }="" <="" span=""></span><span 277<="" span="">
- </span><span 278<="" span=""> </span><span private<="" span=""> </span><span function<="" span=""> transmitNews(</span><span $object<="" span="">, </span><span $newsarray<="" span=""></span><span )="" <="" span=""></span><span 279<="" span=""> </span><span {="" <="" span=""></span><span 280<="" span=""> </span><span if<="" span="">(!</span><span is_array<="" span="">(</span><span $newsarray<="" span=""></span><span )){="" <="" span=""></span><span 281<="" span=""> </span><span return<="" span=""></span><span ;="" <="" span=""></span><span 282<="" span=""> </span><span }="" <="" span=""></span><span 283<="" span=""> </span><span $itemtpl<="" span=""> = "</span><span <item="">
- </span><span 284<="" span=""> </span><span <title="">
- </span><!--[CDATA[%s]]--><span 285<="" span=""> </span><span <description="">
- </span><!--[CDATA[%s]]--><span 286<="" span=""> </span><span <picurl="">
- </span><!--[CDATA[%s]]--><span 287<="" span=""> </span><span <url="">
- </span><!--[CDATA[%s]]--><span 288<="" span=""> </span><span <="" item="">
- </span><span 289<="" span=""> "</span><span ;="" <="" span=""></span><span 290<="" span=""> </span><span $item_str<="" span=""> = ""</span><span ;="" <="" span=""></span><span 291<="" span=""> </span><span foreach<="" span=""> (</span><span $newsarray<="" span=""> </span><span as<="" span=""> </span><span $item<="" span=""></span><span ){="" <="" span=""></span><span 292<="" span=""> </span><span $item_str<="" span=""> .= </span><span sprintf<="" span="">(</span><span $itemtpl<="" span="">, </span><span $item<="" span="">['Title'], </span><span $item<="" span="">['Description'], </span><span $item<="" span="">['PicUrl'], </span><span $item<="" span="">['Url'</span><span ]);="" <="" span=""></span><span 293<="" span=""> </span><span }="" <="" span=""></span><span 294<="" span=""> </span><span $newstpl<="" span=""> = "</span><span <xml="">
- </span><span 295<="" span=""> </span><span <tousername="">
- </span><!--[CDATA[%s]]--><span 296<="" span=""> </span><span <fromusername="">
- </span><!--[CDATA[%s]]--><span 297<="" span=""> </span><span <createtime="">%s
- </span><span 298<="" span=""> </span><span <msgtype="">
- </span><!--[CDATA[news]]--><span 299<="" span=""> </span><span <content="">
- </span><!--[CDATA[]]--><span 300<="" span=""> </span><span %s<="" articlecount="">
- </span><span 301<="" span=""> </span><span <="" span=""></span><span 302<="" span=""> </span><span $item_str<="" span=""></span><span <="" articles="">
- </span><span 303<="" span=""> "</span><span ;="" <="" span=""></span><span 304<="" span="">
- </span><span 305<="" span=""> </span><span $result<="" span=""> = </span><span sprintf<="" span="">(</span><span $newstpl<="" span="">, </span><span $object<="" span="">->FromUserName, </span><span $object<="" span="">->ToUserName, </span><span time<="" span="">(), </span><span count<="" span="">(</span><span $newsarray<="" span=""></span><span ));="" <="" span=""></span><span 306<="" span=""> </span><span return<="" span=""> </span><span $result<="" span=""></span><span ;="" <="" span=""></span><span 307<="" span=""> </span><span }="" <="" span=""></span><span 308<="" span="">
- </span><span 309<="" span=""> </span><span private<="" span=""> </span><span function<="" span=""> transmitMusic(</span><span $object<="" span="">, </span><span $musicarray<="" span=""></span><span )="" <="" span=""></span><span 310<="" span=""> </span><span {="" <="" span=""></span><span 311<="" span=""> </span><span $itemtpl<="" span=""> = "</span><span <music="">
- </span><span 312<="" span=""> </span><span <title="">
- </span><!--[CDATA[%s]]--><span 313<="" span=""> </span><span <description="">
- </span><!--[CDATA[%s]]--><span 314<="" span=""> </span><span <musicurl="">
- </span><!--[CDATA[%s]]--><span 315<="" span=""> </span><span <hqmusicurl="">
- </span><!--[CDATA[%s]]--><span 316<="" span=""> "</span><span ;="" <="" span=""></span><span 317<="" span="">
- </span><span 318<="" span=""> </span><span $item_str<="" span=""> = </span><span sprintf<="" span="">(</span><span $itemtpl<="" span="">, </span><span $musicarray<="" span="">['Title'], </span><span $musicarray<="" span="">['Description'], </span><span $musicarray<="" span="">['MusicUrl'], </span><span $musicarray<="" span="">['HQMusicUrl'</span><span ]);="" <="" span=""></span><span 319<="" span="">
- </span><span 320<="" span=""> </span><span $texttpl<="" span=""> = "</span><span <xml="">
- </span><span 321<="" span=""> </span><span <tousername="">
- </span><!--[CDATA[%s]]--><span 322<="" span=""> </span><span <fromusername="">
- </span><!--[CDATA[%s]]--><span 323<="" span=""> </span><span <createtime="">%s
- </span><span 324<="" span=""> </span><span <msgtype="">
- </span><!--[CDATA[music]]--><span 325<="" span=""> </span><span $item_str<="" span="">
- </span><span 326<="" span=""> "</span><span ;="" <="" span=""></span><span 327<="" span="">
- </span><span 328<="" span=""> </span><span $result<="" span=""> = </span><span sprintf<="" span="">(</span><span $texttpl<="" span="">, </span><span $object<="" span="">->FromUserName, </span><span $object<="" span="">->ToUserName, </span><span time<="" span=""></span><span ());="" <="" span=""></span><span 329<="" span=""> </span><span return<="" span=""> </span><span $result<="" span=""></span><span ;="" <="" span=""></span><span 330<="" span=""> </span><span }="" <="" span=""></span><span 331<="" span="">
- </span><span 332<="" span=""> </span><span private<="" span=""> </span><span function<="" span=""> logger(</span><span $log_content<="" span=""></span><span )="" <="" span=""></span><span 333<="" span=""> </span><span {="" <="" span=""></span><span 334<="" span=""> </span><span if<="" span="">(</span><span isset<="" span="">(</span><span $_server<="" span="">['HTTP_APPNAME'])){ </span><span <="" span=""></span><span sae<="" span="">
- </span><span 335<="" span=""> sae_set_display_errors(</span><span false<="" span=""></span><span );="" <="" span=""></span><span 336<="" span=""> sae_debug(</span><span $log_content<="" span=""></span><span );="" <="" span=""></span><span 337<="" span=""> sae_set_display_errors(</span><span true<="" span=""></span><span );="" <="" span=""></span><span 338<="" span=""> }</span><span else<="" span=""> </span><span if<="" span="">(</span><span $_server<="" span="">['REMOTE_ADDR'] != "127.0.0.1"){ </span><span <="" span=""></span><span local<="" span="">
- </span><span 339<="" span=""> </span><span $max_size<="" span=""> = 10000</span><span ;="" <="" span=""></span><span 340<="" span=""> </span><span $log_filename<="" span=""> = "log.xml"</span><span ;="" <="" span=""></span><span 341<="" span=""> </span><span if<="" span="">(</span><span file_exists<="" span="">(</span><span $log_filename<="" span="">) and (</span><span abs<="" span="">(</span><span filesize<="" span="">(</span><span $log_filename<="" span="">)) > </span><span $max_size<="" span="">)){</span><span unlink<="" span="">(</span><span $log_filename<="" span=""></span><span );}="" <="" span=""></span><span 342<="" span=""> </span><span file_put_contents<="" span="">(</span><span $log_filename<="" span="">, </span><span date<="" span="">('H:i:s')." ".</span><span $log_content<="" span="">."\r\n",</span><span file_append);="" <="" span=""></span><span 343<="" span=""> </span><span }="" <="" span=""></span><span 344<="" span=""> </span><span }="" <="" span=""></span><span 345<="" span=""> </span><span }="" <="" span=""></span><span 346<="" span="">
- </span><span 347<="" span="">
- </span><span 348<="" span=""> ?></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span>
http://www.bkjia.com/PHPjc/741657.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/741657.htmlTechArticle官方提供的SDK只有一个文本消息功能,我们将所有消息的消息类型及事件响应都整理了进来,并且加入日志记录,代码如下: ? ("TOKEN", "w...