Newer
Older
safe_production_front / public / DispatchLib / DispatchCallback.js
wangxitong on 16 Aug 9 KB first commit
function DispatchCallback() {}

Rcv = function(type, json_str)
{
	console.log("Rcv type:" + type + " json:" + json_str);
	var parm = JSON.parse(json_str);
	console.log(parm);
}


DispatchCallback.InitializeRsp=function(result){
	if(result==0){
        demo.$message('初始化成功')
    }else{
        demo.$message('初始化失败')
    }
}

DispatchCallback.UninitializeRsp=function(result){
    if (Parm.Result==0) {
		demo.$message('释放成功')
	} else {
		demo.$message('释放失败')
	}
}

DispatchCallback.LoginRsp=function(result){
        switch(result){
          case 0:
            demo.$message('登录成功');
            break;
          case 1:
            demo.$message('资源初始化失败');
            break;
          case 2:
            demo.$message('用户名密码错误');
            break;
          case 3:
            demo.$message('许可证过期');
            break;
          case 4:
            demo.$message('登录失败');
            break;
          case 5:
            demo.$message('超时,服务器无响应');
            break;
          case 6:
            demo.$message('已登录,重复登录');
            break;
        }
}

DispatchCallback.LogoutRsp=function(result){
	if(result==0){
        demo.$message('注销成功')
    }else{
        demo.$message('注销失败')
    }
}

DispatchCallback.ServerLinkStatusNotify=function(result){
        switch(result){
          case 1:
            demo.$message('本地服务连接成功');
            break;
          case 2:
            demo.$message('本地服务断链');
            break;
          case 3:
            demo.$message('视频服务器连接成功');
            break;
          case 4:
            demo.$message('视频服务器断链');
            break;
          case 5:
            demo.$message('软交换服务器连接成功');
            break;
          case 6:
            demo.$message('软交换服务器断链');
            break;
          case 7:
            demo.$message('对讲服务器连接成功');
            break;
          case 8:
            demo.$message('对讲服务器断链');
            break;
          case 9:
            demo.$message('被踢下线');
            break;
        }
}

DispatchCallback.MonitorVideoStatusNotify=function(result){
        switch(result){
          case 1:
            demo.$message('连接中');
            break;
          case 2:
            demo.$message('连接成功');
            break;
          case 3:
            demo.$message('对方挂断');
            break;
          case 4:
            demo.$message('连接超时');
            break;
          case 5:
            demo.$message('对方拒接');
            break;
          case 6:
            demo.$message('来电超时未接');
            break;
          case 7:
            demo.$message('连接失败');
            break;
          case 8:
            demo.$message('对方正忙');
            break;
          case 9:
            demo.$message('对方不在线');
            break;
        }
}

DispatchCallback.MonitorVideoIncomingCallNotify=function(CallID,Number){
    console.log("呼叫ID:"+CallID+"终端号码"+Number);
    DispatchCtrlLib.MonitorVideoHandleIncomingCall(CallID, 1);
    console.log("视频推送 来电自动接听");
}

DispatchCallback.VoipCallStatusNotify=function(result){
        switch(result){
          case 1:
            demo.$message('连接中');
            break;
          case 2:
            demo.$message('连接成功');
            break;
          case 3:
            demo.$message('对方挂断');
            break;
          case 4:
            demo.$message('连接超时');
            break;
          case 5:
            demo.$message('对方拒接');
            break;
          case 6:
            demo.$message('来电超时未接');
            break;
          case 7:
            demo.$message('连接失败');
            break;
          case 8:
            demo.$message('对方正忙');
            break;
          case 9:
            demo.$message('对方不在线');
            break;
        }
}

DispatchCallback.VoipIncomingCallNotify=function(CallID, CallType,ConferenceInvite){
  if(CallType==0){
    DispatchCtrlLib.VoipHandleIncomingCall(CallID, 1);
  	console.log("语音通话 来电自动接听");
  }else{
    DispatchCtrlLib.VoipHandleIncomingCall(CallID, 1);
  	console.log("视频通话 来电自动接听");
    VideoLibArray[2].StartDisplay(CallID);
    VideoLibArray[1].StartDisplay(-1);

  }
  if(ConferenceInvite==0){
  	console.log("普通呼叫");
  }else{
  	console.log("会议邀请");
  }
}

