Command Palette

Search for a command to run...

Δημιουργία του Πρώτου σου Presence

Δημιούργησε ένα νέο presence Nowly με το CLI και στείλε την πρώτη σου δραστηριότητα Discord Rich Presence.

Ξεκίνα με το CLI

Χρησιμοποίησε το Nowly CLI για να δημιουργήσεις ένα νέο presence:

nowly init "Example"

Το CLI δημιουργεί metadata, ένα script presence και τα απαραίτητα assets.

Βασικός Κώδικας Presence

Τα Presence και Assets παρέχονται από το runtime - δες Presence API και Assets. Το document είναι το τυπικό DOM API του browser, διαθέσιμο επειδή τα presences εκτελούνται ως content scripts μέσα στην επέκταση.

Μόνο το PresenceType (και άλλα βοηθητικά όπως το createMediaTimestamps) πρέπει να εισαχθούν από το @nowly/sdk.

import { PresenceType } from "@nowly/sdk"

const presence = new Presence()

presence.on("UpdateData", async () => {
  await presence.setActivity({
    details: document.title,
    state: document.location.hostname,
    largeImageKey: Assets.Logo,
    type: PresenceType.Watching,
  })
})

Ροή Εκτέλεσης

Όταν ο χρήστης επισκέπτεται μια αντίστοιχη διεύθυνση URL, το Nowly φορτώνει το presence σου. Το presence διαβάζει την κατάσταση της σελίδας και καλεί το setActivity. Η επέκταση προωθεί αυτό το payload στο Nowly Host, το οποίο ενημερώνει το Discord.

Κύκλος Ανάπτυξης

1

Δημιουργία σκελετού

Δημιουργεί τον φάκελο presence, τα metadata και τα απαραίτητα assets.

nowly init "Example"
2

Ρύθμιση

Όρισε το όνομα, τον δημιουργό, τα υποστηριζόμενα URL, την κατηγορία, το χρώμα, τις μεταφρασμένες περιγραφές και το discordNative όταν το Discord υποστηρίζει ήδη την πλατφόρμα.

Επεξεργάσου το metadata.json - δες το Metadata για όλα τα διαθέσιμα πεδία.

3

Υλοποίηση

Γράψε τη λογική του presence χρησιμοποιώντας το Presence SDK.

import { PresenceType } from "@nowly/sdk"

const presence = new Presence()

presence.on("UpdateData", async () => {
  await presence.setActivity({
    details: document.title,
    largeImageKey: Assets.Logo,
    type: PresenceType.Watching,
  })
})
4

Επικύρωση

Έλεγξε ότι η δομή των metadata είναι σωστή και τα assets βρίσκονται στη θέση τους.

nowly validate
5

Χτίσιμο

Μεταγλωττίζει το presence σε ένα αυτόνομο πακέτο.

nowly build example
6

Φόρτωση

Εγκατέστησε το presence που χτίστηκε στον browser. Δύο μέθοδοι: μια προκατασκευασμένη επέκταση, ή ένα zip drop.

Δες Φόρτωση και Δοκιμή Τοπικά για την πλήρη σύγκριση.

Πρώτη φορά (χωρίς Nowly στον browser): ενσωμάτωσε το presence σε μια έτοιμη επέκταση.

nowly extension example

Φόρτωσε το dist/extension-dev ασυσκεύαστο στο chrome://extensions.

Έχεις ήδη φορτωμένο το Nowly ασυσκεύαστο: πακετάρισε ένα zip και ρίξε το στις Ρυθμίσεις → Προχωρημένες → Debug. Οι εγκαταστάσεις από το Store απορρίπτουν μη υπογεγραμμένα zip.

nowly pack example
7

Δοκιμή

Άνοιξε τον ιστότοπο-στόχο - το presence ενεργοποιείται αυτόματα.

Επισκέψου τον ιστότοπο

Επανάλαβε ΥλοποίησηΧτίσιμοΦόρτωση μετά από κάθε αλλαγή κώδικα.