type  TChannelNoStatus = (csIdle, csDial, csOnHook, csRing, csOffHook, csLinking, csTalking, csSpeak,
    csRecDTMF, csRecFax, csRecFaxEnd, csSendFax, csSendFaxEnd, cs81, cs82);
    //TChAction 通道动作类型
    //    caDial 拨号
    //csOnHook 挂机;caRing 响铃;caOffHook 摘机; caLinking 连通;caTalking 语音提示
    //csSpeak 通话;caRecDTMF 接收DTMF码;caRecFax 接收传真;caRecFaxEnd 接收完毕;
    //csSendFax 发送传真;caSendFaxEnd 发送完毕  TFaxChannelNoStatus = (fcnsIdle, fcnsRec, fcnsSend);  TTelKind = (tkNo, tkI2O, tkO2I, tkI2I, tkLine, tkIChangeI); //没用
  TUser = record
    UserId: string;
    PassWord: string;
  end;
  TLinkCh = record
    FaxCh: integer;
    VocCh: integer;
    Tel: string;
    ChangTimes: integer;
  end;
  TVocStatus = record
    TelKind: TTelKind;
    FirstDMTF: boolean;
    ChStatus: TChannelNoStatus;
    WaitTime: Integer; //待机时间
    Step: integer;
    Check: integer;
    LinkCh: TLinkCh; //Ch的信息
    User: Tuser; //员工    IsLink: boolean;
    OnHookTime: integer; //内线挂机次数
    InChangeToIn: boolean;
    OnHookTimeEnable: boolean;
    ChangeTimes: integer;
    TransmitterCh: integer;
  end;
  TFaxStatus = record
    FaxChNow: TFaxChannelNoStatus;
    LinkCh: TlinkCh;
  end;function LoadVoc(var DMFAX1: TDMFAX): boolean;var
  VocFilePath: string;
  VocChStatus: array[0..7] of TVocStatus;
  FaxChStatus: array[0..3] of TFaxStatus;先定义通道的状态