Creato: 2026/07/02 19:41:27 America/Chicago
Da: admin
Modificato: 2026/07/03 16:24:56 America/Chicago
Da: admin

Questa libreria raccoglie gli script Lua scritti per gli hub Verlihub. Ogni script aggiunge una piccola funzionalità hub senza modificare il codice sorgente C++ di Verlihub o compilare un plug-in personalizzato.

Utilizza questi articoli per bot di visualizzazione, comandi di supporto, messaggi a tempo, voci di elenchi di utenti, supporti di convalida e piccole automazioni. Mantenere il lavoro pesante all'esterno del processo dell'hub e utilizzare Lua solo per il comportamento dell'hub che deve essere eseguito all'interno di Verlihub.

Scopo di questa libreria

La libreria esiste in modo che il proprietario dell'hub possa rivedere uno script, capire cosa cambia, copiarlo nella directory prevista, regolare le impostazioni documentate, caricarlo, testarlo e disabilitarlo di nuovo senza congetture.

Ogni articolo dello script dovrebbe indicare:

  • Cosa fa la sceneggiatura.
  • Quale caratteristica Verlihub modifica o aggiunge.
  • Sia che crei un bot, un comando, un timer, un hook, una voce nell'elenco degli utenti o un helper di convalida.
  • Dove deve essere posizionato il file di script.
  • Come lo script viene caricato, ricaricato, scaricato o disabilitato.
  • Quali impostazioni possono essere modificate in modo sicuro.
  • Da quale plugin o autorizzazione hub Verlihub dipende lo script.
  • Limiti noti, note sulla versione e avvisi di produzione.

Gli script in questa libreria dovrebbero rimanere piccoli, leggibili e controllati dalla versione. Un file Lua dovrebbe svolgere un lavoro. Non combinare clock bot, comandi delle regole, controllo anti-spam e pulizia del database in un unico file, a meno che l'articolo non spieghi perché tali azioni devono essere fornite insieme.

  • Utilizza uno scopo principale per script.
  • Inserisci commenti chiari nella parte superiore del file.
  • Raggruppare i valori configurabili nella parte superiore.
  • Non codificare i percorsi privati ​​a meno che l'articolo non li spieghi.
  • Evita scritture di database non necessarie.
  • Evitare di bloccare le chiamate di rete dagli eventi dell'hub.
  • Evita cicli pesanti all'interno degli hook di accesso, chat o elenco utenti.
  • Rendere chiaro il comportamento di avvio e arresto.
  • Comandi di caricamento, ricaricamento e scaricamento dei documenti.

Per gli hub di produzione, gli script più piccoli sono in genere più facili da eseguire il debug, disabilitare e sostituire rispetto a un file di grandi dimensioni che controlla il comportamento dell'hub non correlato.

Intestazione dello script suggerita

Inizia ogni script con un breve blocco di commenti. L'intestazione dovrebbe indicare all'operatore successivo qual è il file prima che lo script tocchi un hub live.

-- Script: time.lua
-- Purpose: Displays a clock-like bot entry in the Verlihub user list.
-- Scope: User-list display only.
-- Author: PWiAM
-- Notes: Test on a private hub before production use.

Formato articolo script suggerito

Ogni articolo secondario in questa sezione deve utilizzare la stessa forma in modo che gli script possano essere confrontati e rivisti rapidamente.

  1. Panoramica.
  2. Requisiti.
  3. Installazione.
  4. Configurazione.
  5. Caricamento dello script.
  6. Test.
  7. Scarico o disabilitazione.
  8. Risoluzione dei problemi.
  9. Sceneggiatura completa.
  10. Pagine correlate.

Installazione degli script

La posizione esatta dipende dal percorso di installazione Verlihub, ma i file personalizzati Lua dovrebbero risiedere in una directory di proprietà dell'utente del servizio che esegue l'hub.

sudo mkdir -p /usr/local/etc/verlihub/lua
sudo chown -R verlihub:verlihub /usr/local/etc/verlihub/lua
sudo chmod 750 /usr/local/etc/verlihub/lua

Quindi posiziona ogni script in quella directory:

/usr/local/etc/verlihub/lua/time.lua

Se il tuo servizio viene eseguito da un utente diverso, modifica il proprietario di quell'account. Non utilizzare chmod 777 /usr/local/etc/verlihub/lua. I file Lua vengono eseguiti all'interno del processo hub, quindi l'accesso in scrittura appartiene solo agli amministratori attendibili.