DispatchCallback.ConferenceStatusNotify=function(Status,MemType){
        switch(Status){
          case 0:
            demo.$message('成员移除');
            break;
          case 1:
            demo.$message('成员已接入');
            break;
          case 2:
            demo.$message('成员未接入');
            break;
          case 3:
            demo.$message('成员连接中');
            break;
          case 4:
            demo.$message('会议结束');
            break;
          case 5:
            demo.$message('成员禁言');
            break;
          case 6:
            demo.$message('成员禁言取消');
            break;
          case 7:
            demo.$message('成员开始讲话');
            break;
          case 8:
            demo.$message('成员结束讲话');
            break;
          case 9:
            demo.$message('会议聚焦');
            break;
        }
        switch(MemType){
          case 1:
            console.log("成员类型为调度台");
            break;
          case 2:
            console.log("成员类型为手机");
            break;
          case 3:
            console.log("成员类型为SIP话机");
            break;
          case 4:
            console.log("未分机");
            break;
        }
}

//DispatchCallback.PttMonitorRsp=function(Type,Result){
// if(Type==1){
// 	if(Result==0){
// 		demo.$message('开始监听成功');
// 	}else{
// 		demo.$message('开始监听失败');
// 	}
// }else if(Type==0){
// 	if(Result==0){
// 		demo.$message('取消监听成功');
// 	}else{
// 		demo.$message('取消监听失败');
// 	}
// }
//}

DispatchCallback.LocStartSubscribeRsp=function(result){
   	if(result==0){
        demo.$message('订阅位置成功')
    }else{
        demo.$message('订阅位置失败')
    }
}

DispatchCallback.StatusNotify=function(obj){
  var status=obj.Status;
  if(status==0){
        demo.$message('终端离线')
    }else if(status==1){
        demo.$message('终端在线')
    }else if(status==3){
        demo.$message('终端在线且上报位置中')
    }
}

DispatchCallback.MsgSendRsp=function(result){
   	if(result==0){
        demo.$message('发送消息成功')
    }else{
        demo.$message('发送消息失败')
    }
}

DispatchCallback.MsgRecvNotify=function(TargetType,MsgType ){
   	switch(TargetType){
   		case 0:
   		  console.log("终端");
   		  break;
   		case 1:
   		  console.log("群组");
   		  break;
   		case 2:
   		  console.log("调度员");
   		  break;
   		case 3:
   		  console.log("临时组");
   		  break;
   	}
   	switch(MsgType ){
   		case 0:
   		  console.log("文字");
   		  break;
   		case 1:
   		  console.log("图片");
   		  break;
   		case 2:
   		  console.log("录音");
   		  break;
   		case 3:
   		  console.log("录像");
   		  break;
   		case 4:
   		  console.log("位置");
   		  break;
   		case 5:
   		  console.log("文件");
   		  break;
   		case 6:
   		  console.log("PTT消息");
   		  break;
   	}
}

DispatchCallback.ServerBroadcastNotify=function(Type){
   	if(Type==1){
        demo.$message('呼叫调度台')
    }else if(Type==2){
        demo.$message('一键告警')
    }else if(Type==3){
        demo.$message('多媒体上传通知')
    }else if(Type==6){
        demo.$message('事件上报')
    }
}

DispatchCallback.PttCallback=function(Type, Parm) {
    switch (Type) {
        case "PttMonitorRsp":
            demo.$message('ptt监听应答' + (Parm.Result == 0 ? "成功" : "失败"))
            break;
        case "PttCallRsp":
            demo.$message('ptt呼叫应答' + (Parm.Result == 0 ? "成功" : "失败"))
            break;
        case "PttTalkRequestRsp":
            demo.$message('ptt申请话权应答' + (Parm.Result == 0 ? "成功" : "失败"))
            break;
        case "PttTalkReleaseRsp":
            demo.$message('ptt释放话权应答' + (Parm.Result == 0 ? "成功" : "失败"))
            break;
        case "PttCallStatusNotify":
            demo.pocCall.status_moniter = (Parm.MonitorStatus == 0 ? "空闲" : "监听中");
            demo.pocCall.status_call = (Parm.CallStatus == 0 ? "空闲" : "呼叫中");
            break;
        case "PttTalkStatusNotify":
            if (Parm.Type == 0) {
                demo.pocCall.status_speak = "空闲"
                demo.pocCall.speaker = ""
            } else if (Parm.Type == 1) {
                demo.pocCall.status_speak = "正在讲"
                demo.pocCall.speaker = "我"
            } else if (Parm.Type == 2) {
                demo.pocCall.status_speak = "正在听"
                demo.pocCall.speaker = Parm.Talker
            }
            break;
    }



}