|  | @@ -2,7 +2,7 @@ package com.keao.edu.im.mec.im;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  import com.alibaba.fastjson.JSON;
 | 
	
		
			
				|  |  |  import com.alibaba.fastjson.JSONObject;
 | 
	
		
			
				|  |  | -import com.google.gson.JsonObject;
 | 
	
		
			
				|  |  | +import com.keao.edu.common.exception.BizException;
 | 
	
		
			
				|  |  |  import com.keao.edu.im.http.HttpHelper;
 | 
	
		
			
				|  |  |  import com.keao.edu.im.pojo.IMApiResultInfo;
 | 
	
		
			
				|  |  |  import com.keao.edu.im.pojo.IMTokenInfo;
 | 
	
	
		
			
				|  | @@ -222,11 +222,10 @@ public class IMHelper {
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 开始录制
 | 
	
		
			
				|  |  |       * @param hostUserId
 | 
	
		
			
				|  |  | -     * @param sessionId
 | 
	
		
			
				|  |  |       * @return
 | 
	
		
			
				|  |  |       * @throws Exception
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  | -    public IMApiResultInfo startRecord(String hostUserId, String sessionId, String roomId) throws Exception {
 | 
	
		
			
				|  |  | +    public IMApiResultInfo startRecord(String hostUserId, String roomId) throws Exception {
 | 
	
		
			
				|  |  |          if (hostUserId == null) {
 | 
	
		
			
				|  |  |              throw new IllegalArgumentException("Paramer 'userId' is required");
 | 
	
		
			
				|  |  |          }
 | 
	
	
		
			
				|  | @@ -243,12 +242,12 @@ public class IMHelper {
 | 
	
		
			
				|  |  |          jsonObject.put("sliceMin","60");
 | 
	
		
			
				|  |  |          jsonObject.put("hostUserId",hostUserId);
 | 
	
		
			
				|  |  |          JSONObject json = new JSONObject();
 | 
	
		
			
				|  |  | -        json.put("sessionId",sessionId);
 | 
	
		
			
				|  |  | +        json.put("sessionId",roomQuery(roomId));
 | 
	
		
			
				|  |  |          json.put("config",jsonObject);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          String body = json.toJSONString();
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        HttpURLConnection conn = httpHelper.createIMRtcPostHttpConnection("/rtc/record/start.json", "application/x-www-form-urlencoded",roomId);
 | 
	
		
			
				|  |  | +        HttpURLConnection conn = httpHelper.createIMRtcPostHttpConnection("/rtc/record/start.json", "application/json",roomId);
 | 
	
		
			
				|  |  |          httpHelper.setBodyParameter(body, conn);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          return JSON.parseObject(httpHelper.returnResult(conn, body), IMApiResultInfo.class);
 | 
	
	
		
			
				|  | @@ -257,11 +256,10 @@ public class IMHelper {
 | 
	
		
			
				|  |  |      /**
 | 
	
		
			
				|  |  |       * 结束录制
 | 
	
		
			
				|  |  |       * @param hostUserId
 | 
	
		
			
				|  |  | -     * @param sessionId
 | 
	
		
			
				|  |  |       * @return
 | 
	
		
			
				|  |  |       * @throws Exception
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  | -    public IMApiResultInfo stopRecord(String hostUserId, String sessionId, String roomId) throws Exception {
 | 
	
		
			
				|  |  | +    public IMApiResultInfo stopRecord(String hostUserId, String roomId) throws Exception {
 | 
	
		
			
				|  |  |          if (hostUserId == null) {
 | 
	
		
			
				|  |  |              throw new IllegalArgumentException("Paramer 'userId' is required");
 | 
	
		
			
				|  |  |          }
 | 
	
	
		
			
				|  | @@ -278,12 +276,12 @@ public class IMHelper {
 | 
	
		
			
				|  |  |          jsonObject.put("sliceMin","60");
 | 
	
		
			
				|  |  |          jsonObject.put("hostUserId",hostUserId);
 | 
	
		
			
				|  |  |          JSONObject json = new JSONObject();
 | 
	
		
			
				|  |  | -        json.put("sessionId",sessionId);
 | 
	
		
			
				|  |  | +        json.put("sessionId",roomQuery(roomId));
 | 
	
		
			
				|  |  |          json.put("config",jsonObject);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          String body = json.toJSONString();
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        HttpURLConnection conn = httpHelper.createIMRtcPostHttpConnection("/rtc/record/stop.json", "application/x-www-form-urlencoded",roomId);
 | 
	
		
			
				|  |  | +        HttpURLConnection conn = httpHelper.createIMRtcPostHttpConnection("/rtc/record/stop.json", "application/json",roomId);
 | 
	
		
			
				|  |  |          httpHelper.setBodyParameter(body, conn);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          return JSON.parseObject(httpHelper.returnResult(conn, body), IMApiResultInfo.class);
 | 
	
	
		
			
				|  | @@ -295,19 +293,23 @@ public class IMHelper {
 | 
	
		
			
				|  |  |       * @return
 | 
	
		
			
				|  |  |       * @throws Exception
 | 
	
		
			
				|  |  |       */
 | 
	
		
			
				|  |  | -    public IMApiResultInfo roomQuery(String roomId) throws Exception {
 | 
	
		
			
				|  |  | +    public String roomQuery(String roomId) throws Exception {
 | 
	
		
			
				|  |  |          if (StringUtils.isEmpty(roomId)) {
 | 
	
		
			
				|  |  |              throw new IllegalArgumentException("Paramer 'roomId' is required");
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        StringBuilder sb = new StringBuilder();
 | 
	
		
			
				|  |  | -        sb.append("roomId=").append(URLEncoder.encode(roomId, UTF8));
 | 
	
		
			
				|  |  | -        String body = sb.toString();
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        HttpURLConnection conn = httpHelper.createIMRtcPostHttpConnection("/rtc/room/query", "application/x-www-form-urlencoded",null);
 | 
	
		
			
				|  |  | -        httpHelper.setBodyParameter(body, conn);
 | 
	
		
			
				|  |  | -        String returnResult = httpHelper.returnResult(conn, body);
 | 
	
		
			
				|  |  | -        return null;
 | 
	
		
			
				|  |  | +        JSONObject jsonObject = new JSONObject();
 | 
	
		
			
				|  |  | +        jsonObject.put("roomId",roomId);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        HttpURLConnection conn = httpHelper.createIMRtcPostHttpConnection("/rtc/room/query.json", "application/json",null);
 | 
	
		
			
				|  |  | +        httpHelper.setBodyParameter(jsonObject.toJSONString(), conn);
 | 
	
		
			
				|  |  | +        String returnResult = httpHelper.returnResult(conn, jsonObject.toJSONString());
 | 
	
		
			
				|  |  | +        JSONObject resultObject = JSONObject.parseObject(returnResult);
 | 
	
		
			
				|  |  | +        String code = resultObject.get("code").toString();
 | 
	
		
			
				|  |  | +        if("200".equals(code)){
 | 
	
		
			
				|  |  | +            return resultObject.get("sessionId").toString();
 | 
	
		
			
				|  |  | +        }else {
 | 
	
		
			
				|  |  | +            throw new BizException("获取sessionId失败");
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 |