Merge pull request #169 from RogueException/issues/168
Support GET /channels/{id}/pins
This commit is contained in:
@@ -357,6 +357,12 @@ namespace Discord.API
|
|||||||
|
|
||||||
await SendAsync("DELETE", $"channels/{channelId}/pins/{messageId}", options: options).ConfigureAwait(false);
|
await SendAsync("DELETE", $"channels/{channelId}/pins/{messageId}", options: options).ConfigureAwait(false);
|
||||||
}
|
}
|
||||||
|
public async Task<IReadOnlyCollection<Message>> GetPinsAsync(ulong channelId, RequestOptions options = null)
|
||||||
|
{
|
||||||
|
Preconditions.NotEqual(channelId, 0, nameof(channelId));
|
||||||
|
|
||||||
|
return await SendAsync<IReadOnlyCollection<Message>>("GET", $"channels/{channelId}/pins", options: options).ConfigureAwait(false);
|
||||||
|
}
|
||||||
|
|
||||||
//Channel Recipients
|
//Channel Recipients
|
||||||
public async Task AddGroupRecipientAsync(ulong channelId, ulong userId, RequestOptions options = null)
|
public async Task AddGroupRecipientAsync(ulong channelId, ulong userId, RequestOptions options = null)
|
||||||
|
|||||||
@@ -23,6 +23,8 @@ namespace Discord
|
|||||||
Task<IReadOnlyCollection<IMessage>> GetMessagesAsync(int limit = DiscordConfig.MaxMessagesPerBatch);
|
Task<IReadOnlyCollection<IMessage>> GetMessagesAsync(int limit = DiscordConfig.MaxMessagesPerBatch);
|
||||||
/// <summary> Gets a collection of messages in this channel. </summary>
|
/// <summary> Gets a collection of messages in this channel. </summary>
|
||||||
Task<IReadOnlyCollection<IMessage>> GetMessagesAsync(ulong fromMessageId, Direction dir, int limit = DiscordConfig.MaxMessagesPerBatch);
|
Task<IReadOnlyCollection<IMessage>> GetMessagesAsync(ulong fromMessageId, Direction dir, int limit = DiscordConfig.MaxMessagesPerBatch);
|
||||||
|
/// <summary> Gets a collection of pinned messages in this channel. </summary>
|
||||||
|
Task<IReadOnlyCollection<IMessage>> GetPinnedMessagesAsync();
|
||||||
/// <summary> Bulk deletes multiple messages. </summary>
|
/// <summary> Bulk deletes multiple messages. </summary>
|
||||||
Task DeleteMessagesAsync(IEnumerable<IMessage> messages);
|
Task DeleteMessagesAsync(IEnumerable<IMessage> messages);
|
||||||
|
|
||||||
|
|||||||
@@ -108,6 +108,11 @@ namespace Discord
|
|||||||
{
|
{
|
||||||
await Discord.ApiClient.DeleteDMMessagesAsync(Id, new DeleteMessagesParams { MessageIds = messages.Select(x => x.Id) }).ConfigureAwait(false);
|
await Discord.ApiClient.DeleteDMMessagesAsync(Id, new DeleteMessagesParams { MessageIds = messages.Select(x => x.Id) }).ConfigureAwait(false);
|
||||||
}
|
}
|
||||||
|
public async Task<IReadOnlyCollection<IMessage>> GetPinnedMessagesAsync()
|
||||||
|
{
|
||||||
|
var models = await Discord.ApiClient.GetPinsAsync(Id);
|
||||||
|
return models.Select(x => new Message(this, new User(x.Author.Value), x)).ToImmutableArray();
|
||||||
|
}
|
||||||
|
|
||||||
public async Task TriggerTypingAsync()
|
public async Task TriggerTypingAsync()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -133,6 +133,11 @@ namespace Discord
|
|||||||
{
|
{
|
||||||
await Discord.ApiClient.DeleteDMMessagesAsync(Id, new DeleteMessagesParams { MessageIds = messages.Select(x => x.Id) }).ConfigureAwait(false);
|
await Discord.ApiClient.DeleteDMMessagesAsync(Id, new DeleteMessagesParams { MessageIds = messages.Select(x => x.Id) }).ConfigureAwait(false);
|
||||||
}
|
}
|
||||||
|
public async Task<IReadOnlyCollection<IMessage>> GetPinnedMessagesAsync()
|
||||||
|
{
|
||||||
|
var models = await Discord.ApiClient.GetPinsAsync(Id);
|
||||||
|
return models.Select(x => new Message(this, new User(x.Author.Value), x)).ToImmutableArray();
|
||||||
|
}
|
||||||
|
|
||||||
public async Task TriggerTypingAsync()
|
public async Task TriggerTypingAsync()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -102,6 +102,11 @@ namespace Discord
|
|||||||
{
|
{
|
||||||
await Discord.ApiClient.DeleteMessagesAsync(Guild.Id, Id, new DeleteMessagesParams { MessageIds = messages.Select(x => x.Id) }).ConfigureAwait(false);
|
await Discord.ApiClient.DeleteMessagesAsync(Guild.Id, Id, new DeleteMessagesParams { MessageIds = messages.Select(x => x.Id) }).ConfigureAwait(false);
|
||||||
}
|
}
|
||||||
|
public async Task<IReadOnlyCollection<IMessage>> GetPinnedMessagesAsync()
|
||||||
|
{
|
||||||
|
var models = await Discord.ApiClient.GetPinsAsync(Id);
|
||||||
|
return models.Select(x => new Message(this, new User(x.Author.Value), x)).ToImmutableArray();
|
||||||
|
}
|
||||||
|
|
||||||
public async Task TriggerTypingAsync()
|
public async Task TriggerTypingAsync()
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user