Creat: 2026/07/02 19:41:27 America/Chicago
De: admin
Modificat: 2026/07/03 16:24:56 America/Chicago
De: admin

Verlihub poate încărca scripturi Lua prin pluginul său Lua. Utilizați Lua atunci când un hub are nevoie de o mică schimbare de comportament fără a recompila serverul Verlihub.

Utilizările obișnuite includ roboți de afișare, anunțuri programate, comenzi de ajutor, reguli de validare, ajutoare de moderare automată, statistici hub și cârlige de integrare. Suportul Lua depinde de pluginul care este instalat, construit și activat.

Ce face pluginul Lua

Pluginul Lua execută Lua în interiorul procesului hub. Acest lucru oferă administratorilor o cale mai ușoară pentru personalizarea hub-ului decât editarea sursei Verlihub C++ sau scrierea unui plugin compilat.

Scripturile Lua sunt de obicei mai ușor de revizuit și înlocuit decât pluginurile compilate atunci când modificarea este mică și specifică centrului.

  • Comenzi hub personalizate
  • Mesaje automate de bun venit
  • Anunțuri programate
  • Verificări de validare a utilizatorului
  • Răspunsuri bot
  • Comenzi de ajutor operator
  • Cârlige de înregistrare sau notificare
  • Verificări simple anti-spam sau anti-inundare
  • Comportament specific hub-ului care nu justifică un plugin C++

Cerințe

Înainte de a activa suportul Lua, confirmați că pluginul Lua există pe server. O cale comună pentru plugin este /usr/local/lib/liblua_pi.so.

Verificați dacă fișierul plugin există:

 ls -lah /usr/local/lib/liblua_pi.so 

Dacă fișierul nu există, probabil că Lua nu a fost construit sau instalat. Reconstruiți Verlihub cu suportul pentru plugin Lua activat.

În funcție de sistem și de metoda de instalare, pluginul poate fi și el /usr/lib, /usr/lib64, /usr/local/lib, sau /usr/local/lib64. Căutați-l înainte de a modifica configurația hub:

 find /usr /usr/local -name 'liblua_pi.so' 2>/dev/null 

Clădirea Verlihub Cu suport Lua

Dacă suportul Lua nu a fost inclus în timpul instalării, instalați mai întâi pachetul de dezvoltare Lua. Pe Debian sau Ubuntu:

 sudo apt update
sudo apt install lua5.4 liblua5.4-dev 

Unele versiuni Verlihub folosesc Lua 5.3 în loc de Lua 5.4. Instalați pachetul potrivit atunci când filiala sau distribuția dvs. necesită acest lucru:

 sudo apt install lua5.3 liblua5.3-dev 

Apoi reconstruiți Verlihub cu pluginul Lua activat prin CMake:

 cmake .. -DWITH_LUA=ON
make
sudo make install 

Numele exact al opțiunii CMake poate varia în funcție de versiunea 8800442200001900222440088. Verificați opțiunile de construire disponibile înainte de a reconstrui un hub de producție:

 cmake -LAH .. 

După instalare, confirmați că biblioteca de pluginuri a fost instalată:

 find /usr /usr/local -name 'liblua_pi.so' 2>/dev/null 

Comenzi pentru pluginuri

Pluginul Lua este gestionat prin comenzile pluginului Verlihub dintr-un cont de operator.

  • Listați pluginurile instalate sau cunoscute cu !lstplug.
  • Înregistrați pluginul Lua cu !addplug lua -p /usr/local/lib/liblua_pi.so -a 1 -d Support for Lua scripts..
  • Marcați pluginul Lua activ cu !modplug lua -a 1.
  • Încărcați pluginul cu !onplug lua.
  • Confirmați pluginurile încărcate cu !pluglist.
 !lstplug
!addplug lua -p /usr/local/lib/liblua_pi.so -a 1 -d Support for Lua scripts.
!modplug lua -a 1
!onplug lua
!pluglist 

Explicația comenzii

!lstplug

Listează pluginurile cunoscute de Verlihub. Folosiți-l mai întâi pentru a vedea dacă pluginul Lua este deja înregistrat.

 !lstplug 

