Commit 3a05ef35e80a5ab3b03ed4b5a40c70372ed5bed7

Authored by 刘基城
2 parents b9f453df 6ebb2230

Merge branch 'v532' into 'master'

添加直播接口



See merge request !5
.settings/org.eclipse.wst.common.component
@@ -14,15 +14,6 @@ @@ -14,15 +14,6 @@
14 <dependent-module archiveName="smart-framework-4.0.0.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/smart-framework/smart-framework"> 14 <dependent-module archiveName="smart-framework-4.0.0.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/smart-framework/smart-framework">
15 <dependency-type>uses</dependency-type> 15 <dependency-type>uses</dependency-type>
16 </dependent-module> 16 </dependent-module>
17 - <dependent-module archiveName="smart-plugin-dbcp-1.0.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/smart-plugin-dbcp/smart-plugin-dbcp">  
18 - <dependency-type>uses</dependency-type>  
19 - </dependent-module>  
20 - <dependent-module archiveName="smart-plugin-rest-1.0.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/smart-plugin-rest/smart-plugin-rest">  
21 - <dependency-type>uses</dependency-type>  
22 - </dependent-module>  
23 - <dependent-module archiveName="smart-plugin-i18n-1.0.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/smart-plugin-i18n/smart-plugin-i18n">  
24 - <dependency-type>uses</dependency-type>  
25 - </dependent-module>  
26 <dependent-module archiveName="cnlive_mam_commons-0.0.1-SNAPSHOT.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/cnlive_mam_commons/cnlive_mam_commons"> 17 <dependent-module archiveName="cnlive_mam_commons-0.0.1-SNAPSHOT.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/cnlive_mam_commons/cnlive_mam_commons">
27 <dependency-type>uses</dependency-type> 18 <dependency-type>uses</dependency-type>
28 </dependent-module> 19 </dependent-module>
src/main/java/com/cnlive/mz/live/action/VideoAction.java 0 → 100644
  1 +package com.cnlive.mz.live.action;
  2 +
  3 +import java.util.Date;
  4 +import java.util.LinkedHashMap;
  5 +import java.util.Map;
  6 +
  7 +import org.smart4j.framework.dao.bean.Pager;
  8 +import org.smart4j.framework.ioc.annotation.Inject;
  9 +import org.smart4j.framework.mvc.annotation.Action;
  10 +import org.smart4j.framework.mvc.annotation.Request;
  11 +import org.smart4j.framework.mvc.bean.ApiBean;
  12 +import org.smart4j.framework.mvc.bean.Params;
  13 +
  14 +import com.cnlive.mz.commons.CnliveUtil;
  15 +import com.cnlive.mz.live.entity.TApp;
  16 +import com.cnlive.mz.live.entity.TLive;
  17 +import com.cnlive.mz.live.entity.TVideo;
  18 +import com.cnlive.mz.live.service.TAppService;
  19 +import com.cnlive.mz.live.service.TDispatchServerService;
  20 +import com.cnlive.mz.live.service.TLiveService;
  21 +import com.cnlive.mz.live.service.TUserService;
  22 +import com.cnlive.mz.live.service.TVideoService;
  23 +
  24 +@Action
  25 +public class VideoAction {
  26 + @Inject
  27 + private TDispatchServerService tDispatchServerService;
  28 + @Inject
  29 + private TAppService tAppService;
  30 + @Inject
  31 + private TVideoService tVideoService;
  32 + @Inject
  33 + private TUserService tUserService;
  34 + @Inject
  35 + private TLiveService tLiveService;
  36 +
  37 + /**
  38 + * 服务器定向
  39 + *
  40 + * @param params
  41 + * @return
  42 + * {"mediaComment":"","nickName":"阳Sir","appId":"1","mediaName":"","userId"
  43 + * :"1167015","uuid":
  44 + * "1167015_1463725085798_6a551f9122494a05ac8566b7a2ae1092"}
  45 + */
  46 + @Request.Post("/api/video/redirect")
  47 + public ApiBean redirect(Params params) {
  48 + String app_access_key = params.getString("app_access_key");
  49 + String video_type = params.getString("video_type");
  50 + String userId = params.getString("userId");
  51 + TApp app = tAppService.getAppByAccessKey(app_access_key);
  52 + ApiBean apiBean = new ApiBean();
  53 + apiBean.setCode(100);
  54 + apiBean.setMessage("请求成功");
  55 + Map map = tDispatchServerService.getDispatchServer(app, video_type, app_access_key);
  56 + String chat_room_id = "";
  57 + int active_id = 0;
  58 + String ks_id = "";
  59 + if (video_type.equals("3")) {
  60 + TLive tLive = tLiveService.save(Integer.parseInt(userId));
  61 + chat_room_id = tLive.getChat_room_id();
  62 + active_id = tLive.getId();
  63 + ks_id = userId + "_" + tLive.getId();
  64 + }
  65 + map.put("chat_room_id", chat_room_id);
  66 + map.put("active_id", active_id);
  67 + map.put("ks_id", ks_id);
  68 + apiBean.setData(map);
  69 + return apiBean;
  70 + }
  71 +
  72 + @Request.Post("/api/video/supload")
  73 + public ApiBean supload(Params params) {
  74 + Map data = new LinkedHashMap();
  75 + String app_access_key = params.getString("app_access_key");
  76 + String video_type = params.getString("video_type");
  77 + String user_access_key = params.getString("user_access_key");
  78 + String server_access_key = params.getString("server_access_key");
  79 + String active_id = params.getString("active_id");
  80 + String title = params.getString("title");
  81 + String description = params.getString("description");
  82 + String args = params.getString("custom_args");
  83 + String uuid = CnliveUtil.getUUID();
  84 + String md5 = params.getString("md5");
  85 + String relation_id = params.getString("relation_id");
  86 + if (video_type.equals("2")) {
  87 + // 2:sdk上传录播文件
  88 + TVideo tVideo = new TVideo();
  89 + tVideo.setCustom_args(args);
  90 + tVideo.setRelation_id(relation_id);
  91 + tVideo.setName(params.getString("name"));
  92 + tVideo.setVideo_type(params.getString("video_type"));
  93 + tVideo.setPlat(params.getString("plat"));
  94 + tVideo.setState(207);
  95 + tVideo.setMd5(md5);
  96 + tVideo.setVideo_uuid(uuid);
  97 + tVideo.setTitle(title);
  98 + tVideo.setDescription(description);
  99 + tVideoService.saveSdkVideo(tVideo, server_access_key, user_access_key, app_access_key);
  100 + } else if (video_type.equals("3")) {
  101 + // 3: sdk直播上传文件
  102 + TLive tLive = tLiveService.getTLiveById(Integer.parseInt(active_id));
  103 + tLive.setTitle(title);
  104 + tLive.setDescription(description);
  105 + tLive.setStart_time(new Date());
  106 + tLive.setUuid(uuid);
  107 + tLive.setUser_uuid(params.getString("name"));
  108 + tLive.setRelation_id(relation_id);
  109 + tLive.setLive_url("http://cnlive.hlslive.ks-cdn.com/live/" + relation_id + "_" + tLive.getId()
  110 + + "/index.m3u8");
  111 + tLiveService.startLive(tLive);
  112 + }
  113 + data.put("video_uuid", uuid);
  114 + ApiBean apiBean = new ApiBean();
  115 + apiBean.setCode(100);
  116 + apiBean.setMessage("请求成功");
  117 + apiBean.setData(data);
  118 + return apiBean;
  119 + }
  120 +
  121 + @Request.Post("/api/video/all")
  122 + public ApiBean all(Params params) {
  123 + String app_access_key = params.getString("app_access_key");
  124 + String relationId = params.getString("relation_id");
  125 + String pageNo = params.getString("page_no");
  126 + String relation_id = params.getString("relation_id");
  127 + String upload_type = params.getString("upload_type");
  128 + String page_no = params.getString("page_no");
  129 + String video_type = params.getString("video_type");
  130 + Pager<TVideo> page = tVideoService.findAll(app_access_key, relationId, pageNo);
  131 + ApiBean apiBean = new ApiBean();
  132 + apiBean.setCode(100);
  133 + apiBean.setMessage("请求成功");
  134 + apiBean.setData(page);
  135 + return apiBean;
  136 + }
  137 +
  138 + @Request.Post("/api/video/uploadNotify")
  139 + public ApiBean uploadNotify(Params params) {
  140 + String video_uuid = params.getString("video_uuid");
  141 + String upload_type = params.getString("upload_type");
  142 + String video_type = params.getString("video_type");
  143 + String state = params.getString("state");
  144 + if (video_type.equals("2")) {
  145 + // 点播通知
  146 + tVideoService.notify(video_uuid);
  147 + } else if (video_type.equals("3")) {
  148 + // 直播通知
  149 + tLiveService.notify(video_uuid);
  150 + }
  151 + ApiBean apiBean = new ApiBean();
  152 + apiBean.setCode(100);
  153 + apiBean.setMessage("请求成功");
  154 + return apiBean;
  155 + }
  156 +
  157 + @Request.Post("/api/video/delete")
  158 + public ApiBean delete(Params params) {
  159 + String user_access_key = params.getString("user_access_key");
  160 + String video_uuid = params.getString("video_uuid");
  161 + String app_access_key = params.getString("app_access_key");
  162 + String video_type = params.getString("video_type");// 视频类型
  163 + tVideoService.delete(video_uuid);
  164 + ApiBean apiBean = new ApiBean();
  165 + apiBean.setCode(100);
  166 + apiBean.setMessage("请求成功");
  167 + return apiBean;
  168 + }
  169 +}
