The application must be copied on your server, preferably to dedication directory. The Corporate Node does not require any special requirements, write permission to the catalog to which you have copied the app and one open port (TCP/UDP by default: 8989) for Internet communication with the rest of the users of Billon system are enough for the app.
Running Corporate Node on Linux system
Execute permission should be changed to +x (executable) in Linux system. Typical CNode execute command is:
This command runs Corporate Node in interactive mode (-i argument), listening on localhost (127.0.0.1) on default port 9091. In the interactive mode the user is asked for login and password in console.
Logging to CNode
We can log into CNode using SOAP message startLogin, or by providing login and password when starting Corporate Node in command line, or run application on user which login and password are stored in the application (appropriate option in user registration).
Login and password can be passed as values of -U [–username] and -P [–password] parameters, or written interactively by user after running application with -i [–interactive] parameter.
The user must be registered before to log in. The registration can take place in the client application or by a request startRegister.
./cnodeProd -U test_user -P test_password --allow-non-merchant-user
– runs CNode on default port and logs user test_user with password test_password (user doesn’t have to have acceptant status)
./cnodeProd --allow-non-merchant-user -i
– runs Corporate Node in interactive mode – when application is connected it will ask user for login and password in command line.
The Corporate Node can work in one of three modes:
- normal mode – standard merchant functionality. User is not allowed to execute operations reserved for master
- slave mode – clone of user application can be run on CNode. Majority of merchant functionalities is not available
- master mode – normal mode functionality, extended by master-reserved operations ie. granting permission for users (addAllowedUsers), adding slaves (addSlaves).
Normal mode is default for Corporate Node.
In order to run Corporate Node in master mode, CNode must be executed with file with list of users allowed to logging as slave (–allowed-users-file <file_name>) or with parameter –master.
In order to run CNode in slave mode, it must be executed with –slave parameter.
When -l [–log-soap] parameter is used, all SOAP logs are saved in CNode. Soap logs are written to disc in four cases:
– size of logs exceeded some fixed amount
– Corporate Node is closed
– sendBugReport request is sent
– argument of parameter is non-zero (logs are written every minutes)
When sendBugReport is sent, logs are also sent to Billon diagnostic server.
List of all arguments can be also obtained by running ./cnodeProd –help in command line.
|-v [ –version ]||prints vui version|
|-c [ –config ] arg||sets path to config file|
|-l [ –log-soap ] arg||enable logging SOAP request. If <arg> is non-zero, then every <arg> minutes soap logs will be written to file soap_log.json. Otherwise logs will be written when application exits, they exceed fixed size, or sendBugReport request is sent|
|–miport arg||internal port of Billon application. If it’s not provided or busy, application will automaticaly look for another free port|
|-h [ –payment-webservice-host ] arg (=127.0.0.1)||Payment Webservice hostname or IP|
|–payment-webservice-port arg (=9091)||port number of payment service (SOAP requests will be received on this port)|
|–adminpanel-webservice-host arg (=127.0.0.1)||AdminPanel Webservice hostname or IP (SOAP requests will be received on this address)|
|–adminpanel-webservice-port arg (=9092)||AdminPanel Webservice port|
|–pidfile arg (=billond.pid)||path to file containing vui pid|
removing this file will close vui
running in this folder
|–statusfile arg (=billond.info)||path to file containing current vui status|
|–outfile arg (=billond_out.log)||path to file to which standard output is redirected in case of running it in background mode|
|–errfile arg (=billond_err.log)||path to file to which standard error|
|-d [ –daemon ]||run in background mode|
|-s [ –stop ]||stop running instance of server in this folder|
|-U [ –username ] arg||username to log in automatically after start|
|-P [ –password ] arg||user password|
|–allow-non-merchant-user||allows user that does not have acceptor status to log into application|
|-i [ –interactive ]||interactive mode user is asked to write username and password for login|
|–forget-password||forgets password saved for autologin|
|-r [ –remember-password ]||remembers password after logging in|
|–remote-login||user is logged in via webservice request|
|–client-ip arg||ip address from which Payment Webservice accepts connections|
|–client-ip-file arg||path to file containing ip addresses (each in one line) from which connections are accepted by Payment Webservice|
|–openssl-key-file arg||path to ssl key file: <key in pem format> + <your certificate in pem format> + <CAs’ certificates’ chain>;|
specifying this options turns on openssl
|–openssl-key-password arg||password to your ssl key file|
|–openssl-cacert-file arg||path to file containing trusted CAs’ certificates in pem format|
|–openssl-cacert-dir arg||path to directory containing trusted CAs’ certificates in pem format|
|–openssl-dh-file arg||path to file contatining DH Param|
|–slave-list-file arg||Every line of provided file should be in format: <soapIp>;<soapPort>;<applicationIp><applicationPort>|
where <soapIp> and <soapPort> are soap ip address and port number of CNode application on slave (see parameter –payment-webservice-port), and <applicationIp> and <applicationPort> are internal ip address and port of CNode application on slave (see –miport parameter)
|–allowed-users-file arg||path to file containing users allowed to use slave vui|
|–onetime-code-file arg||path to file containing onetime codes allowing to use slave vui|
|–slave||run CNode in slave mode. In this mode CNode in master mode is allowed to run user application on this machine|
|–master||run CNode in master mode. In this mode CNode can add slaves and allow user applications to run their application on slaves|
|–update-slaves-timeout||update slave statuses after every <arg> minutes|
|–automatic-redemption-amount||minimum value (in billons) to perform automatic money redemption (all money above this value will be sent to user account). Note that –automatic-redemption-period must also be set in order to enable this functionality.|
|–automatic-redemption-period||after each <arg> minutes application will try to perform automatic money redemption (if amount of money is greater than –automatic-redemption-amount). Attention: money is sent AUTOMATICALLY. User is NOT asked for confirmation.|
|–money-retrieve-entitlements-file||path to csv file containing money retrieve entitlements list. When file is passed in this parameter, CNode will save entitlements from file to list with the same name as file (without extension). If such list already existed, it will be overwritten.|
When giveMoneyRequest will be sent with MONEY_COLLECT type, user will be able to get money only if he is on money retrieve entitlements list, and payout fulfills these criterias. Every line of file must be in format: <username>;<email><amount in billons>;<start date>;<end date>;<reference id>;<description>
Every field despite username can be empty (in this case, this parameter won’t be checked).
Attention: payout list is inactive by default. It can be activated for example using –activate-money-entitlements-list parameter
|–activate-money-entitlements-list||Name of list of money entitlements to be activated. All records in list are also activated. If file is passed using –money-retrieve-entitlements-file paremeter, passing its name (without extension) to –activate-money-entitlements-list parameter will activate the list just after being created|
|–rest-webservice-port||Port for the RESTful API|