add guides #14
|
@ -1,13 +1,11 @@
|
|||
|
||||
import { ActionRowBuilder, ButtonBuilder, ButtonStyle } from 'discord.js'
|
||||
import { v4 as uuid } from 'uuid'
|
||||
import { accountChoice, joingroup, leavegroup, loginScreen, overview, resume, serverConnection, splashScreen, startScreen } from '../assets/attachments'
|
||||
import { logger } from '../logger'
|
||||
import { Command } from '../structures/command'
|
||||
import { RunOptions } from '../types/commandTypes'
|
||||
import { APIEmbed, ActionRowBuilder, ButtonBuilder, ButtonComponent, ButtonInteraction, ButtonStyle, CollectorFilter, ComponentType, InteractionCollectorOptions } from 'discord.js'
|
||||
import { v4 as uuid } from 'uuid'
|
||||
import { logger } from '../logger'
|
||||
import { CacheType } from 'discord.js'
|
||||
import { configureServer, installation, loginInfo, useSyncgroup } from './mitgucken'
|
||||
import { attachmentImages } from '../..'
|
||||
import { accountChoice, joingroup, leavegroup, loginScreen, overview, resume, serverConnection, splashScreen, startScreen } from '../assets/attachments'
|
||||
import { configureServer, explainRoles, installation, loginInfo, useSyncgroup } from './mitgucken'
|
||||
|
||||
export default new Command({
|
||||
name: 'guides',
|
||||
|
@ -72,15 +70,13 @@ export default new Command({
|
|||
userDMChannel.send({ embeds: useSyncgroup(), files: [overview, joingroup, resume, leavegroup] })
|
||||
} else if (guideSelection.customId === 'explainRoles') {
|
||||
const userDMChannel = await guideSelection.user.createDM()
|
||||
userDMChannel.send(`Mit einer Rolle kann dafür gesorgt werden, dass du einen dauerhaften Account auf dem Mediaserver hast. Wende dich bei Bedarf an Samantha oder Markus.\n
|
||||
Für eine watchparty bekommst du allerdings automatisch einen Account. Hierfür melde einfach Interesse an dem Event an. Wenn du für das Event Interesse angemeldet hast bekommst du automatisch beim Start des Events einen Benutzernamen und das dazugehörige Passwort zugesendet.\n
|
||||
Hast du kein Interesse angemeldet bekommst du automatisch einen Nutzernamen und Passwort zugeschickt wenn du den Channel betrittst in dem das Event stattfindet.`)
|
||||
userDMChannel.send(explainRoles())
|
||||
}
|
||||
|
||||
guideSelection.update({ content: "Hab ich dir per DM geschickt :)", components: [] })
|
||||
|
||||
} catch (error) {
|
||||
kenobi marked this conversation as resolved
|
||||
await interaction.interaction.editReply({ content: 'Das dauert mir zu lange, frag mich nochmal wenn du nen guide brauchst', components: [] });
|
||||
await interaction.interaction.editReply({ content: 'Das dauert mir zu lange, frag mich nochmal wenn du nen Guide brauchst', components: [] });
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -14,10 +14,15 @@ export default new Command({
|
|||
const requestId = uuid()
|
||||
interaction.interaction.followUp('Ich schicke dir einen Guide per DM!')
|
||||
const embedList: APIEmbed[] = []
|
||||
embedList.push.apply(installation())
|
||||
embedList.push.apply(configureServer())
|
||||
embedList.push.apply(loginInfo())
|
||||
embedList.push.apply(useSyncgroup())
|
||||
embedList.push(...installation())
|
||||
embedList.push(...configureServer())
|
||||
embedList.push(...loginInfo())
|
||||
embedList.push(...useSyncgroup())
|
||||
embedList.push({
|
||||
color,
|
||||
title: "Wie du an einen Account kommst",
|
||||
description: explainRoles()
|
||||
})
|
||||
|
||||
//logger.info(`Trying to use ${splashScreen.name}`, { requestId, guildId: interaction.interaction.guild?.id })
|
||||
logger.info(`Sending guide to ${interaction.interaction.user.id}`, { requestId, guildId: interaction.interaction.guild?.id })
|
||||
|
@ -29,21 +34,15 @@ export default new Command({
|
|||
|
||||
export function installation(): APIEmbed[] {
|
||||
const embedList: APIEmbed[] = []
|
||||
// DownloadLink
|
||||
// DownloadLink and installation
|
||||
embedList.push({
|
||||
color,
|
||||
title: 'Jellyfin Media Player',
|
||||
description: 'Du kannst den Jellyfin Media Player von github herunterladen.\n Der Mediaplayer muss genutzt werden, da ein Schauen direkt über das Webinterface den Server zum Schmelzen bringt.',
|
||||
title: 'Jellyfin Media Player Installation',
|
||||
description: 'Du kannst den Jellyfin Media Player von github herunterladen.\n Der Mediaplayer muss genutzt werden, da ein Schauen direkt über das Webinterface den Server zum Schmelzen bringt.\nFühre die Datei aus und installiere den Jellyfin Media Player an den Ort deiner Wahl.',
|
||||
fields: [
|
||||
{ name: "Windows", value: "https://github.com/jellyfin/jellyfin-media-player/releases/download/v1.9.1/JellyfinMediaPlayer-1.9.1-windows-x64.exe" },
|
||||
{ name: "Mac", value: "https://github.com/jellyfin/jellyfin-media-player/releases/download/v1.9.1/JellyfinMediaPlayer-1.9.1-macos-notarized.dmg" }
|
||||
]
|
||||
})
|
||||
// Installation
|
||||
embedList.push({
|
||||
color,
|
||||
title: "Installation",
|
||||
description: "Führe die Datei aus und installiere den Jellyfin Media Player an den Ort deiner Wahl",
|
||||
],
|
||||
image: {
|
||||
url: 'attachment://set_splashscreen.png'
|
||||
}
|
||||
|
@ -138,4 +137,10 @@ export function useSyncgroup(): APIEmbed[] {
|
|||
description: "Wenn du aus der Watchparty rausgeflogen bist, oder die Wiedergabe verlassen hast, kannst du über das Menü oben rechts auch wieder zurückkehren.",
|
||||
})
|
||||
return embedList
|
||||
}
|
||||
|
||||
export function explainRoles(): string {
|
||||
return `Mit einer Rolle kann dafür gesorgt werden, dass du einen dauerhaften Account auf dem Mediaserver hast. Wende dich bei Bedarf an Samantha oder Markus.\n
|
||||
Für eine watchparty bekommst du allerdings automatisch einen Account. Hierfür melde einfach Interesse an dem Event an. Wenn du für das Event Interesse angemeldet hast bekommst du automatisch beim Start des Events einen Benutzernamen und das dazugehörige Passwort zugesendet.\n
|
||||
Hast du kein Interesse angemeldet bekommst du automatisch einen Nutzernamen und Passwort zugeschickt wenn du den Channel betrittst in dem das Event stattfindet.`
|
||||
}
|
Loading…
Reference in New Issue
It would make sense to encapsulate this in a method analogous to the other options, to ensure cohesion and readability.
done