package com.ym.service; import com.ym.common.ApiException; import com.ym.pojo.DeviceTypeEnum; import com.ym.pojo.ReqChangeUserRoleData; import com.ym.pojo.ReqMemberOnlineStatus; import com.ym.pojo.RoomResult; import java.util.List; /** * Created by super_zou on 2019/11/28. */ public interface RoomService { //everyone public RoomResult joinRoom(String userName, String roomId, boolean isAudience, boolean isDisableCamera) throws ApiException, Exception; void signIn(Long roomId); public Boolean leaveRoom(String roomId) throws ApiException, Exception; //only host public Boolean downgrade(String roomId, List users) throws ApiException, Exception; public Boolean kickMember(String roomId) throws ApiException, Exception; //only teacher public Boolean display(String roomId, int type, String uri) throws ApiException, Exception; public String createWhiteBoard(String roomId) throws ApiException, Exception; public Boolean deleteWhiteboard(String roomId, String whiteBoardId) throws ApiException, Exception; public List getWhiteboard(String roomId) throws ApiException, Exception; public Boolean turnWhiteBoardPage(String roomId, String whiteBoardId, int page) throws ApiException, Exception; public Boolean controlDevice(String roomId, String userId, DeviceTypeEnum type, boolean enable) throws ApiException, Exception; public Boolean approveControlDevice(String roomId, String ticket) throws ApiException, Exception; public Boolean rejectControlDevice(String roomId, String ticket) throws ApiException, Exception; public List getMembers(String roomId) throws ApiException, Exception; public Boolean applySpeech(String roomId) throws ApiException, Exception; public Boolean approveSpeech(String roomId, String requestId) throws ApiException, Exception; public Boolean rejectSpeech(String roomId, String requestId) throws ApiException, Exception; public Boolean transfer(String roomId, String userId) throws ApiException, Exception; public Boolean inviteUpgradeRole(String roomId, String userId, int role) throws ApiException, Exception; public Boolean approveUpgradeRole(String roomId, String ticket) throws ApiException, Exception; public Boolean rejectUpgradeRole(String roomId, String ticket) throws ApiException, Exception; public Boolean syncDeviceState(String roomId, DeviceTypeEnum type, boolean enable) throws ApiException, Exception; public Boolean changeRole(String roomId, String userId, int role) throws ApiException, Exception; public void destroyRoom(String roomId); public Boolean memberOnlineStatus(List statusList, String nonce, String timestamp, String signature) throws ApiException, Exception; public void userIMOfflineKick(String userId); boolean statusSync(String roomId,String userId) throws Exception; }