src/main/java/com/cnlive/mz/live/action/VideoApiAction.java deleted 100644 → 0
1 -package com.cnlive.mz.live.action;  
2 -  
3 -import org.smart4j.framework.ioc.annotation.Inject;  
4 -import org.smart4j.framework.mvc.annotation.Action;  
5 -import org.smart4j.framework.mvc.annotation.Request;  
6 -import org.smart4j.framework.mvc.bean.Params;  
7 -import org.smart4j.framework.mvc.bean.Result;  
8 -  
9 -import com.cnlive.mz.live.entity.ResultBean;  
10 -import com.cnlive.mz.live.entity.TApp;  
11 -import com.cnlive.mz.live.service.AppService;  
12 -import com.cnlive.mz.live.service.VideoApiService;  
13 -  
14 -@Action  
15 -public class VideoApiAction {  
16 - @Inject  
17 - private VideoApiService videoApiService;  
18 - @Inject  
19 - private AppService appService;  
20 -  
21 - @Request.Post("com/api/video/redirect")  
22 - public Result redirect(Params params) {  
23 - String app_access_key = params.getString("app_access_key");  
24 - String video_type = params.getString("video_type");  
25 - TApp app =appService.getAppByAccessKey(app_access_key);  
26 - //String ip = getRequest().getRemoteAddr();  
27 - String ip =null;  
28 - ResultBean resultBean = new ResultBean();  
29 - resultBean.setCode(100);  
30 - resultBean.setMessage("请求成功");  
31 - resultBean.setData(videoApiService.getDispatchServer(app,ip, video_type, app_access_key));  
32 - Result result= new Result(true);  
33 - return result.data(resultBean);  
34 - }  
35 - @Request.Post("com/api/video/all")  
36 - public Result all(Params params){  
37 - String app_access_key =params.getString("app_access_key");  
38 - String relationId = params.getString("relation_id");  
39 - String pageNo = params.getString("page_no");  
40 - ResultBean resultBean = new ResultBean();  
41 - resultBean.setCode(100);  
42 - resultBean.setMessage("请求成功");  
43 - resultBean.setData(videoApiService.findAll(app_access_key, relationId, pageNo));  
44 - Result result= new Result(true);  
45 - return result.data(resultBean);  
46 - }  
47 - /*@Request.Post("com/api/video/uploadNotify")  
48 - public Result uploadNotify(Params params){  
49 - String video_uuid = params.getString("video_uuid");  
50 - System.out.println("video_uuid:" + video_uuid);  
51 - String upload_type = params.getString("upload_type");  
52 - int video_type = params.getInt("video_type");  
53 - String state = params.getString("state");  
54 - videoApiService.notify(video_uuid, upload_type, video_type, state);  
55 - Result result= new Result(true);  
56 - return result.data(new ResultBean(100, "请求成功", null));  
57 - }*/  
58 - public static void main(String[] args) {  
59 -  
60 - }  
61 -}  
src/main/webapp/static/assets/cnlive/336x220.jpg 0 → 100644

