示例#1
0
 private void SetStatus(MessengerStatus status)
 {
     foreach (IMessengerStatus messenger in _messengers)
     {
         messenger.SetStatus(status);
     }
 }
示例#2
0
        private static ContactAvailability GetLinqStatus(MessengerStatus status)
        {
            switch (status)
            {
            case MessengerStatus.Free:
                return(ContactAvailability.Free);

            case MessengerStatus.Busy:
                return(ContactAvailability.Busy);

            case MessengerStatus.DoNotDisturb:
                return(ContactAvailability.DoNotDisturb);

            case MessengerStatus.Away:
                return(ContactAvailability.Away);

            default:
                return(ContactAvailability.Free);
            }
        }
        /// <summary>
        /// Converts <see cref="MessengerStatus"/> to <see cref="MISTATUS"/>
        /// </summary>
        internal static MISTATUS ToMIStatus(MessengerStatus status)
        {
            switch (status)
            {
            case MessengerStatus.Online: return(MISTATUS.MISTATUS_ONLINE);

            case MessengerStatus.Away: return(MISTATUS.MISTATUS_AWAY);

            case MessengerStatus.BeRightBack: return(MISTATUS.MISTATUS_BE_RIGHT_BACK);

            case MessengerStatus.OutToLunch: return(MISTATUS.MISTATUS_OUT_TO_LUNCH);

            case MessengerStatus.Busy: return(MISTATUS.MISTATUS_BUSY);

            case MessengerStatus.OnThePhone: return(MISTATUS.MISTATUS_ON_THE_PHONE);

            case MessengerStatus.Offline: return(MISTATUS.MISTATUS_OFFLINE);

            case MessengerStatus.Invisible: return(MISTATUS.MISTATUS_INVISIBLE);

            default:
            case MessengerStatus.Unknown: return(MISTATUS.MISTATUS_UNKNOWN);
            }
        }
示例#4
0
 public void SetStatus(MessengerStatus status)
 {
     SetStatus(GetLinqStatus(status));
 }