public async Task <IActionResult> CreateGuildAsync([FromBody] CreateGuildParams args) { args.Validate(); var guild = new Guild { DefaultMessageNotifications = args.DefaultMessageNotifications.GetValueOrDefault(DefaultMessageNotifications.AllMessages), ExplicitContentFilter = args.ExplicitContentFilter.GetValueOrDefault(ExplicitContentFilter.Disabled), Name = args.Name, Region = args.Region, VerificationLevel = args.VerificationLevel.GetValueOrDefault() }; if (args.Icon.IsSpecified) { guild.Icon = args.Icon.Value; } if (args.Roles.IsSpecified) { guild.Roles = args.Roles.Value.Select(x => new Role { Color = x.Color.GetValueOrDefault(Color.Default), IsHoisted = x.IsHoisted.GetValueOrDefault(false), IsMentionable = x.IsMentionable.GetValueOrDefault(false), Name = x.Name.GetValueOrDefault((Utf8String)"new role"), Permissions = x.Permissions.GetValueOrDefault(GuildPermissions.None) } ).ToArray(); } return(Ok(guild)); }
/// <inheritdoc /> public virtual async Task <IGuild> CreateGuildAsync(string name, IVoiceRegion region, Stream jpegIcon = null) { var args = new CreateGuildParams(); var model = await ApiClient.CreateGuildAsync(args).ConfigureAwait(false); return(new Guild(this, model)); }
public static async Task <RestGuild> CreateGuildAsync(BaseDiscordClient client, string name, IVoiceRegion region, Stream jpegIcon, RequestOptions options) { var args = new CreateGuildParams(name, region.Id); var model = await client.ApiClient.CreateGuildAsync(args, options).ConfigureAwait(false); return(RestGuild.Create(client, model)); }
public static async Task <RestGuild> CreateGuildAsync(BaseDiscordClient client, string name, IVoiceRegion region, Stream jpegIcon, RequestOptions options) { CreateGuildParams args = new CreateGuildParams(name, region.Id); if (jpegIcon != null) { args.Icon = new API.Image(jpegIcon); } API.GuildJson model = await client.ApiClient.CreateGuildAsync(args, options).ConfigureAwait(false); return(RestGuild.Create(client, model)); }