示例#1
0
 /// <summary>Sets the connection's status.</summary>
 /// <exception cref="InvalidOperationException">Thrown when the status is not one of ContactStatus.Online, ContactStatus.Offline, or ContactStatus.Unavailable.</exception>
 /// <param name="status">The connection's status.</param>
 public override void SetStatus(ContactStatus status)
 {
     switch (status) {
         case ContactStatus.Online: icqClient.Status = ICQStatus.icqOnline;
             break;
         case ContactStatus.Offline: icqClient.Status = ICQStatus.icqOffline;
             break;
         case ContactStatus.Unavailable: icqClient.Status = ICQStatus.icqBusy;
             break;
         default: throw new InvalidOperationException();
     }
 }
示例#2
0
 /// <summary>Sets the connection's status.</summary>
 /// <exception cref="InvalidOperationException">Thrown when the status is not one of ContactStatus.Online, ContactStatus.Offline, or ContactStatus.Unavailable.</exception>
 /// <param name="status">The connection's status.</param>
 public override void SetStatus(ContactStatus status)
 {
     switch (status) {
         case ContactStatus.Online: aimClient.Status = AIMStatus.aimOnline;
             break;
         case ContactStatus.Offline: aimClient.Status = AIMStatus.aimOffline;
             break;
         case ContactStatus.Unavailable: aimClient.Status = AIMStatus.aimAway;
             break;
         default: throw new InvalidOperationException();
     }
 }
示例#3
0
 /// <summary>Sets the connection's status.</summary>
 /// <exception cref="InvalidOperationException">Thrown when the status is not one of ContactStatus.Online, ContactStatus.Offline, or ContactStatus.Unavailable.</exception>
 /// <param name="status">The connection's status.</param>
 public override void SetStatus(ContactStatus status)
 {
     switch (status) {
         case ContactStatus.Online: jabberClient.Status = JabberStatus.jsOnline;
             break;
         case ContactStatus.Offline: jabberClient.Status = JabberStatus.jsOffline;
             break;
         case ContactStatus.Unavailable: jabberClient.Status = JabberStatus.jsAway;
             break;
         default: throw new InvalidOperationException();
     }
 }
示例#4
0
		/// <summary>
        /// Get an array of contacts.
        /// </summary>
        /// <param name="email">Match the exact email address.</param>
        /// <param name="limit">Limit the number of returned values.</param>
        /// <param name="modifiedSince">limit contact to contacts modified since the supplied date</param>
		/// <param name="status">Match the exact contact status.</param>
        /// <param name="pag">Pagination object.</param>
        /// <returns>Returns a list of contacts.</returns>
        private ResultSet<Contact> GetContacts(string email, int? limit, DateTime? modifiedSince, ContactStatus? status, Pagination pag)
        {
            // Construct access URL
            string url = (pag == null) ? ConstructUrl(Settings.Endpoints.Default.Contacts, null, new object[] { "email", email, "limit", limit, "modified_since", Extensions.ToISO8601String(modifiedSince), "status", status }) : pag.GetNextUrl();
            // Get REST response
            RawApiResponse response = RestClient.Get(url, UserServiceContext.AccessToken, UserServiceContext.ApiKey);
            try
            {
                var results = response.Get<ResultSet<Contact>>();
                return results;
            }
            catch (Exception ex)
            {
                throw new CtctException(ex.Message, ex);
            }
        }