9.06 KB

target/m2e-wtp/web-resources/META-INF/MANIFEST.MF
1 Manifest-Version: 1.0 1 Manifest-Version: 1.0
2 -Build-Jdk: 1.6.0_45 2 +Build-Jdk: 1.7.0_79
3 Built-By: liujicheng 3 Built-By: liujicheng
4 Created-By: Maven Integration for Eclipse 4 Created-By: Maven Integration for Eclipse
5 5
target/m2e-wtp/web-resources/META-INF/maven/com.cnlive.mz.live.web/cnlive_live_web/pom.properties
1 #Generated by Maven Integration for Eclipse 1 #Generated by Maven Integration for Eclipse
2 -#Tue May 17 10:41:12 CST 2016 2 +#Thu May 26 14:32:01 CST 2016
3 version=0.0.1-SNAPSHOT 3 version=0.0.1-SNAPSHOT
4 groupId=com.cnlive.mz.live.web 4 groupId=com.cnlive.mz.live.web
5 m2e.projectName=cnlive_live_web 5 m2e.projectName=cnlive_live_web
target/m2e-wtp/web-resources/META-INF/maven/com.cnlive.mz.live.web/cnlive_live_web/pom.xml
@@ -53,11 +53,6 @@ @@ -53,11 +53,6 @@
53 <artifactId>cnlive_live_model</artifactId> 53 <artifactId>cnlive_live_model</artifactId>
54 <version>0.0.1-SNAPSHOT</version> 54 <version>0.0.1-SNAPSHOT</version>
55 </dependency> 55 </dependency>
56 - <dependency>  
57 - <groupId>com.cnlive</groupId>  
58 - <artifactId>cnlive_media_tools</artifactId>  
59 - <version>1.0.0</version>  
60 - </dependency>  
61 </dependencies> 56 </dependencies>
62 <packaging>war</packaging> 57 <packaging>war</packaging>
63 </project> 58 </project>