Caricamento e ricaricamento degli script

Gli script Lua richiedono che il plugin Verlihub Lua sia installato e abilitato prima. Se il plug-in non viene caricato, rivedere l'articolo di installazione principale Lua prima di caricare i file di script.

I controlli utili dei plugin includono:

  • !pluglist
  • !lstplug

Utilizza un flusso di lavoro con piccole modifiche quando modifichi uno script live:

  1. Salva un backup del file di lavoro corrente.
  2. Modificare un'impostazione o una funzione.
  3. Ricarica solo quello script se la tua build lo supporta.
  4. Controllare l'output dell'hub e i registri Verlihub.
  5. Ripristina rapidamente se gli utenti vedono errori, bot duplicati o output di chat ripetuti.

Se i comandi di ricaricamento dello script non sono disponibili nel tuo build Verlihub, riavvia o ricarica il plugin Lua in base ai comandi di gestione dei plugin del tuo server.

Testare gli script in modo sicuro

Testare gli script Lua su un hub privato o su una finestra di manutenzione silenziosa prima di fare affidamento su di essi in produzione.

  • Conferma che lo script venga caricato senza errori di sintassi.
  • Conferma che non inonda la chat principale.
  • Conferma che non crei bot duplicati o voci ripetute nell'elenco utenti.
  • Confermare che si comporti correttamente dopo la ricarica.
  • Confermare che si comporti correttamente dopo il riavvio dell'hub.
  • Conferma che gli operatori possano disattivarlo rapidamente.
  • Per gli script di comandi, testare con utenti normali e account operatore.
  • Per i messaggi a tempo o le voci dell'elenco utenti, testare l'intervallo in modo che lo script non crei rumore o carico.

Note sulla sicurezza della produzione

Il codice Lua viene eseguito all'interno del processo hub. Uno script errato può influire sulla chat, sull'accesso, sugli aggiornamenti dell'elenco utenti o sulla chiusura del plug-in.

Evitare:

  • Cicli infiniti.
  • Dormi lunghi all'interno dei gestori di eventi.
  • Lettura di file di grandi dimensioni durante gli eventi utente.
  • Blocco delle richieste HTTP esterne.
  • Query pesanti sul database da chat o hook di accesso.
  • Messaggi broadcast ripetuti senza limiti.
  • Script che non possono essere scaricati in modo pulito.

Preferisco:

  • Gestori di piccoli eventi.
  • Cancella valori di configurazione.
  • Temporizzatori conservativi.
  • Logica di comando semplice.
  • Registrazione solo quando fornisce informazioni utili all'operatore.
  • Ripristino facile.

Se un'attività è a esecuzione prolungata, spostala all'esterno di Verlihub e lascia che Lua attivi o visualizzi il risultato.

Controllo della versione

Mantieni gli script personalizzati in Git quando possibile. Un piccolo repository nella directory degli script è sufficiente per molti hub.

cd /usr/local/etc/verlihub/lua
git init
git add .
git commit -m "Initial Verlihub Lua scripts"

Prima di modificare uno script di produzione, controlla cosa è già cambiato:

git status
git diff

Dopo aver testato la modifica:

git add time.lua
git commit -m "Update time.lua clock display"

Ciò fornisce all'operatore successivo una cronologia delle modifiche e un percorso di rollback rapido.

Script disponibili

time.lua Verlihub script orologio elenco utenti crea una piccola voce nell'elenco utenti simile a un bot che visualizza l'ora corrente.

Usalo quando un hub desidera una voce dell'orologio visibile senza eseguire un processo bot separato o un servizio esterno. È il primo esempio mantenuto in questa libreria e può essere utilizzato come modello per altri script orientati alla visualizzazione.

Aggiunta di altri script

I nuovi script dovrebbero essere aggiunti come articoli secondari in questa sezione, non incollati in questa pagina di indice. I buoni candidati includono:

  • Script del messaggio di benvenuto.
  • Script di promemoria delle regole.
  • Script di comando dell'assistente dell'operatore.
  • Script di annuncio pianificato.
  • Script di visualizzazione del conteggio degli utenti.
  • Script di supporto anti-spam.
  • Script di comando delle informazioni sull'hub.
  • Script di avviso della modalità di manutenzione.

Ogni nuovo articolo dovrebbe includere note di installazione, valori di configurazione, passaggi di test, passaggi di scaricamento e l'elenco completo degli script.

Related Pages

Pagina Padre