!addplug

Înregistrează pluginul Lua cu Verlihub.

 !addplug lua -p /usr/local/lib/liblua_pi.so -a 1 -d Support for Lua scripts. 

Semnificația opțiunii:

  • lua: Numele pluginului intern.
  • -p /usr/local/lib/liblua_pi.so: Calea către biblioteca partajată a pluginului Lua.
  • -a 1: marchează pluginul ca activ.
  • -d Support for Lua scripts.: Descrierea pluginului care poate fi citită de om.

!modplug

Modifică înregistrarea pluginului și se asigură că pluginul Lua este marcat activ.

 !modplug lua -a 1 

!onplug

Încarcă sau pornește pluginul Lua după ce a fost adăugat și activat.

 !onplug lua 

!pluglist

Afișează pluginurile încărcate în prezent. Folosiți-l pentru a confirma că Lua este activ.

 !pluglist 

Păstrați scripturile Lua într-un director dedicat deținut de utilizatorul serviciului Verlihub.

 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 

Dacă serviciul dvs. Verlihub rulează ca alt utilizator, înlocuiți verlihub:verlihub cu utilizatorul și grupul corect.

 sudo chown -R vh:vh /usr/local/etc/verlihub/lua
sudo chown -R www-data:www-data /usr/local/etc/verlihub/lua 

Nu faceți Lua directoare de scripturi care pot fi scrise în întreaga lume. Evita chmod 777 /usr/local/etc/verlihub/lua.

Exemplu Lua Script

Creați un mic script de testare:

 sudo nano /usr/local/etc/verlihub/lua/test.lua 

Exemplu de conținut:

 -- Simple Verlihub Lua test script.
-- This file confirms that the Lua plugin can load and execute scripts.
function Main()
    VH:SendToAll("Lua test script loaded successfully.")
end 

Funcțiile disponibile Lua depind de API-ul pluginului 88004422440088 Lua. Unele instalări expun obiectele sau funcțiile de ajutor în mod diferit, deci comparați exemplele cu biblioteca de scripturi 88004422440088 utilizată de versiunea dvs. 88004422440088.

Se încarcă scripturi Lua

După ce pluginul Lua este activ, scripturile pot fi de obicei încărcate prin comenzi Lua specifice pluginului sau directoare de script configurate.

Începeți prin a verifica comenzile pluginului Lua disponibile din interiorul hubului:

 !help lua
!plughelp lua 

Dacă pluginul acceptă listarea, încărcarea, descărcarea sau reîncărcarea scripturilor, este posibil să vedeți comenzi similare cu acestea:

 !lua
!lslua
!loadlua
!unloadlua
!reloadlua 

Numele comenzilor pot diferi între Verlihub versiuni și versiuni de plugin.

Verificarea Lua funcționează

Verificați configurarea în etape. Mai întâi confirmați că pluginul este înregistrat, apoi confirmați că este încărcat:

 !lstplug
!pluglist 

Apoi verificați jurnalele de server pentru mesaje de plugin Lua:

 journalctl -u verlihub -n 100 --no-pager 

Dacă Verlihub nu este gestionat de systemd, verificați în schimb directorul de jurnal configurat Verlihub. Locațiile comune includ /var/log/verlihub şi /usr/local/var/log/verlihub.