示例#5
0
		/// <summary>
        /// Get an array of contacts.
        /// </summary>
        /// <param name="accessToken">Constant Contact OAuth2 access token.</param>
        /// <param name="apiKey">The API key for the application</param>
        /// <param name="email">Match the exact email address.</param>
        /// <param name="limit">Limit the number of returned values.</param>
        /// <param name="modifiedSince">limit contact to contacts modified since the supplied date</param>
		/// <param name="status">Match the exact contact status.</param>
        /// <param name="pag">Pagination object.</param>
        /// <returns>Returns a list of contacts.</returns>
        private ResultSet<Contact> GetContacts(string accessToken, string apiKey, string email, int? limit, DateTime? modifiedSince, ContactStatus? status, Pagination pag)
        {
            ResultSet<Contact> results = null;
            // Construct access URL
            string url = (pag == null) ? Config.ConstructUrl(Config.Endpoints.Contacts, null, new object[] { "email", email, "limit", limit, "modified_since", Extensions.ToISO8601String(modifiedSince), "status", status }) : pag.GetNextUrl();
            // Get REST response
            CUrlResponse response = RestClient.Get(url, accessToken, apiKey);
            
            if (response.IsError)
            {
                throw new CtctException(response.GetErrorMessage());
            }

            if (response.HasData)
            {
                // Convert from JSON
                results = response.Get<ResultSet<Contact>>();
            }

            return results;
        }
示例#6
0
    public async Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken)
    {
        iprot.IncrementRecursionDepth();
        try
        {
            TField field;
            await iprot.ReadStructBeginAsync(cancellationToken);

            while (true)
            {
                field = await iprot.ReadFieldBeginAsync(cancellationToken);

                if (field.Type == TType.Stop)
                {
                    break;
                }

                switch (field.ID)
                {
                case 1:
                    if (field.Type == TType.String)
                    {
                        OwnerMid = await iprot.ReadStringAsync(cancellationToken);
                    }
                    else
                    {
                        await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken);
                    }
                    break;

                case 2:
                    if (field.Type == TType.String)
                    {
                        TargetMid = await iprot.ReadStringAsync(cancellationToken);
                    }
                    else
                    {
                        await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken);
                    }
                    break;

                case 3:
                    if (field.Type == TType.I32)
                    {
                        PreviousStatus = (ContactStatus)await iprot.ReadI32Async(cancellationToken);
                    }
                    else
                    {
                        await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken);
                    }
                    break;

                case 4:
                    if (field.Type == TType.I32)
                    {
                        ResultStatus = (ContactStatus)await iprot.ReadI32Async(cancellationToken);
                    }
                    else
                    {
                        await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken);
                    }
                    break;

                default:
                    await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken);

                    break;
                }

                await iprot.ReadFieldEndAsync(cancellationToken);
            }

            await iprot.ReadStructEndAsync(cancellationToken);
        }
        finally
        {
            iprot.DecrementRecursionDepth();
        }
    }
示例#7
0
		/// <summary>
		/// Sends GuildMemberState to client.
		/// </summary>
		/// <param name="client"></param>
		/// <param name="guild"></param>
		/// <param name="member"></param>
		/// <param name="user"></param>
		/// <param name="status"></param>
		public static void GuildMemberState(MsgrClient client, Guild guild, GuildMember member, User user, ContactStatus status)
		{
			var packet = new Packet(Op.Msgr.GuildMemberState, 0);
			packet.PutByte(true);
			packet.PutInt(user.Id);
			packet.PutByte((byte)(status == ContactStatus.Online ? ContactStatus.Online : ContactStatus.Offline));
			packet.PutString(user.ChannelName);
			packet.PutLong(user.LastLogin.Ticks);
			packet.PutInt((int)member.Rank);
			packet.PutString(user.FullName);

			client.Send(packet);
		}
