public IHttpActionResult PostChatRequest(PreChatRequest preChatRequest)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.ChatRequests.Add(preChatRequest);

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateException)
            {
                if (ChatRequestExists(preChatRequest.ChatRequestId))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtRoute("DefaultApi", new { id = preChatRequest.ChatRequestId }, preChatRequest));
        }
        public IHttpActionResult PutChatRequest(Guid id, PreChatRequest preChatRequest)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != preChatRequest.ChatRequestId)
            {
                return(BadRequest());
            }

            db.Entry(preChatRequest).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ChatRequestExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
        public IHttpActionResult GetChatRequest(Guid id)
        {
            PreChatRequest preChatRequest = db.ChatRequests.Find(id);

            if (preChatRequest == null)
            {
                return(NotFound());
            }

            return(Ok(preChatRequest));
        }
        public IHttpActionResult DeleteChatRequest(Guid id)
        {
            PreChatRequest preChatRequest = db.ChatRequests.Find(id);

            if (preChatRequest == null)
            {
                return(NotFound());
            }

            db.ChatRequests.Remove(preChatRequest);
            db.SaveChanges();

            return(Ok(preChatRequest));
        }
Esempio n. 5
0
        public void PreChat(PreChatRequest preChatRequest)
        {
            var currentClientId = Context.ConnectionId;

            preChatRequest = new PreChatRequest {
                ChatRequestId = Guid.Parse(currentClientId), EmailAddress = preChatRequest.EmailAddress, Name = preChatRequest.Name, Reason = preChatRequest.Reason
            };

            if (db.ChatRequests.Find(preChatRequest.ChatRequestId) == null)
            {
                db.ChatRequests.Add(preChatRequest);
                db.SaveChanges();
            }
        }
Esempio n. 6
0
        public void Send(string name, string message)
        {
            var            currentClientId = Context.ConnectionId;
            PreChatRequest preChatRequest  = new PreChatRequest {
                ChatRequestId = Guid.Parse(currentClientId), EmailAddress = string.Empty, Name = name
            };

            if (db.ChatRequests.Find(preChatRequest.ChatRequestId) != null)
            {
                db.ChatRequests.Add(preChatRequest);
                db.SaveChanges();
            }

            Clients.AllExcept(currentClientId).ReceiveMessage(name, message);
        }