A-0.3 - Basismodul #9
Labels
No Label
command
core
game
module
MVP
new-data
next-version
bug
bugfix
cli
discussion
documentation
duplicate
expense
high
expense
low
expense
medium
expense
very-high
help wanted
improvement
invalid
priority
blocker
priority
high
priority
low
priority
medium
question
refactoring
release
story
wontfix
No Milestone
No project
No Assignees
1 Participants
Due Date
No due date set.
Blocks
Depends on
#5 A-0.5 - Verwarnungssystem
sh-edraft.de/sh_gismo
#15 A-0.4.2 - Befehl: user-info
sh-edraft.de/sh_gismo
#8 A-0.2 - Datenbank
sh-edraft.de/sh_gismo
Reference: sh-edraft.de/sh_gismo#9
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Beschreibung:
Bei Beitritt eines neuen Mitgliedes auf dem Discord Server wird dem Mitglied eine Willkommensnachricht gesendet und jedem Admin wird eine Nachricht, in der erklärt wird, wer beigetreten ist gesendet.
Des Weiteren, wird der neue Benutzer in der Datenbank angelegt, bzw. für einen bestehenden Benutzer ein Beitritt Registriert.
Des weiteren muss jede nachricht sowie jede Stunde in einem Sprachkanal durch einen festgelegten Wert von XP belohnt werden.
Zur Auswertung des Bot sollen eben ein Paar Daten über den Bot gespeichert werden:
Befehle:
Neue Daten zum Speichern:
Aufwand:
Mittel
Willkommensnachrichtto A-0.3 - WillkommensnachrichtA-0.3 - Willkommensnachrichtto A-0.3 - BasismodulDas Model sowie die Repository für Client steht.
Ebenso habe ich auch schonmal die enstprechenden Änderungen an dem Datenbankmodul vorgenommen, also das im on_ready geguckt wird, ob für jeden Server ein client angelegt wurde.
Bisher alles soweit alles drin aber es Fehlt noch, dass die Ontime gespeichert wird.
Dazu mein Vorschlag:
Ein weiteres Datenmodell
UserJoinedVoiceChannel
welches wie beiUserJoinedServer
mitjoined_on
undleaved_on
arbeitet.Wenn der Benutzer einen Channel betritt wird
joined_on
auf das Datum mit Zeit gesetzt und wenn dieser den Verlässt, wirdleaved_on
gesetzt.Dadurch kann zum einen immer auf die Gesamte Ontime pro Nutzer zugegriffen werden und es wird RAM unabhängig gespeichert.
Des Weiteren könnte ein Webinterface über die Information, wo
leaved_on
nicht gesetzt ist darauf schließen, welcher Benutzer gerade online ist.Beim Starten sollten die Werte natürlich durch das DatabaseModule gecheckt werden.
Also gibt es laut Tabelle Nutzer die Online sind, und sind diese in einem Sprach Kanal. Dies wird jedoch auf einen Konfigurierbaren Wert Limitiert, damit folgender Zufall ausgeschlossen wird.
Der Bot speichert, dass ich einen Channel betreten habe.
10 Minuten Später schmiert der Bot ab.
3 Tage Später wird der Bot wieder Online genommen und ich befinde mich in dem Moment in einem Channel.
Nun würde ich ca. 72h verrechnet bekommen. Um dies zu verhindern, darf
joined_on
maximalx
Stunden her sein.Den Admins müssen noch nachrichten geschickt werden. (Admin Rollen konfigurieren)
Bei OnReady prüfen ob sich jemand in einem VoiceChannel befindet, und entsprechend in die DB eintragen.