Exemple #1
0
        /// <summary>
        /// Checks the database for phone enrollment with SMS Bot
        /// </summary>
        /// <param name="phoneNumber"></param>
        /// <returns></returns>
        public static WebAPIDemoSMS GetPhoneEnrollment(string phoneNumber)
        {
            if (PhoneInDb != null)
            {
                return(PhoneInDb);
            }

            var phoneInDb = SMSDataHelper.GetPhoneEnrollment(phoneNumber);

            PhoneInDb = phoneInDb;
            return(phoneInDb);
        }
Exemple #2
0
        public static WebAPIDemoSMS RegisterPhone(string phoneNumber, string name, string email = "")
        {
            using (var db = new WebAPIDemoSMSContestContext())
            {
                var enrollment = new WebAPIDemoSMS {
                    Name = name, Phone = phoneNumber, CreationDate = DateTime.Now, UpdatedDate = DateTime.Now, Email = (email == "" ? null : email)
                };

                try
                {
                    db.Enrollments.Add(enrollment);
                    db.SaveChanges();

                    return(enrollment);
                }
                catch
                {
                    return(null);
                }
            }
        }
Exemple #3
0
        public static string ParseSmsMessage(SmsRequest request)
        {
            var actionString = request.Body.Split(' ').FirstOrDefault().Replace("\"", "");
            var values       = String.Join(" ", (request.Body.Split(' ')).Skip(1));

            if (!IsPhoneRegistered(request.From) && actionString.ToLower() != "join" && actionString.ToLower() != "game" && actionString.ToLower() != "win")
            {
                PhoneInDb = null;
                return(SMSResponseMessages.UnknownPhoneMessage(request.From));
            }

            if (IsPhoneRegistered(request.From) && actionString.ToLower() == "join")
            {
                PhoneInDb = null;
                return(SMSResponseMessages.AlreadyRegisteredMessage(request.From));
            }

            ParseSMSRequestAction(request, actionString.ToLower(), values);

            PhoneInDb = null;

            return(ResponseString);
        }