public SmcErr StartControlPtz(string cameraNo, PtzCommandType ptzCommand, int param)
{
NLogEx.LoggerEx logEx = new NLogEx.LoggerEx(log);
logEx.Trace("Enter: T28181VideoMonitor.StartControlPtz({0},{1},{2}).", cameraNo, ptzCommand, param);
SmcErr err = new CgwError();
//将ptz命令转换成T28181的命令
T28181PTZCmd cmd = new T28181PTZCmd(ptzCommand, param);
string ptzCmd = cmd.ToString();
logEx.Trace("Call T28181VideoMonitor.StartPtzControl({0},{1},{2}).", cameraNo, Enum.GetName(typeof(PtzCommandType), (int)ptzCommand), param);
//控制权限级别设为1
EM_SIP_RESULT iRet = sipStack.PtzControl(cameraNo, ptzCmd, "1");
//如果为0,表示成功
if (iRet == EM_SIP_RESULT.RET_SUCCESS)
{
logEx.Info("Start control ptz success.Camera No:{0}.", cameraNo);
}
else
{
err.SetErrorNo(CgwError.START_CONTROL_PTZ_FAILED);
logEx.Error("Start control ptz failed.Camera No:{0}.T28181VideoMonitor error code:{1}.", cameraNo, iRet);
return err;
}
return err;
}