示例#8
0
        protected override void Seed(VD.Data.vuong_cms_context context)
        {
            CacheServ.ClearAll();
            return;

            context.HinhThucMuaHang.AddOrUpdate(HinhThucMuaHang.seed());
            context.SaveChanges();

            context.Roles.AddOrUpdate(Role.seed());
            context.SaveChanges();

            context.Quan.AddOrUpdate(Quan.seed());
            context.SaveChanges();
            //context.Ban.AddOrUpdate(Ban.seed());
            context.SaveChanges();



            context.TrangThaiGiaoHang.AddOrUpdate(TrangThaiGiaoHang.seed());
            context.SaveChanges();
            //
            context.TrangThaiThanhToan.AddOrUpdate(TrangThaiThanhToan.seed());
            context.SaveChanges();
            //httt
            context.HTTTs.AddOrUpdate(HTTT.seed());
            context.SaveChanges();

            //settings:
            context.Settings.AddOrUpdate(Setting.seed());
            context.SaveChanges();

            //role
            context.Roles.AddOrUpdate(Role.seed());
            context.SaveChanges();

            //flag
            context.Langs.AddOrUpdate(Lang.seed());
            context.SaveChanges();

            //Confs
            context.Confs.AddOrUpdate(Conf.seed());
            context.SaveChanges();


            //LogType
            context.LogType.AddOrUpdate(LogType.seed());
            context.SaveChanges();

            //UserStatus
            context.UserStatus.AddOrUpdate(UserStatus.seed());
            context.SaveChanges();

            //user
            context.Users.AddOrUpdate(User.seed());
            context.SaveChanges();

            //slider
            context.Slider.AddOrUpdate(Slider.seed());
            context.SaveChanges();

            //slider
            context.ProductCat.AddOrUpdate(ProductCat.seed());
            context.SaveChanges();

            //img
            context.ImgTmp.AddOrUpdate(ImgTmp.seed());
            context.SaveChanges();

            context.ImgTmpDetail.AddOrUpdate(ImgTmpDetail.seed());
            context.SaveChanges();
            //product
            context.Product.AddOrUpdate(Product.seed());
            context.SaveChanges();



            //contact
            context.ContactStatus.AddOrUpdate(ContactStatus.seed());
            context.SaveChanges();


            //article
            context.Category.AddOrUpdate(Category.seed());
            context.SaveChanges();

            context.Article.AddOrUpdate(Article.seed());
            context.SaveChanges();
        }
示例#9
0
 /// <summary>Sets the connection's status.</summary>
 /// <exception cref="InvalidOperationException">Thrown when the status is not one of ContactStatus.Online, ContactStatus.Offline, or ContactStatus.Unavailable.</exception>
 /// <param name="status">The connection's status.</param>
 abstract public void SetStatus(ContactStatus status);
 public NetSoulContactUpdateEventArgs(string login, ContactStatus status, string location, string userData, string userSocket)
 {
     this.Contact = new Contact(login, status, location, userData, userSocket);
 }
示例#11
0
        /// <summary>
        /// Get an array of contacts.
        /// </summary>
        /// <param name="email">Match the exact email address.</param>
        /// <param name="limit">Limit the number of returned values.</param>
        /// <param name="modifiedSince">limit contacts retrieved to contacts modified since the supplied date</param>
		/// <param name="status">Filter results by contact status</param>
        /// <returns>Returns a list of contacts.</returns>
        public ResultSet<Contact> GetContacts(string email, int? limit, DateTime? modifiedSince, ContactStatus? status)
        {
            return GetContacts(email, limit, modifiedSince, status, null);
        }
示例#12
0
 /// <summary>Sets the connection's status.</summary>
 /// <exception cref="InvalidOperationException">Thrown when the status is not one of ContactStatus.Online, ContactStatus.Offline, or ContactStatus.Unavailable.</exception>
 /// <param name="status">The connection's status.</param>
 abstract public void SetStatus(ContactStatus status);
