diff --git a/src/client/actions/Action.js b/src/client/actions/Action.js index 40b33b98c..b312d2f5d 100644 --- a/src/client/actions/Action.js +++ b/src/client/actions/Action.js @@ -32,8 +32,17 @@ class GenericAction { } getChannel(data) { - const payloadData = { recipients: data.recipients ?? [data.author ?? data.user ?? { id: data.user_id }] }; + const payloadData = {}; const id = data.channel_id ?? data.id; + + if ('recipients' in data) { + payloadData.recipients = data.recipients; + } else { + // Try to resolve the recipient, but do not add the client user. + const recipient = data.author ?? data.user ?? { id: data.user_id }; + if (recipient.id !== this.client.user.id) payloadData.recipients = [recipient]; + } + if (id !== undefined) payloadData.id = id; if ('guild_id' in data) payloadData.guild_id = data.guild_id; if ('last_message_id' in data) payloadData.last_message_id = data.last_message_id;