diff --git a/DisCatSharp/Enums/Invite/TargetActivity.cs b/DisCatSharp/Enums/Invite/TargetActivity.cs
index 55f5626f2..64f134023 100644
--- a/DisCatSharp/Enums/Invite/TargetActivity.cs
+++ b/DisCatSharp/Enums/Invite/TargetActivity.cs
@@ -1,89 +1,94 @@
// This file is part of the DisCatSharp project.
//
// Copyright (c) 2021 AITSYS
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all
// copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
// SOFTWARE.
namespace DisCatSharp
{
///
/// Represents the activity this invite is for.
///
public enum TargetActivity : ulong
{
///
/// Represents no embedded application.
///
None = 0,
///
/// Represents the embedded application Poker Night.
///
PokerNight = 755827207812677713,
///
/// Represents the embedded application Betrayal.io.
///
Betrayal = 773336526917861400,
///
/// Represents the embedded application Fishington.io.
///
Fishington = 814288819477020702,
- ///
- /// Represents the embedded application YouTube Together.
- ///
- YouTubeTogether = 755600276941176913,
-
///
/// Represents the embedded application Chess in the park.
/// Dev?
///
ChessInThePark = 832012586023256104,
///
/// Represents the embedded application Chess in the park.
/// This is another version.
/// Stable?
///
ChessInThePark2 = 832012774040141894,
///
/// Represents the embedded application YouTube Together.
- /// This is the new (staff only) version.
///
- YouTubeTogetherV2 = 880218394199220334,
+ YouTubeTogether = 755600276941176913,
+
+ ///
+ /// Represents the embedded application Watch Together.
+ ///
+ WatchTogether = 880218394199220334,
+
+ ///
+ /// Represents the embedded application Watch Together.
+ /// This is the staff version.
+ ///
+ WatchTogetherDev = 880218832743055411,
///
/// Represents the embedded application Letter Tile.
///
LetterTile = 879863686565621790,
///
/// Represents the embedded application Word Snacks.
///
WordSnacks = 879863976006127627,
///
/// Represents the embedded application Doodle Crew.
///
DoodleCrew = 878067389634314250
}
}
diff --git a/DisCatSharp/Enums/Message/MessageFlags.cs b/DisCatSharp/Enums/Message/MessageFlags.cs
index 3d7c48811..8ccbc5aed 100644
--- a/DisCatSharp/Enums/Message/MessageFlags.cs
+++ b/DisCatSharp/Enums/Message/MessageFlags.cs
@@ -1,87 +1,92 @@
// This file is part of the DisCatSharp project.
//
// Copyright (c) 2021 AITSYS
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all
// copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
// SOFTWARE.
using System;
namespace DisCatSharp
{
///
/// Represents a message flag extensions.
///
public static class MessageFlagExtensions
{
///
/// Calculates whether these message flags contain a specific flag.
///
/// The existing flags.
/// The flags to search for.
///
public static bool HasMessageFlag(this MessageFlags baseFlags, MessageFlags flag) => (baseFlags & flag) == flag;
}
///
/// Represents additional features of a message.
///
[Flags]
public enum MessageFlags
{
///
/// Whether this message is the original message that was published from a news channel to subscriber channels.
///
Crossposted = 1 << 0,
///
/// Whether this message is crossposted (automatically posted in a subscriber channel).
///
IsCrosspost = 1 << 1,
///
/// Whether any embeds in the message are hidden.
///
SuppressedEmbeds = 1 << 2,
///
/// The source message for this crosspost has been deleted.
///
SourceMessageDelete = 1 << 3,
///
/// The message came from the urgent message system.
///
Urgent = 1 << 4,
///
/// The message has an associated thread, with the same id as the message.
///
HasThread = 1 << 5,
///
/// The message is only visible to the user who invoked the interaction.
///
Ephemeral = 1 << 6,
///
/// The message is an interaction response and the bot is "thinking".
///
- Loading = 1 << 7
+ Loading = 1 << 7,
+
+ ///
+ /// The message is warning that some roles failed to mention in thread.
+ ///
+ FailedToMentionSomeRolesInThread = 1 << 8
}
}
diff --git a/DisCatSharp/Enums/Message/MessageType.cs b/DisCatSharp/Enums/Message/MessageType.cs
index 998404402..757176547 100644
--- a/DisCatSharp/Enums/Message/MessageType.cs
+++ b/DisCatSharp/Enums/Message/MessageType.cs
@@ -1,145 +1,150 @@
// This file is part of the DisCatSharp project.
//
// Copyright (c) 2021 AITSYS
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all
// copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
// SOFTWARE.
namespace DisCatSharp
{
///
/// Represents the type of a message.
///
public enum MessageType : int
{
///
/// Indicates a regular message.
///
Default = 0,
///
/// Message indicating a recipient was added to a group direct message or a thread channel.
///
RecipientAdd = 1,
///
/// Message indicating a recipient was removed from a group direct message or a thread channel.
///
RecipientRemove = 2,
///
/// Message indicating a call.
///
Call = 3,
///
/// Message indicating a group direct message or thread channel rename.
///
ChannelNameChange = 4,
///
/// Message indicating a group direct message channel icon change.
///
ChannelIconChange = 5,
///
/// Message indiciating a user pinned a message to a channel.
///
ChannelPinnedMessage = 6,
///
/// Message indicating a guild member joined. Most frequently seen in newer, smaller guilds.
///
GuildMemberJoin = 7,
///
/// Message indicating a member nitro boosted a guild.
///
UserPremiumGuildSubscription = 8,
///
/// Message indicating a guild reached tier one of nitro boosts.
///
TierOneUserPremiumGuildSubscription = 9,
///
/// Message indicating a guild reached tier two of nitro boosts.
///
TierTwoUserPremiumGuildSubscription = 10,
///
/// Message indicating a guild reached tier three of nitro boosts.
///
TierThreeUserPremiumGuildSubscription = 11,
///
/// Message indicating a user followed a news channel.
///
ChannelFollowAdd = 12,
+ ///
+ /// Message indicating a user is streaming in a guild.
+ ///
+ GuildStream = 13,
+
///
/// Message indicating a guild was removed from guild discovery.
///
GuildDiscoveryDisqualified = 14,
///
/// Message indicating a guild was readded to guild discovery.
///
GuildDiscoveryRequalified = 15,
///
/// Message indicating that a guild has failed to meet guild discovery requirements for a week.
///
GuildDiscoveryGracePeriodInitialWarning = 16,
///
/// Message indicating that a guild has failed to meet guild discovery requirements for 3 weeks.
///
GuildDiscoveryGracePeriodFinalWarning = 17,
///
/// Message indicating a thread was created.
///
ThreadCreated = 18,
///
/// Message indicating a user replied to another user.
///
Reply = 19,
///
/// Message indicating an slash command was invoked.
///
ChatInputCommand = 20,
///
/// Message indicating a new was message sent as the first message in threads that are started from an existing message in the parent channel.
///
ThreadStarterMessage = 21,
///
/// Message reminding you to invite people to help you build the server.
///
GuildInviteReminder = 22,
///
/// Message indicating an context menu command was invoked.
///
ContextMenuCommand = 23
}
}