1. Wstęp
  2. Aplikacja 24/7
  3. Jak uruchomić?

Jak uruchomić?

Aplikację należy skopiować na twój serwer, najlepiej do dedykowanego katalogu. Aplikacja 24/7 nie potrzebuje żadnych specjalnych uprawnień, wystarczą jej prawa zapisu w katalogu do którego go skopiowałeś, oraz jeden otwarty port (domyślnie TCP/UDP: 8989) na komunikację internetową z resztą użytkowników systemu Billon.

Uruchomienie aplikacji 24/7 (aplikacji sprzedawcy) na systemie Linux

W systemie Linux należy zmienić prawa wykonywalne na +x (execute). Standardowo WUI jest uruchamiany poleceniem:

./vuiProd -i

Polecenie to uruchamia aplikację WUI w trybie interaktywnym (parametr -i) na lokalnym adresie (127.0.0.1), nasłuchującej na domyślnym porcie (9091). Tryb interaktywny oznacza, że użytkownik będzie w konsoli zapytany o login i hasło.

Logowanie do aplikacji 24/7

Zalogować się do aplikacji WUI można poprzez zapytanie SOAP startLogin, lub podając login i hasło podczas uruchamiania aplikacji 24/7, lub uruchomić aplikację na zapamiętanym użytkowniku (odpowiednia opcja podczas rejestracji użytkownika).

Login i hasło mogą być podane jako wartości parametrów -U [–username] i -P [–password], lub podane interaktywnie przez użytkownika po uruchomieniu aplikacji z parametrem -i [–interactive].

Aby się zalogować, użytkownik musi być wcześniej zarejestrowany. Rejestracja może się odbyć w aplikacji klienckiej lub przez zapytanie startRegister.

Dla przykładu:

  • ./vuiProd -U test_user -P test_password –allow-non-merchant-user – uruchamia WUI na domyślnym porcie i loguje na niego użytkownika test_user z hasłem test_password (użytkownik nie musi mieć statusu akceptanta)
  • ./vuiProd –allow-non-merchant-user -i – uruchamia WUI w trybie interaktywnym – po połączeniu się aplikacji, w linii poleceń wyświetli się zapytanie o login i hasło.

Adres i porty

Jeśli webserwis aplikacji 24/7 ma nasłuchiwać na innym adresie niż domyślnym (127.0.0.1), należy mu podać ten adres w argumencie –payment-webservice-host.

Podobnie port webserwisu jest podawany jako argument parametru:

--payment-webservice-port

Dla przykładu, jeśli WUI ma nasłuchiwać na adresie 192.168.2.1 na porcie 9791, należy go uruchomić poleceniem:

./vuiProd --payment-webservice-host 192.168.2.1 --payment-webservice-port 9791 -i

Tryb działania

WUI może działać w jednym z trzech trybów:

  • tryb normalny – po zalogowaniu dysponujemy funkcjonalnością sprzedawcy, ale nie możemy wykonywać operacji zarezerwowanych dla mastera
  • tryb slave’a – na aplikacji może działać kopia aplikacji użytkownika, większość funkcjonalności sprzedawcy nie jest dostępna
  • tryb master’a – poza funcjonalnością dla trybu normalnego, użytkownik może wykonywać operacje zarezerwowane dla Mastera, np. nadawanie uprawnień użytkownikom (addAllowedUsers), dodawanie slave-ów (addSlaves).

Domyślnie WUI jest uruchomiony w trybie normalnym.

Aby uruchomić aplikację w trybie mastera, należy podać plik z użytkownikami uprawnionymi do logowania się jako slave: –allowed-users-file <nazwa_pliku> (w pliku musi znajdować się przynajmniej jedna pozycja), lub uruchomić aplikację z parametrem –master.

Aby uruchomić aplikację 24/7 w trybie slave’a, należy uruchomić ją z parametrem –slave.

Zapisywanie logów

