1. Wstęp
  2. Corporate Node
  3. Jak uruchomić?

Jak uruchomić?

Aplikację należy skopiować na twój serwer, najlepiej do dedykowanego katalogu. Węzeł Corporate Node 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 węzła Corporate Node na systemie Linux

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

./vuiProd -i

Polecenie to uruchamia węzeł CNode 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 węzła Corporate Node

Zalogować się do węzła CNode można poprzez zapytanie SOAP startLogin, lub podając login i hasło podczas uruchamiania węzła Corporate Node, 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 CNode 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 CNode 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 węzła Corporate Node 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 CNode 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

CNode 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 CNode 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ć węzeł Corporate Node w trybie slave’a, należy uruchomić ją z parametrem –slave.

Zapisywanie logów

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

  • rozmiar logów osiągnął odpowiedni rozmiar
  • CNode 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 CNode. Usunięcie tego pliku spowoduje zamknięcie węzła CNode uruchomionej w tym folderze
–statusfile arg (=billond.info) ścieżka do pliku zawierającego aktualny status CNode
–outfile arg (=billond_out.log) ścieżka do pliku, gdzie przekierowywane jest standardowe wyjście, jeśli CNode jest uruchomiony w tle (daemon)
–errfile arg (=billond_err.log) ścieżka do pliku, gdzie są przekierowane komunikaty błędów jeśli CNode działa w tle
-d [ –daemon ] uruchom w tle
-s [ –stop ] zatrzymaj instancję CNode’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 CNode 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 CNode 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 węzła Corporate Node 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 węzła CNode na maszynie slave (patrz parametr –payment-webservice-port), a <applicationIp> i <applicationPort> to wewnętrzny adres ip i numer portu węzła CNode 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 CNode w trybie klona (slave), tzn. powiązany CNode uruchomiony w trybie master będzie mógł postawić swoją aplikację na tej maszynie
–master uruchom CNode w trybie master, tzn. CNode 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 CNode masterm o status oraz zalogowanych użytkowników
–automatic-redemption-amount minimalna kwota w billonach, powyżej której CNode 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 CNode 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 węzła CNode 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?