From f788607ff771a47bc60d6a86e00b3433c40f3d2c Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 24 九月 2021 15:22:03 +0800 Subject: [PATCH] 接入视频直播 --- src/main/java/com/yeshi/buwan/controller/parser/OtherParser.java | 70 +++++++++++++++++++++++++++++++++- 1 files changed, 67 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/yeshi/buwan/controller/parser/OtherParser.java b/src/main/java/com/yeshi/buwan/controller/parser/OtherParser.java index 132df49..aa86e3e 100644 --- a/src/main/java/com/yeshi/buwan/controller/parser/OtherParser.java +++ b/src/main/java/com/yeshi/buwan/controller/parser/OtherParser.java @@ -2,15 +2,24 @@ import com.google.gson.Gson; import com.yeshi.buwan.domain.*; +import com.yeshi.buwan.domain.jump.JumpDetail; +import com.yeshi.buwan.domain.jump.JumpTypeEnum; import com.yeshi.buwan.domain.recommend.AdRecommendRight; +import com.yeshi.buwan.domain.system.DetailSystem; +import com.yeshi.buwan.domain.system.SystemInfo; +import com.yeshi.buwan.videos.funtv.FunTVNewApi; import com.yeshi.buwan.service.imp.*; import com.yeshi.buwan.service.imp.recommend.AdRecommendRightService; +import com.yeshi.buwan.service.inter.jump.JumpDetailService; import com.yeshi.buwan.util.*; import com.yeshi.buwan.util.annotation.RequireUid; +import com.yeshi.buwan.util.log.VideoLogFactory; import com.yeshi.buwan.util.zhibo.MeiNvZhiBoUtil; import com.yeshi.buwan.vo.AcceptData; import net.sf.json.JSONArray; import net.sf.json.JSONObject; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; import javax.annotation.Resource; @@ -20,6 +29,7 @@ @Controller public class OtherParser { + private final Logger playLogger = LoggerFactory.getLogger("videoPlay"); private String[] sdks = {"4.0.1", "4.0.2", "4.1.0", "4.2.2", "4.2.4", "4.4.2", "4.4.4", "5.0.1", "5.1.0"}; private String[] fbl = {"720x1280", "480x800", "480x854", "640x960", "1080x1920"}; @Resource @@ -36,6 +46,10 @@ private MeiNvZhiBoUtil meiNvZhiBoUtil; @Resource private AdRecommendRightService adRecommendRightService; + @Resource + private JumpDetailService jumpDetailService; + @Resource + private RedisManager redisManager; @RequireUid public void advice(AcceptData acceptData, HttpServletRequest request, PrintWriter out) { @@ -101,25 +115,40 @@ List<HomeNotice> list = homeNoticeService.getHomeNoticeList(detailSystem.getId()); String content = ""; String url = ""; + HomeNotice notice = null; if (list != null && list.size() > 0) { int position = (int) ((list.size() + 1) * Math.random()); if (position == 0) position = 1; if (position > list.size()) position = list.size(); - HomeNotice notice = list.get(position - 1); + notice = list.get(position - 1); long now = System.currentTimeMillis(); if (TimeUtil.convertAllTimeToTemp(notice.getStarttime()) < now && now < TimeUtil.convertAllTimeToTemp(notice.getEndtime())) {// 鍦ㄦ樉绀烘椂闂村唴 - content = notice.getContent(); - url = notice.getUrl(); + + } else { + notice = null; } } + + JumpDetail jumpDetail = null; + + if (notice != null && acceptData.getVersion() >= 98 && "android".equalsIgnoreCase(acceptData.getPlatform())) { + content = notice.getContent(); + url = notice.getUrl().split("\\?")[1].replace("url=", "").trim(); + jumpDetail = jumpDetailService.selectByTypeCache(JumpTypeEnum.baichuan); + } + + JSONObject params = new JSONObject(); + params.put("url", url); JSONObject object = new JSONObject(); object.put("Content", content);// content object.put("Url", url);// url object.put("ShowAd", "0");// 骞垮憡鏄剧ず + object.put("Params", params);// 璺宠浆鍙傛暟 + object.put("jumpDetail", new Gson().toJson(jumpDetail)); out.print(JsonUtil.loadTrueJson(object.toString())); out.flush(); @@ -249,4 +278,39 @@ } return; } + + public void playStatistic(AcceptData acceptData, HttpServletRequest request, PrintWriter out) { + String videoId = request.getParameter("VideoId"); + String resourceId = request.getParameter("ResourceId"); + playLogger.info(VideoLogFactory.createStatisticLog("", Integer.parseInt(resourceId), videoId)); + + out.print(JsonUtil.loadTrueJson("")); + return; + } + + + /** + * 鑾峰彇椋庤鎺堟潈鐮� + * + * @param acceptData + * @param request + * @param out + */ + public void getFuntvAuthCode(AcceptData acceptData, HttpServletRequest request, PrintWriter out) { + String authCode = null; +// try { +// authCode = redisManager.getCommonString("funtv_authcode"); +// } catch (Exception e) { +// } +// +// if (!StringUtil.isNullOrEmpty(authCode)) { +// out.print(JsonUtil.loadTrueJson(authCode)); +// } else { + authCode = FunTVNewApi.getAuthCode(); +// if (!StringUtil.isNullOrEmpty(authCode)) { +// redisManager.cacheCommonString("funtv_authcode", authCode, 60 * 5);//缂撳瓨5鍒嗛挓 +// } + out.print(JsonUtil.loadTrueJson(authCode)); + } +// } } -- Gitblit v1.8.0