Skip to content

enclude/unifi-voucher-generator

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Generator voucherów UniFi

Skrypt w Bashu do tworzenia voucherów hotspotowych za pomocą API kontrolera UniFi. Rezultat to plik vouchers.html gotowy do wydruku, w pełni konfigurowalny przez arkusz style.css.

Wymagania

  • Dostęp do kontrolera UniFi (adres URL, użytkownik i hasło z uprawnieniami do tworzenia voucherów).
  • Środowisko zgodne z POSIX (Linux/macOS) z dostępem do poleceń curl, awk i sed.
  • Możliwość nawiązania połączenia HTTPS z kontrolerem z maszyny uruchamiającej skrypt.

Instalacja

  1. Sklonuj repozytorium:
    git clone https://github.com/davidmaitland/unifi-voucher-generator.git
    cd unifi-voucher-generator
  2. Uzupełnij dane dostępowe do kontrolera w pliku unifi-api.sh lub przez zmienne środowiskowe w pliku unifi_sh_env (domyślnie wczytywany podczas startu):
    export username="twoj_uzytkownik"
    export password="twoje_haslo"
    export baseurl="https://adres_kontrolera:8443"
    export site="default"

Konfiguracja generatora

Plik gen.sh zawiera podstawowe ustawienia voucherów i treści na wydruku:

  • time – ważność vouchera w minutach (np. 60).
  • amount – liczba generowanych kodów (np. 15).
  • note – dodatkowa notatka zapisywana w kontrolerze.
  • line1, line2 – tekst nagłówków na wydruku, można je dowolnie zmienić.

Możesz też dostosować wygląd drukowanych voucherów edytując arkusz style.css.

Użycie

  1. Upewnij się, że pliki gen.sh oraz unifi-api.sh są wykonywalne:
    chmod +x gen.sh unifi-api.sh
  2. Uruchom generator:
    ./gen.sh
  3. Wygenerowany plik vouchers.html otwórz w przeglądarce i wydrukuj. Plik tymczasowy vouchers.tmp jest usuwany po zakończeniu pracy.

Dodatkowe informacje

  • Arkusz CSS znajduje się w style.css i definiuje układ, kolory oraz marginesy wydruków.
  • Skrypt tworzy nowe vouchery poprzez komendy API create-voucher i stat/voucher; w logice możesz dodać własne ograniczenia przepustowości, liczbę danych itp. modyfikując funkcję unifi_create_voucher w unifi-api.sh.
  • Jeśli korzystasz z samopodpisanego certyfikatu na kontrolerze, skrypt używa opcji --insecure w curl, dzięki czemu połączenie zostanie nawiązane mimo braku zaufanego certyfikatu.

Licencja

Projekt dostępny jest na licencji MIT.

About

Generates UniFi vouchers using the controller API. CSS fully styleable and ready to print.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Shell 92.3%
  • CSS 7.7%