FAIR TESTNET

OVERVIEW

Member mode is the mode of Fair node prepared for membership in MCV protocol consensus, to act as p2p file exchange seed hub and some other roles. Memebers collect transactions from users and place them into the blocks(or votes), share these blocks with other members in order to reach consensus on transactions to execute over distributed database. They also can import off-chain data into own shared database through the voting process same to voting for user transactions.

PORTS CONFIGURATION

The OS firewall should be configured to allow incoming TCP connections for ports 11002 (Fair protocol) protocol). If a machine running Node is connected to the Internet through a router, then a user needs to configure port forwarding (NAT) for TCP 11002 port in router's settings. Check your router manual for specific instructions.

RUN UOS NEXUS

Nexus is the core network system of UOS and among other functions responsible for authentication and authorization for all supporting decentralized platforms. It can be run using the following command:

... on Windows:

{InstallationPath}/nexus.exe run

This application requires admin privileges under Windows OS to correctly perform all its functions so above command should be called using "Run as Administrator" option.

... on Linux:

/usr/bin/dotnet {InstallationPath}/nexus.dll run

... on macOS:

/usr/local/share/dotnet/dotnet {InstallationPath}/nexus.dll run

PREPARE A USER KEY

The key is a cryptographic public/secret key pair similar to crypto accounts widely used in blockhain technology.
But unlike most networks, in MCV-based protocols it doesn't represent an account itself but rather acts as a password for the user.
If you don't have a crypto keys in Nexus yet, create a wallet with at least one key using the GUI or CLI commands below:

wallet c name=my123 accounts=1 password=MyStrongSecret!@#$%^&*()

Unlock the wallet if it's locked

wallet u name=my123 password=MyStrongSecret!@#$%^&*()

Reveal and rememeber your public key:

wallet lk name=my123

CREATE FAIR USER

Choose available user name in the Fair, use the command below to check name availability

user e name=satoshi

Authenticate Nexus application to send transactions to Fair on behalf of the chosen user name

key ra address=plsar7tfrq83mvfaw0m6u0l9jmsxhkjvk5zzanaqrhavfygl5w2sq3cyyk9btes user=satoshi net=fair.rdn application="lorem ipsum"

Create a user in the Fair network using the chosen name

user c owner=plsar7tfrq83mvfaw0m6u0l9jmsxhkjvk5zzanaqrhavfygl5w2sq3cyyk9btes by=satoshi

Now, you have got your own user account in the Fair

CONFIGURE NODE

Configure the generator function using created user name which becomes a candidate for Fair consensus membership. Open {profile}/Uccs.Fair.FairNode/FairNode.settings file and make the changes below:

...
Mcv
{
	Generator
	{
		User = satoshi
	}
}
...		
		

RUN NODE

Run Fair Node using one of comand below:

... on Windows:

{InstallationPath}/fair.exe run

This application requires admin privileges under Windows OS to correctly perform all its functions so above command should be called using "Run as Administrator" option.

... on Linux:

/usr/bin/dotnet {InstallationPath}/fair.dll run

... on macOS:

/usr/local/share/dotnet/dotnet {InstallationPath}/fair.dll run

Now it automaticaly sends candidacy declaration transactions in order to place itself to the memebers waitlist:
You can check whether the user is already member or still in pending state using the command below:

user m name=satoshi