微信公众平台开发在线点歌功能介绍

互联网 17-3-23
微信公众平台的消息接口-音乐消息,这是广大微信公众平台开发者的福音。 根据这一功能,如果能做出在微信中点歌功能,那么我们以后就可以不用安装其他APP, 直接在微信里面关注一个账号,就可以听歌了,还省去了安装的麻烦,而且不用再占用空间。如果音乐资源足够好,那将秒杀一切手机上在线听歌软件也不是没有可能的。

回复音乐消息

<xml>  <ToUserName><![CDATA[toUser]]></ToUserName>  <FromUserName><![CDATA[fromUser]]></FromUserName>  <CreateTime>12345678</CreateTime>  <MsgType><![CDATA[music]]></MsgType>  <Music>  <Title><![CDATA[TITLE]]></Title>  <Description><![CDATA[DESCRIPTION]]></Description>  <MusicUrl><![CDATA[MUSIC_Url]]></MusicUrl>  <HQMusicUrl><![CDATA[HQ_MUSIC_Url]]></HQMusicUrl>  <ThumbMediaId><![CDATA[media_id]]></ThumbMediaId>  </Music>  </xml>

核心代码:

public function getMusicInfo() {                             if ($this->name == ""){                  $content = array( "Title"=>"",                          "Description"=>"你还没告诉我音乐名称呢?",                          "MusicUrl"=>"",                          "HQMusicUrl"=>"");                                 } else {                  if (strpos($this->name, "+")){                      $music = explode("+",$this->name);                      $url = "http://box.zhangmen.baidu.com/x?op=12&count=1&title=".$music[1]."$$".$music[0]."$$$$";                  }else{                      $url = "http://box.zhangmen.baidu.com/x?op=12&count=1&title=".$this->name."$$";                  }                                 $ch = curl_init();                  curl_setopt($ch, CURLOPT_URL, $url);                  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);                  $data = curl_exec($ch);                  $content = array( "Title"=>"歌曲【".$this->name."】",                          "Description"=>"检索失败",                          "MusicUrl"=>"",                          "HQMusicUrl"=>"");                  try{                      @$menus = simplexml_load_string($data, 'SimpleXMLElement', LIBXML_NOCDATA);                      if ($menus->count > 0 && isset($menus->url[0]) && isset($menus->durl[0])){                          $url_prefix = substr($menus->url[0]->encode,0,strripos($menus->url[0]->encode,'/') + 1);                          $url_suffix = substr($menus->url[0]->decode,0,strripos($menus->url[0]->decode,'&'));                          $durl_prefix = substr($menus->durl[0]->encode,0,strripos($menus->durl[0]->encode,'/') + 1);                          $durl_suffix = substr($menus->durl[0]->decode,0,strripos($menus->durl[0]->decode,'&'));                          if (strpos($this->name, "+")){                              $content = array( "Title"=>$music[1],                                      "Description"=>$music[0],                                      "MusicUrl"=>$url_prefix.$url_suffix,                                      "HQMusicUrl"=>$durl_prefix.$durl_suffix);                          }else{                              $content = array( "Title"=>$this->name,                                      "Description"=>"百度音乐提供",                                      "MusicUrl"=>$url_prefix.$url_suffix,                                      "HQMusicUrl"=>$durl_prefix.$durl_suffix);                          }                      }                  }catch(Exception $e){                  }              }              return $content;          }

接口调用:

include ('music.class.php');  $m = new MusicApi($musicContent);  $mArr = $m->getMusicInfo();  return $this->responseMusic($mArr["Title"], $mArr["Description"], $mArr["MusicUrl"], $mArr["HQMusicUrl"], 0);

效果演示:

以上就是微信公众平台开发在线点歌功能介绍的详细内容,更多内容请关注技术你好其它相关文章!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:微信公众平台开发之自定义菜单的创建和删除的详细介绍

相关资讯