示例#13
0
    public void Read(TProtocol iprot)
    {
        iprot.IncrementRecursionDepth();
        try
        {
            TField field;
            iprot.ReadStructBegin();
            while (true)
            {
                field = iprot.ReadFieldBegin();
                if (field.Type == TType.Stop)
                {
                    break;
                }
                switch (field.ID)
                {
                case 1:
                    if (field.Type == TType.String)
                    {
                        OwnerMid = iprot.ReadString();
                    }
                    else
                    {
                        TProtocolUtil.Skip(iprot, field.Type);
                    }
                    break;

                case 2:
                    if (field.Type == TType.String)
                    {
                        TargetMid = iprot.ReadString();
                    }
                    else
                    {
                        TProtocolUtil.Skip(iprot, field.Type);
                    }
                    break;

                case 3:
                    if (field.Type == TType.I32)
                    {
                        PreviousStatus = (ContactStatus)iprot.ReadI32();
                    }
                    else
                    {
                        TProtocolUtil.Skip(iprot, field.Type);
                    }
                    break;

                case 4:
                    if (field.Type == TType.I32)
                    {
                        ResultStatus = (ContactStatus)iprot.ReadI32();
                    }
                    else
                    {
                        TProtocolUtil.Skip(iprot, field.Type);
                    }
                    break;

                default:
                    TProtocolUtil.Skip(iprot, field.Type);
                    break;
                }
                iprot.ReadFieldEnd();
            }
            iprot.ReadStructEnd();
        }
        finally
        {
            iprot.DecrementRecursionDepth();
        }
    }
        public int UpdateContactStatus(ContactStatus contactstatus)
        {
            string updateContactStatusInfo = $"UPDATE Mobifix_DB.CONTACT_STATUS SET CONTACT_STATUS_DESC = '{contactstatus.ContactStatusDescription}' WHERE LOWER(CONTACT_STATUS_CD) = '{contactstatus.Contactstatus.ToString()}' ";

            return(MySqlContactStatusHelper.ExecuteNonQuery(updateContactStatusInfo));
        }
示例#15
0
 /// <summary>Sets the connection's status.</summary>
 /// <exception cref="InvalidOperationException">Thrown when the status is not one of ContactStatus.Online, ContactStatus.Offline, or ContactStatus.Unavailable.</exception>
 /// <param name="status">The connection's status.</param>
 public override void SetStatus(ContactStatus status)
 {
     switch (status) {
         case ContactStatus.Online: yahooClient.Status = YahooStatus.YAHOO_STATUS_AVAILABLE;
             break;
         case ContactStatus.Offline: yahooClient.Status = YahooStatus.YAHOO_STATUS_OFFLINE;
             break;
         case ContactStatus.Unavailable: yahooClient.Status = YahooStatus.YAHOO_STATUS_BUSY;
             break;
         default: throw new InvalidOperationException();
     }
 }
示例#16
0
        /// <summary>
        /// Get an array of contacts.
        /// </summary>
        /// <param name="accessToken">Constant Contact OAuth2 access token.</param>
        /// <param name="apiKey">The API key for the application</param>
        /// <param name="email">Match the exact email address.</param>
        /// <param name="limit">Limit the number of returned values.</param>
        /// <param name="modifiedSince">limit contacts retrieved to contacts modified since the supplied date</param>
		/// <param name="status">Filter results by contact status</param>
        /// <returns>Returns a list of contacts.</returns>
        public ResultSet<Contact> GetContacts(string accessToken, string apiKey, string email, int? limit, DateTime? modifiedSince, ContactStatus? status)
        {
            return GetContacts(accessToken, apiKey, email, limit, modifiedSince, status, null);
        }
示例#17
0
 /// <summary>Sets the connection's status.</summary>
 /// <exception cref="InvalidOperationException">Thrown when the status is not one of ContactStatus.Online, ContactStatus.Offline, or ContactStatus.Unavailable.</exception>
 /// <param name="status">The connection's status.</param>
 public override void SetStatus(ContactStatus status)
 {
     switch (status) {
         case ContactStatus.Online: msnClient.Status = MSNStatus.msnOnline;
             break;
         case ContactStatus.Offline: msnClient.Status = MSNStatus.msnAppearOffline;
             break;
         case ContactStatus.Unavailable: msnClient.Status = MSNStatus.msnBusy;
             break;
         default: throw new InvalidOperationException();
     }
 }
