示例#1
0
        /// <inheritdoc/>
        public async Task <IPerson> ReplaceRolesAsync(List <string> roleIds)
        {
            var peopleParams = GetUserParams();

            peopleParams.Roles = roleIds;

            return(await TeamsApi.UpdateUserAsync(peopleParams));
        }
示例#2
0
        /// <inheritdoc/>
        public async Task <IPerson> UpdateAvatarAsync(string avatar)
        {
            var peopleParams = GetUserParams();

            peopleParams.Avatar = avatar;

            return(await TeamsApi.UpdateUserAsync(peopleParams));
        }
示例#3
0
        /// <inheritdoc/>
        public async Task <IPerson> UpdateLastNameAsync(string lastName)
        {
            var peopleParams = GetUserParams();

            peopleParams.LastName = lastName;

            return(await TeamsApi.UpdateUserAsync(peopleParams));
        }
示例#4
0
        /// <inheritdoc/>
        public async Task <IPerson> UpdateDisplayNameAsync(string displayName)
        {
            var peopleParams = GetUserParams();

            peopleParams.DisplayName = displayName;

            return(await TeamsApi.UpdateUserAsync(peopleParams));
        }
示例#5
0
        /// <inheritdoc/>
        public async Task <IPerson> UpdateOrganizationAsync(string orgId)
        {
            var peopleParams = GetUserParams();

            peopleParams.OrganizationId = orgId;

            return(await TeamsApi.UpdateUserAsync(peopleParams));
        }
示例#6
0
        /// <inheritdoc/>
        public async Task <IPerson> UpdateEmailAsync(string email)
        {
            var peopleParams = GetUserParams();

            peopleParams.Emails = new List <string> {
                email
            };

            return(await TeamsApi.UpdateUserAsync(peopleParams));
        }
示例#7
0
        /// <inheritdoc/>
        public async Task <IPerson> AddRoleAsync(string roleId)
        {
            var peopleParams = GetUserParams();

            if (peopleParams.Roles == null)
            {
                peopleParams.Roles = new List <string>();
            }

            peopleParams.Roles.Add(roleId);

            return(await TeamsApi.UpdateUserAsync(peopleParams));
        }
示例#8
0
        private async Task <RoomMembership> FindMembershipByIdOrEmailAsync(string userIdOrEmail)
        {
            var memberships = await TeamsApi.GetRoomMembershipsAsync(Id);

            var membership = memberships.Items.FirstOrDefault(x => x.PersonEmail == userIdOrEmail || x.PersonId == userIdOrEmail);

            if (membership == null)
            {
                throw new KeyNotFoundException("User not found by ID or Email.");
            }

            return(membership);
        }
示例#9
0
        /// <inheritdoc/>
        public async Task <IWebhook> UpdateAsync(string name = "", string targetUrl = "", string secret = "", WebhookStatus?status = null)
        {
            if (string.IsNullOrEmpty(name))
            {
                name = Name;
            }

            if (string.IsNullOrEmpty(targetUrl))
            {
                targetUrl = TargetUrl;
            }

            if (string.IsNullOrEmpty(secret))
            {
                secret = Secret;
            }

            if (status == null)
            {
                status = Status;
            }

            return(await TeamsApi.UpdateWebhookAsync(Id, name, targetUrl, secret, status));
        }
示例#10
0
 /// <inheritdoc/>
 public async Task <IMessage> SendPlainMessageAsync(string text)
 => await TeamsApi.SendMessageAsync(
     new MessageBuilder()
     .SendToUserId(Id)
     .WithText(text)
     .Build());
示例#11
0
 /// <inheritdoc/>
 public async Task <IMessage> SendMessageAsync(string markdown)
 => await TeamsApi.SendMessageAsync(
     new MessageBuilder()
     .SendToUserId(Id)
     .WithMarkdown(markdown)
     .Build());
示例#12
0
 /// <inheritdoc/>
 public async Task <IListResult <Message> > GetMessagesAsync(int max = 50, bool userMentioned = false,
                                                             ICollection <string> mentionedPeople = default, DateTimeOffset before = default, string beforeMessage = "")
 => await TeamsApi.GetRoomMessagesAsync(Id, max, userMentioned, mentionedPeople, before, beforeMessage);
示例#13
0
 /// <inheritdoc/>
 public async Task <IResponseMessage> DeleteAsync() =>
 await TeamsApi.DeleteUserAsync(Id);
示例#14
0
 /// <inheritdoc/>
 public async Task <IListResult <Message> > GetMessagesBeforeMessageAsync(string messageId, int max = 50,
                                                                          bool userMentioned        = false, ICollection <string> mentionedPeople = null)
 => await TeamsApi.GetRoomMessagesBeforeMessageAsync(Id, messageId, max, userMentioned, mentionedPeople);
 public TeamsApiTests()
 {
     instance = new TeamsApi();
 }
示例#16
0
 /// <inheritdoc/>
 public async Task <TeamMembership> UpdateAsync(bool isModerator)
 => await TeamsApi.UpdateTeamMembership(Id, isModerator);
示例#17
0
 /// <inheritdoc/>
 public async Task <IListResult <RoomMembership> > GetMembershipsAsync(int max = 100)
 => await TeamsApi.GetRoomMembershipsAsync(Id, max);
示例#18
0
 /// <inheritdoc/>
 public Task <IResponseMessage> DeleteAsync() => TeamsApi.DeleteRoomAsync(Id);
示例#19
0
 /// <inheritdoc/>
 private async Task <Webhook> CreateWebhookAsync(string name, string targetUrl, WebhookResource resource,
                                                 EventType eventType, string filter, string secret = "")
 => await TeamsApi.CreateWebhookAsync(name, targetUrl, resource, eventType, filter, secret);
示例#20
0
 /// <inheritdoc/>
 public async Task <RoomMembership> AddUserAsync(string userIdOrEmail, bool isModerator = false)
 => await TeamsApi.AddUserToRoomAsync(Id, userIdOrEmail, isModerator);
示例#21
0
 /// <inheritdoc/>
 public async Task <IResponseMessage> DeleteAsync()
 => await TeamsApi.RemoveUserFromTeamAsync(Id);
示例#22
0
 /// <inheritdoc/>
 public Task <Room> UpdateAsync(string title) => TeamsApi.UpdateRoomAsync(Id, title);
示例#23
0
 public void Init()
 {
     instance = new TeamsApi();
 }
示例#24
0
 /// <inheritdoc/>
 public Task <MeetingDetails> GetMeetingDetailsAsync()
 => TeamsApi.GetMeetingDetailsAsync(Id);
示例#25
0
 /// <inheritdoc/>
 public async Task <IResponseMessage> DeleteAsync()
 => await TeamsApi.DeleteMembershipAsync(Id);