示例#1
0
        public static SipCallInfo NewTlfCall(IEnumerable <SipChannel> channels, CORESIP_Priority priority, string referBy)
        {
            SipCallInfo info = NewCall(channels);

            info._Priority = priority;
            info._ReferBy  = referBy;

            return(info);
        }
示例#2
0
        public static SipCallInfo NewRedirectCall(IEnumerable <SipChannel> channels, CORESIP_Priority priority, int callId)
        {
            SipCallInfo info = NewCall(channels);

            info._Redirect = true;
            info._Id       = callId;
            info._Priority = priority;

            return(info);
        }
示例#3
0
        public void UpdateOutgoingCall(IEnumerable <SipChannel> channels, CORESIP_Priority priority)
        {
            _Priority = priority;

            if (_Priority == CORESIP_Priority.CORESIP_PR_EMERGENCY)
            {
                foreach (SipChannel ch in channels)
                {
                    ch.ResetCallResults(false);
                }
            }
        }
示例#4
0
        private SipCallInfo(int callId, string localId, string remoteId, CORESIP_Priority priority, CORESIP_CallType type, SipChannel ch, SipRemote remote, SipLine line)
        {
            _Id       = callId;
            _LocalId  = localId;
            _RemoteId = remoteId;
            _Priority = priority;
            _Ch       = ch;
            _Remote   = remote;
            _Line     = line;

            switch (type)
            {
            case CORESIP_CallType.CORESIP_CALL_MONITORING:
            case CORESIP_CallType.CORESIP_CALL_GG_MONITORING:
            case CORESIP_CallType.CORESIP_CALL_AG_MONITORING:
                _Monitoring = true;
                break;
            }
        }