public bool LemurianSignal(string type) { // Master Controller if (type == "master") { SignalRClients["master"] = this.Context.ConnectionId; } // Motor else if (type == "motor") { SignalRClients["motor"] = this.Context.ConnectionId; SetConnected = true; } // Facebook messenger as controller else if (type == "messenger") { if (string.IsNullOrEmpty(SignalRClients["master"])) { SignalRClients["master"] = "messenger"; } } // NLP api else if (type == "nlp_api") { SignalRClients["nlp_api"] = this.Context.ConnectionId; } // Deal with others else { SignalRClients.Add(this.Context.ConnectionId, type); } return(true); }
public async Task <JsonResult> Insert() { try { var connID = Request.Form["connID"]; var note = Request.Form["note"]; var longitude = Request.Form["long"]; var latitude = Request.Form["lat"]; var uid = Request.Form["UID"]; //check if meetup already exist var meetup = MeetupLocationService.GetByConnectionID(connID, false).FirstOrDefault(); if (meetup == null) { //if not create one MeetupLocationService.Insert(Guid.NewGuid(), Guid.Parse(connID), true, float.Parse(latitude), float.Parse(longitude), Guid.Parse(uid), note); } else { //if already exist update data MeetupLocationService.Update(meetup.ID.ToString(), true, Guid.Parse(uid), float.Parse(latitude), float.Parse(longitude), note); } //invoke signalR to inform connection that this user setup a meetup point SignalRClients.NotifyMeetupLocationSet(note, uid, connID); return(Json(new { success = true })); } catch { return(Json(new { success = false, message = MessageUtility.ServerError() })); } }
public async Task <JsonResult> Insert() { try { var id = Guid.NewGuid(); var rfrom = Request.Form["RF"]; var rtID = Request.Form["RTID"]; var connID = Request.Form["CID"]; var connection = ConnectionServices.GetByID(connID); //first check if it is already existing var temp = RequestService.GetByConnectionIDRTID(connID, rtID); if (temp == null) { if (RequestService.Insert(id, rfrom, Guid.Parse(rtID), Guid.Parse(connID), false)) { SignalRClients.NotifyInvitationSent(connection.ConnectionName, connection.ID.ToString(), rtID); return(Json(new { success = true })); } } else if (temp.isArchived) { //if it already exist and is archived then unarchive it RequestService.UpdateStatus(false, temp.ID.ToString()); SignalRClients.NotifyInvitationSent(connection.ConnectionName, connection.ID.ToString(), rtID); return(Json(new { success = true })); } return(Json(new { success = false, message = MessageUtility.ServerError() })); } catch { return(Json(new { success = false, message = MessageUtility.ServerError() })); } }
public async Task <JsonResult> NotifyInvitationAccepted() { try { var cid = Request.Form["cid"]; var username = Request.Form["uname"]; SignalRClients.NotifyInvitationAccepted(cid, username); return(Json(new { success = true })); } catch { return(Json(new { success = false, message = MessageUtility.ServerError() })); } }
public async Task <JsonResult> NotifyNearLocation() { try { var connID = Request.Form["connID"]; var uid = Request.Form["UID"]; var userName = Request.Form["uname"]; SignalRClients.NotifyAlreadyInMeetupLocation(uid, userName, connID); return(Json(new { success = true })); } catch { return(Json(new { success = false, message = MessageUtility.ServerError() })); } }
public async Task <JsonResult> Cancel() { try { var id = Request.Form["ID"]; var connID = Request.Form["connID"]; var note = Request.Form["note"]; var longitude = float.Parse(Request.Form["long"]); var latitude = float.Parse(Request.Form["lat"]); var uid = Guid.Parse(Request.Form["UID"]); MeetupLocationService.Update(id, false, uid, latitude, longitude, note); SignalRClients.NotifyMeetupLocationCancel(note, uid.ToString(), connID); return(Json(new { success = true })); } catch { return(Json(new { success = false, message = MessageUtility.ServerError() })); } }