public Q Get(string id) { var qbase = new QBase("https://qcue-live.firebaseio.com"); var queue = qbase.GetQueueByShortCode(id); return(queue); }
// GET: http://www.qcue.me/api/incoming_sms?to=447860033153&from=441234567890&content=Hello+World&msg_id=AB_12345 public HttpResponseMessage Get([FromUri] IncomingSmsMessage message) { Trace.TraceInformation("Message: {0}", message); /* * if (this.ModelState.IsValid) * { * Trace.TraceInformation("Message: {0}", message); * return Request.CreateResponse(HttpStatusCode.BadRequest, this.ModelState); * } */ var qbase = new QBase("https://qcue-live.firebaseio.com"); var user = qbase.GetUserByMobile(message.From); // this.EnsureUserIsKnown(message, user); if (this.IsUpdateUserMessage(message)) { this.UpdateUser(message, qbase, user); } else { this.QueueUser(message, qbase, user); } var response = this.Request.CreateResponse(HttpStatusCode.OK); return(response); }
public User Get(string id) { var qbase = new QBase("https://qcue-live.firebaseio.com"); var user = qbase.GetUserByMobile(id); return(user); }
public void Return_All_Users() { var qbase = new QBase("https://qcue-live.firebaseio.com"); Dictionary<string, User> users = qbase.GetAllUsers(); Assert.IsNotNull(users); Assert.IsTrue(users.Count > 0); }
public void Return_All_Users() { var qbase = new QBase("https://qcue-live.firebaseio.com"); Dictionary <string, User> users = qbase.GetAllUsers(); Assert.IsNotNull(users); Assert.IsTrue(users.Count > 0); }
public void Returns_All_Queues() { var qbase = new QBase("https://qcue-live.firebaseio.com"); Dictionary <string, Q> queues = qbase.GetAllQueues(); Assert.IsNotNull(queues); Assert.IsTrue(queues.Count > 0); }
public void Returns_Users_In_Queue() { var qbase = new QBase("https://qcue-test.firebaseio.com"); var users = qbase.GetUsersInQueue("b555e232-6756-4816-89fe-f6f690e8ab5b"); Assert.IsNotNull(users); Assert.IsTrue(users.Count > 0); }
public void Returns_All_Queues() { var qbase = new QBase("https://qcue-live.firebaseio.com"); Dictionary<string, Q> queues = qbase.GetAllQueues(); Assert.IsNotNull(queues); Assert.IsTrue(queues.Count > 0); }
public void Returns_User_For_MobileNumber() { string mobile = "4455523456789"; var qbase = new QBase("https://qcue-live.firebaseio.com"); User user = qbase.GetUserByMobile(mobile); Assert.IsNotNull(user); Assert.AreEqual(mobile, user.mobile); }
public void Anonymous_User_Is_Added() { var qbase = new QBase("https://qcue-live.firebaseio.com"); var user = qbase.AddAnonymousUser("449999999999"); Assert.IsNotNull(user); Assert.IsNotNull(user.userId); Assert.IsNotNull(user.fullName); Assert.IsNotNull(user.mobile); }
private void UpdateUser(IncomingSmsMessage message, QBase qbase, User user) { string fullName = message.Content.Substring(NameTag.Length).Trim(); user.fullName = fullName; user.status = "registered"; qbase.UpdateUser(user); Trace.TraceInformation( "Updated user.fulName for \"{0}\" to \"{1}\"", user.userId, user.fullName); }
public void Returns_Q_For_ShortCode() { string shortCode = "HELI"; var qbase = new QBase("https://qcue-live.firebaseio.com"); Q q = qbase.GetQueueByShortCode(shortCode); Assert.IsNotNull(q); Assert.IsTrue(!String.IsNullOrWhiteSpace(q.name)); Assert.AreEqual(shortCode, q.shortCode); }
public void Adds_User_To_Queue() { var qbase = new QBase("https://qcue-live.firebaseio.com"); Q q = qbase.GetQueueByShortCode("HELI"); User user = qbase.GetUserByMobile("4455523456789"); qbase.AddUserToQueue(q.queueId, new QUser { userId = user.userId, status = "waiting" }); }
public void User_Is_Updated() { var qbase = new QBase("https://qcue-live.firebaseio.com"); var user = new User { userId = "0e5d2d51-2bf7-4c1e-9d1a-952710f70725", fullName = "Alice Whyte", mobile = "4455523456789" }; qbase.UpdateUser(user); }
public void Adds_Sms_Task() { var smsTask = new SmsTask { smsTaskId = Convert.ToString(Guid.NewGuid()), task = "sms", payload = new SmsTaskPayload { mobile = "4455523456789", message = "Hello+World." } }; var qbase = new QBase("https://qcue-live.firebaseio.com"); qbase.AddTask(smsTask); }
private void QueueUser(IncomingSmsMessage message, QBase qbase, User user) { var q = qbase.GetQueueByShortCode(message.Content); this.EnsureQueueIsKnown(message, q); string status = null; if (user == null) { user = qbase.AddAnonymousUser(message.From); // TODO: status = "registering"; status = "joined"; } else { /* * var usersInQueue = qbase.GetUsersInQueue(q.queueId); * * if (usersInQueue.Count(each => each.userId == user.userId) != 0) * { * string warningMessage = String.Format( * "User \"{0}\" is already in queue \"{1}\". User will not be added again.", * user.userId, * q.queueId); * * Trace.TraceWarning(warningMessage); * return; * } */ status = "joined"; } qbase.AddUserToQueue(q.queueId, new QUser { userId = user.userId, status = status }); }
public AMultipleChoice( QBase question ) : base(question) { _choices = new List<Choice>(); }
public ABinary( QBase question ) : base(question) { }
public AMultipleChoice(QBase question) : base(question) { _choices = new List <Choice>(); }
public QMultipleChoice(Form form, string title, bool isRequired, QBase parent) : base(form, title, parent) { _choices = new List <Choice>(); }
public AFreeText( QBase question ) : base(question) { }
public ABinary(QBase question) : base(question) { }
public AFreeText(QBase question) : base(question) { }
public QMultipleChoice( Form form, string title, bool isRequired, QBase parent ) : base(form, title, parent) { _choices = new List<Choice>(); }
public QComposite(Form form, string title, bool isRequired, QBase parent) : base(form, title, parent) { }
public QFreeText(Form form, string title, bool isRequired, QBase parent) : base(form, title, parent) { }
public QComposite( Form form, string title, bool isRequired, QBase parent ) : base(form, title, parent) { }
public QRoot(Form form, string title, bool isRequired, QBase parent) : base(form, title, parent) { }
public QBinary(Form form, string title, bool isRequired, QBase parent) : base(form, title, parent) { }
public ABase CreateAnswerFor( QBase question ) { ABase a = question.CreateAnswer( _form ); Answers[question] = a; return a; }
public ABase( QBase question ) { _question = question; _creationTime = DateTime.UtcNow; }
public ABase FindAnswerFor( QBase question ) { return _answers[question]; }