Jeśli WUI jest uruchomiony z parametrem -l [–log-soap], zapytania SOAP są zapisywane w WUI. Są one zapisywane do pliku soap_logs[data].json w każdym z przypadków:

  • rozmiar logów osiągnął odpowiedni rozmiar
  • WUI został zamknięty
  • zapytanie sendBugReport zostało wysłane
  • argument przekazany w tej opcji jest niezerowy (wtedy logi zapytań są zapisywane co minut)

Kiedy wysłane jest zapytanie sendBugReport logi są wysyłane do serwera diagnostycznego Billon.

Pozostałe argumenty

Listę argumentów można też znaleźć wpisując ./vuiProd –help.

parametr opis
-v [ –version ] wyświetla wersję programu
-c [ –config ] arg podanie ścieżki do pliku konfiguracyjnego
-l [ –log-soap ] arg Włącz logowanie zapytań soap. Jeśli wartość <arg> jest niezerowa, co <arg> minut logi zapytań soap będą zapisywane do pliku w formacie soap_log&ly;czas_zapisu>.json. W przeciwnym wypadku pliki z logami będą zapisywane przy wyjściu z aplikacji, przekroczeniu ustalonego rozmiaru oraz podczas wysłania zapytania sendBugReport
–miport arg wewnętrzny numer portu aplikacji Billon. Jeśli nie zostanie podany, lub będzie zajęty aplikacja poszuka wolnego portu
–payment-webservice-host arg (=127.0.0.1) nazwa hosta lub adres ip serwisu płatności (żądania SOAP będą odbierane na tym adresie)
–payment-webservice-port arg (=9091) port serwisu płatności (żądania SOAP będą odbierane na tym porcie)
–adminpanel-webservice-host arg (=127.0.0.1) adres ip, lub nazwa hosta, serwisu webowego panelu admina
–adminpanel-webservice-port arg (=9092) port serwisu webowego panelu admina
–pidfile arg (=billond.pid) ścieżka do pliku zawierającego pid WUI. Usunięcie tego pliku spowoduje zamknięcie aplikacji WUI uruchomionej w tym folderze
–statusfile arg (=billond.info) ścieżka do pliku zawierającego aktualny status WUI
–outfile arg (=billond_out.log) ścieżka do pliku, gdzie przekierowywane jest standardowe wyjście, jeśli WUI jest uruchomiony w tle (daemon)
–errfile arg (=billond_err.log) ścieżka do pliku, gdzie są przekierowane komunikaty błędów jeśli WUI działa w tle
-d [ –daemon ] uruchom w tle
-s [ –stop ] zatrzymaj instancję WUI’a uruchomioną w tym folderze
-U [ –username ] arg login użytkownika, który ma być automatycznie zalogowany przy starcie
-P [ –password ] arg hasło użytkownika, który ma być automatycznie zalogowany przy starcie
–allow-non-merchant-user pozwala użytkownikowi, który nie został zaakceptowany zalogować się do aplikacji
-i [ –interactive ] tryb interaktywny – użytkownik jest pytany o login i hasło
–forget-password zapomnij hasło zapisane do automatycznego logowania
-r [ –remember-password ] zapamiętuje hasło po zalogowaniu
–client-ip arg adres ip z którego serwis płatności WUI akceptuje połączenia. Jeśli nie jest podany, wszystkie połączenia będą akceptowane
–client-ip-file arg ścieżka do pliku zawierającego adresy ip (każdy w jednej linii), z których WUI akceptuje połączenia
–openssl-key-file arg ścieżka do pliku z kluczem ssl: <klucz w formacie pem> + <certyfikat w formacie pem> + <certyfikat CA>;
podanie tego parametru włącza openssl
–openssl-key-password arg hasło pliku z kluczem ssl
–openssl-cacert-file arg ścieżka do pliku zawierającego zaufane certyfikaty CA (Certificate Authority) w formacie pem
–openssl-cacert-dir arg ścieżka do katalogu zawierającego zaufane certyfikaty CA (Certificate Authority) w formacie pem
–openssl-dh-file arg ścieżka do pliku zawierającego DH Param
–slave-list-file arg ścieżka do pliku zawierającego listę slave’ów. Podanie tej opcji powoduje uruchomienie aplikacji 24/7 w trybie master. Podany plik powinien składać się z linii w formacie <soapIp>;<soapPort>;<applicationIp>;<applicationPort>
gdzie <soapIp> i <soapPort> to soapowy adres ip i numer portu aplikacji WUI na maszynie slave (patrz parametr –payment-webservice-port), a <applicationIp> i <applicationPort> to wewnętrzny adres ip i numer portu aplikacji WUI na maszynie slave (patrz parametr –miport)
–allowed-users-file arg ścieżka do pliku zawierającego użytkowników, którzy mają pozwolenie używać klona (slave) na vui
–onetime-code-file arg ścieżka do pliku zawierającego kody jednorazowe (onetime codes)
–slave uruchom WUI w trybie klona (slave), tzn. powiązany WUI uruchomiony w trybie master będzie mógł postawić swoją aplikację na tej maszynie
–master uruchom WUI w trybie master, tzn. WUI może dodawać slave-y oraz pozwalać użytkownikom uruchomić na nich swoje aplikacje
–update-slaves-timeout co podany czas (w minutach) odpytaj wszystkie maszyny slave powiązane z danym WUI masterm o status oraz zalogowanych użytkowników
–automatic-redemption-amount minimalna kwota w billonach, powyżej której WUI automatycznie dokona wykupu, tzn. przelewu na konto sprzedawcy wszystkich pieniędzy powyżej tej kwoty.
Uwaga: aby automatyczny wykup był aktywny, musi być też podany parametr –automatic-redemption-period
–automatic-redemption-period co każde minut aplikacja będzie sprawdzała czy kwota przekroczyła wartość podaną w argumencie –automatic-redemption-amount i jeśli tak, dokona automatycznego wykupu – przeleje na konto sprzedawcy wszystkie pieniądze powyżej tej kwoty.
Uwaga: przy podaniu powyższych argumentów pieniądze są przelewane automatycznie – użytkownik nie jest pytany o potwierdzenie
–money-retrieve-entitlements-file ścieżka do pliku csv zawierającego warunki wypłaty. Po podaniu tego parametru WUI załaduje (i zapamięta) podane warunki do listy o takiej samej nazwie jak plik (z wyłączeniem rozszerzenia). Jeśli już istniała lista warunków wypłaty o takiej nazwie, zostanie nadpisana.
Jeśli zostaje wykonane zapytanie giveMoneyRequest z typem MONEY_COLLECT, użytkownik będzie mógł wypłacić sobie pieniądze tylko wtedy, gdy będzie znajdował się na tej liście oraz wypłata będzie spełniała podane warunki.
Każda linia pliku musi być w formacie: <nazwa użytkownika>;<email>;<kwota do przelania w billonach>;<minimalna data>;<maksymalna data>;<zewnętrzny id>;<opis>
Wszystkie pola oprócz nazwy użytkownika mogą być puste (wtedy nie będą sprawdzane). Uwaga: lista płatności jest domyślnie nieaktywna. Aktywować można ją np. za pomocą parametru –activate-money-entitlements-list
–activate-money-entitlements-list Nazwa listy warunków wypłaty która ma być aktywowana. Wraz z listą są aktywowane też wszystkie rekordy. W szczególności nazwą listy może być nazwa pliku (bez rozszerzenia), podanego w parametrze –money-retrieve-entitlements-file. Wtedy dodana lista warunków wypłaty będzie od razu aktywna
–demotest Uruchomienie aplikacji WUI w trybie z testowymi pieniędzmi. Uwaga: lepiej nie mieszać pieniędzy testowych i normalnych (tzn. lepiej uruchomić te aplikacje w oddzielnych folderach)
Czy ten artykuł jest dla Ciebie pomocny? Tak Nie 1

Jak możemy pomóc?