package net.northking.cctp.se.debug.service;

import javax.websocket.Session;

/**
 * 脚本调试服务
 * @author  xuyang.wang
 */
public interface DebugService {
    String TYPE_MOBILE = "mobile";
    String TYPE_PC = "pc";
    String TYPE_INTERFACE  = "interface";
    /**
     * 创建调试会话
     * @param deviceToken
     * @param session
     * @return
     */
    DebugSession createDebugSession(String deviceToken,String sessionType, Session session, String sessionId);
    /**
     * 销毁调试会话
     * @param sessionId
     */
    void destroyDebugSession(String sessionId);

    /**
     * 处理会话请求消息
     * @param session
     * @param requestMsg
     */
    void receiveRequestMsg(Session session,String requestMsg);

    /**
     * 获取调试会话
     * @param sessionId
     * @return
     */
    DebugSession getDebugSession(String sessionId);

    /**
     * 检查并清除失效的连接
     * @param type 类型
     */
    void checkAndClear(String type);
}