Căutați intrări de jurnal legate de Lua atunci când jurnalul de service este mare:

 grep -i lua /var/log/verlihub/* 2>/dev/null 

Recomandări de producție

Utilizați Lua pentru un comportament personalizat mic, nu pentru procesare grea. Codul Lua rulează în cadrul procesului hub, așa că un script prost poate afecta actualizările de chat, autentificare sau liste de utilizatori.

Bun Lua cazuri de utilizare:

  • Comenzi simple
  • Mesaje hub
  • Verificări de utilizator
  • Automatizare ușoară
  • Mici cârlige de integrare

Evitați utilizarea Lua pentru:

  • Lucrări de fundal de lungă durată
  • Interogări grele de baze de date
  • Procesarea fișierelor mari
  • Blocarea apelurilor în rețea
  • Bucle grele pentru procesor
  • Orice poate îngheța procesul hub

Testați scripturile pe un hub de procesare înainte de a le încărca pe un hub public cu utilizatorii conectați.

Note de securitate

Doar administratorii de încredere ar trebui să poată încărca sau modifica Lua scripturi.

Permisiuni recomandate:

 sudo chown -R verlihub:verlihub /usr/local/etc/verlihub/lua
sudo chmod -R u=rwX,g=rX,o= /usr/local/etc/verlihub/lua 

Nu permiteți utilizatorilor neîncrezători să scrie Lua fișiere. Nu stocați secrete direct în scripturile Lua decât dacă permisiunile pentru fișiere sunt blocate.

Păstrați comenzile de gestionare a pluginurilor doar pentru operator sau numai pentru administrator. Utilizatorii normali nu ar trebui să poată încărca, descărca sau înlocui scripturi.

Depanare

Fișierul plugin nu a fost găsit

Simptomele includ Cannot load plugin, No such file, sau liblua_pi.so not found. Căutați biblioteca, apoi actualizați calea pluginului stocată:

 find /usr /usr/local -name 'liblua_pi.so' 2>/dev/null 
 !modplug lua -p /correct/path/to/liblua_pi.so 

Lua pluginul nu apare în lista de pluginuri

Verificați dacă a fost adăugat. Dacă lipsește, adăugați-l, marcați-l activ și încărcați-l:

 !lstplug
!addplug lua -p /usr/local/lib/liblua_pi.so -a 1 -d Support for Lua scripts.
!modplug lua -a 1
!onplug lua 

Pluginul există, dar nu se încarcă

Verificați dependențele bibliotecii partajate și căutați bibliotecile Lua lipsă:

 ldd /usr/local/lib/liblua_pi.so 
 not found 

Dacă bibliotecile Lua lipsesc, instalați pachetul de rulare Lua potrivit.

 sudo apt install lua5.4 liblua5.4-0
sudo apt install lua5.3 liblua5.3-0 

Scriptul nu rulează

Verificați calea scriptului, permisiunile pentru fișiere și jurnalele Verlihub. Verificați, de asemenea, că pluginul Lua acceptă API-ul de script utilizat de script.

 ls -lah /usr/local/etc/verlihub/lua
journalctl -u verlihub -n 100 --no-pager 

Hub devine instabil după încărcarea unui script

Descărcați scriptul sau dezactivați pluginul Lua. Dacă hub-ul nu răspunde, opriți Verlihub din shell și mutați scriptul din directorul Lua:

 sudo systemctl stop verlihub
sudo mkdir -p /usr/local/etc/verlihub/lua-disabled
sudo mv /usr/local/etc/verlihub/lua/problem-script.lua /usr/local/etc/verlihub/lua-disabled/
sudo systemctl start verlihub 

Flux de lucru pentru administrare sugerat

  1. Confirmați că pluginul Lua există.
  2. Adăugați pluginul cu !addplug.
  3. Activați-l cu !modplug.
  4. Începe cu !onplug.
  5. Confirmați-o cu !pluglist.
  6. Creați un director de script dedicat Lua.
  7. Adăugați un mic script de testare.
  8. Verificați Verlihub jurnalele.
  9. Adăugați scripturi de producție pe rând.
  10. Păstrați copii de siguranță ale scripturilor de lucru înainte de a face modificări.

Verlihub Lua Bibliotecă de scripturi

Biblioteca de scripturi Verlihub Lua conține exemple de scripturi și cod Lua reutilizabil pentru personalizarea hub. Utilizați-l ca referință pentru funcțiile acceptate, cârligele de evenimente și modelele de comandă.

Când utilizați scripturi din bibliotecă:

  • Examinați scriptul înainte de a-l instala.
  • Confirmați că se potrivește cu versiunea dvs. Verlihub.
  • Testați-l mai întâi pe un hub care nu este de producție.
  • Verificați căile codificate, numele hub-urilor, poreclele operatorilor sau setările bazei de date.
  • Păstrați o copie de rezervă a scriptului original înainte de editare.

Deschideți biblioteca de scripturi Verlihub Lua

Related Pages

Pagină Părinte