Command Palette

Search for a command to run...

Presence API

Χρησιμοποίησε το Nowly Presence API για να ενημερώνεις το Discord Rich Presence από μια ενσωμάτωση ιστότοπου.

Δημιουργία ενός Presence

Το Presence είναι ένα global αντικείμενο που εισάγεται από το runtime του Nowly - δεν χρειάζεται να το εισαγάγεις.

Κάθε presence ξεκινά με ένα instance Presence:

const presence = new Presence()

Συμβάν UpdateData

Χρησιμοποίησε το UpdateData για να ανανεώσεις τη δραστηριότητα:

presence.on("UpdateData", async () => {
  await presence.setActivity({
    details: "Watching a video",
  })
})

setActivity

Το setActivity στέλνει την τρέχουσα δραστηριότητα Discord. Συνήθη πεδία περιλαμβάνουν:

ΠεδίοΤύποςΠεριγραφήΠροεπιλογή
detailsstringΚύρια γραμμή δραστηριότητας που εμφανίζεται στο Discord.-
statestringΔευτερεύουσα γραμμή δραστηριότητας που εμφανίζεται κάτω από το details.-
startTimestampnumberUnix timestamp για την παρελθούσα πρόοδο της δραστηριότητας.-
endTimestampnumberUnix timestamp για την υπολειπόμενη πρόοδο της δραστηριότητας.-
largeImageKeystringΚλειδί κύριου asset εικόνας, συνήθως Assets.Logo ή Assets.Thumbnail (globals που παρέχονται από το runtime).-
largeImageTextstringTooltip για τη μεγάλη εικόνα.-
smallImageKeystringΠροαιρετικό κλειδί μικρού asset εικόνας.-
smallImageTextstringTooltip για τη μικρή εικόνα.-
typenumberΤύπος δραστηριότητας Discord από το PresenceType.-
buttonsarrayΠροαιρετικά κουμπιά δραστηριότητας Discord.-

clearActivity

Κάλεσε το clearActivity όταν δεν υπάρχει κάτι άξιο να εμφανιστεί:

presence.clearActivity()

PresenceType

Το PresenceType είναι ένα ονομαστικό export από το @nowly/sdk:

import { PresenceType } from "@nowly/sdk"

Αντιστοιχεί σε τύπους δραστηριότητας Discord: Playing, Streaming, Listening, Watching, και Competing.

getSetting

Διάβασε μια ρύθμιση τύπου ανά presence μετά το Presence.Settings. Η τιμή είναι η αποθηκευμένη ρύθμιση του χρήστη, ή η προεπιλογή του ορισμού:

const showButtons = await presence.getSetting<boolean>("showButtons")

Το UpdateData λαμβάνει επίσης το ctx.settings με τον ίδιο χάρτη. Και τα δύο ενημερώνονται όταν ο χρήστης αλλάζει ρυθμίσεις στο πλαϊνό πλαίσιο.

Καταγραφή (Logging)

Χρησιμοποίησε τα presence.info και presence.error για μηνύματα εντοπισμού σφαλμάτων κατά την ανάπτυξη.