public async Task CreateChatRoom(CreateChatRoomRequest roomRequest) { try { var room = _chatRoomService.CreateChatRoom(roomRequest.UserCreatorId, roomRequest.UserInvitedId, roomRequest.Name); var result = _mapper.Map <ChatRoomModel>(room); // create group await this.Groups.AddToGroupAsync(this.Context.ConnectionId, room.Id.ToString()); //3. return room id to those tow users await this.Clients.Caller.ChatRoomCreated(result); var invitedUserConnected = _userConnectionService.GetConnectionForUser(roomRequest.UserInvitedId); if (invitedUserConnected != null) { await this.Groups.AddToGroupAsync(invitedUserConnected.ConnectionId, room.Id.ToString()); await this.Clients.Client(invitedUserConnected.ConnectionId).ChatRoomCreated(result); } } catch (Exception ex) { throw; } }
public CreateChatRoomRespond CreateChatRoom(CreateChatRoomRequest r) { _chatRoomRepository.Insert(new ChatRoom { NumOfMember = 2, ChatRoomName = r.User1Id + "and" + r.User2Id, CreatedAt = DateTime.Now }); ChatRoom i = _chatRoomRepository.GetChatRoomByName(r.User1Id + "and" + r.User2Id); _userChatRoomRepository.Insert(new UserChatRoom { ChatRoomId = i.Id, NickName = r.User1NickName, User = r.User1Id }); _userChatRoomRepository.Insert(new UserChatRoom { ChatRoomId = i.Id, NickName = r.User2NickName, User = r.User2Id }); i.ChatRoomName = r.User1NickName + " and " + r.User2NickName; _chatRoomRepository.Update(i); return(new CreateChatRoomRespond { RoomId = i.Id, RoomName = i.ChatRoomName, }); }
public async Task <CreateChatRoomResponse> CreateChatRoomAsync(CreateChatRoomRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); CreateChatRoomHeaders headers = new CreateChatRoomHeaders(); return(await CreateChatRoomWithOptionsAsync(request, headers, runtime)); }
public CreateChatRoomResponse CreateChatRoom(CreateChatRoomRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); CreateChatRoomHeaders headers = new CreateChatRoomHeaders(); return(CreateChatRoomWithOptions(request, headers, runtime)); }
public override async Task <JoinChatResponse> CreateRoom(CreateChatRoomRequest request, ServerCallContext context) { JoinChatResponse resp = new JoinChatResponse(); var keys = _chatRooms.Keys; if (keys.Any(i => i.Name == request.RoomName)) { resp.RoomId = -1; } else { var mId = keys.Any() ? keys.Max(i => i.Id) : 0; var room = new ChatRoom(mId + 1, request.RoomName); if (!_chatRooms.TryAdd(room, new List <ChatUser>())) { resp.RoomId = -1; } else { resp.RoomId = room.Id; } } return(resp); }
/// <summary> /// 创建群,调用完成,可以用返回的信息,通过GetBatchGetContact去获取群信息 /// </summary> /// <param name="memberList">UserName的list</param> /// <returns></returns> public CreateChatRoomResponse CreateChatRoom(List<MemberItem> memberList) { string url = host + "/cgi-bin/mmwebwx-bin/webwxupdatechatroom?fun=addmember&lang=zh_CN"; CreateChatRoomRequest request = new CreateChatRoomRequest() { BaseRequest = baseRequest, MemberList = memberList, }; return httpClient.PostJson<CreateChatRoomResponse>(url, request); }
public ActionResult Create(CreateChatRoomRequest createChatRoom) { try{ CheckId(createChatRoom.User1Id); CreateChatRoomRespond respond = _service.CreateChatRoom(createChatRoom); return(Ok(respond)); }catch (Exception e) { Console.WriteLine(e.ToString() + "createchatroom err"); return(BadRequest(e.Message)); } }
public async Task <HttpResponseMessage> CreateChatRoom(int this_UserID, int that_UserID, string this_UserIDNickName, string that_UserIDNickName, string token) { using (var client = new HttpClient()) { CreateChatRoomRequest chatroom = new CreateChatRoomRequest() { User1Id = this_UserID, User2Id = that_UserID, User1NickName = this_UserIDNickName, User2NickName = that_UserIDNickName }; client.BaseAddress = new Uri(UriString); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); return(await client.PostAsJsonAsync("CreateChatRoom", chatroom)); } }
public async Task <CreateChatRoomResponse> CreateChatRoomWithOptionsAsync(CreateChatRoomRequest request, CreateChatRoomHeaders headers, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary <string, object> body = new Dictionary <string, object>() { }; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ChatGroupName)) { body["chatGroupName"] = request.ChatGroupName; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DeviceCodes)) { body["deviceCodes"] = request.DeviceCodes; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DeviceTypeId)) { body["deviceTypeId"] = request.DeviceTypeId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.OwnerUserId)) { body["ownerUserId"] = request.OwnerUserId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RoleList)) { body["roleList"] = request.RoleList; } Dictionary <string, string> realHeaders = new Dictionary <string, string>() { }; if (!AlibabaCloud.TeaUtil.Common.IsUnset(headers.CommonHeaders)) { realHeaders = headers.CommonHeaders; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(headers.XAcsDingtalkAccessToken)) { realHeaders["x-acs-dingtalk-access-token"] = AlibabaCloud.TeaUtil.Common.ToJSONString(headers.XAcsDingtalkAccessToken); } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Headers = realHeaders, Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; return(TeaModel.ToObject <CreateChatRoomResponse>(await DoROARequestAsync("CreateChatRoom", "devicemng_1.0", "HTTP", "POST", "AK", "/v1.0/devicemng/customers/chatRoom", "json", req, runtime))); }