示例#18
0
        private void CreateTestContactObjects(NationBuilderSession session, out Person testPerson, out ContactType testContactType, out ContactMethod testContactMethod,
                                              out ContactStatus testContactStatus)
        {
            // Create a temporary test person object:
            var aTestPerson = new Person()
            {
                first_name = "Tes",
                last_name  = "Per",
                email      = "*****@*****.**",
            };
            var newPersonResponse = session.PushPerson(aTestPerson);

            Assert.IsTrue(newPersonResponse.person.id.HasValue);
            Assert.AreEqual(newPersonResponse.person.first_name, aTestPerson.first_name);
            Assert.AreEqual(newPersonResponse.person.last_name, aTestPerson.last_name);
            Assert.AreEqual(newPersonResponse.person.email, aTestPerson.email);

            testPerson = newPersonResponse.person;

            // Create a temporary test contact type:
            var aTestContactType = new ContactType()
            {
                name = "Test Contact Type Drive 2015",
            };

            try
            {
                var newContactTypeResponse = session.CreateContactType(aTestContactType);

                Assert.IsTrue(newContactTypeResponse.contact_type.id.HasValue);
                Assert.AreEqual(newContactTypeResponse.contact_type.name, aTestContactType.name);

                testContactType = newContactTypeResponse.contact_type;
            }
            catch (NationBuilderRemoteException exc)
            {
                if (HttpStatusCode.BadRequest == exc.HttpStatusCode && "Validation Failed." == exc.Message)
                {
                    // A contact type with that name probably already exists, attempt to find it:
                    testContactType = null;

                    foreach (var contactType in session.GetContactTypeResults())
                    {
                        if (contactType.name == aTestContactType.name)
                        {
                            testContactType = contactType;
                            break;
                        }
                    }

                    Assert.IsNotNull(testContactType);
                }
                else
                {
                    throw exc;
                }
            }

            // Find a test contact method:
            ContactMethod aTestContactMethod = null;

            foreach (var contactMethod in session.GetContactMethodResults())
            {
                aTestContactMethod = contactMethod;
                break;
            }
            if (null == aTestContactMethod)
            {
                throw new InvalidOperationException("No available contact methods found for testing.");
            }

            testContactMethod = aTestContactMethod;

            // Find a test contact status:
            ContactStatus aTestContactStatus = null;

            foreach (var contactStatus in session.GetContactStatusesResults())
            {
                aTestContactStatus = contactStatus;
                break;
            }
            if (null == aTestContactStatus)
            {
                throw new InvalidOperationException("No available contact statuses found for testing.");
            }

            testContactStatus = aTestContactStatus;
        }
示例#19
0
 private async Task <bool> SetStatus(ContactStatus status)
 {
     return(await this.SendData(string.Format("user_cmd state {0}\n", NetsoulHelper.GetStatus(status))));
 }
示例#20
0
 public virtual void Activate()
 {
     this.status = ContactStatus.Active;
 }
示例#21
0
 public virtual void Deactivate()
 {
     this.status = ContactStatus.Disable;
 }
示例#22
0
        /// <summary>
        /// Get a set of contacts.
        /// </summary>
        /// <param name="email">Match the exact email address.</param>
        /// <param name="limit">Limit the number of returned values, default 500.</param>
        /// <param name="modifiedSince">limit contacts retrieved to contacts modified since the supplied date</param>
		/// <param name="status">Match the exact contact status</param>
        /// <returns>Returns a list of contacts.</returns>
        public ResultSet<Contact> GetContacts(string email, int? limit, DateTime? modifiedSince, ContactStatus? status)
        {
            return ContactService.GetContacts(AccessToken, APIKey, email, limit, modifiedSince, status);
        }
示例#23
0
        /// <summary>
        /// Sends GuildMemberState to client.
        /// </summary>
        /// <param name="client"></param>
        /// <param name="guild"></param>
        /// <param name="member"></param>
        /// <param name="user"></param>
        /// <param name="status"></param>
        public static void GuildMemberState(MsgrClient client, Guild guild, GuildMember member, User user, ContactStatus status)
        {
            var packet = new Packet(Op.Msgr.GuildMemberState, 0);

            packet.PutByte(true);
            packet.PutInt(user.Id);
            packet.PutByte((byte)(status == ContactStatus.Online ? ContactStatus.Online : ContactStatus.Offline));
            packet.PutString(user.ChannelName);
            packet.PutLong(user.LastLogin.Ticks);
            packet.PutInt((int)member.Rank);
            packet.PutString(user.FullName);

            client.Send(packet);
        }