The Access Server Reference Implementation is meant to act as a reference for developers who want to write their own IOTA Access dApps.
It showcases how to put together the different pieces from the Access SDK into a functional application.
Please note that the release v0.1.0-alpha
is a Minimal Viable Product (MVP). It is by no means ready for production.
Please also note that the current state of the master
branch does not necessarily reflect the state of that release tag. In case you want to inspect the source code of the release, make sure you set the correct release tag.
For documentation, please refer to Access SDK repository.
Please note that the documentation refers to v0.1.0-alpha
, which does not necessarily reflect the current state of the master
branch.
ASRI is currently focused on Raspberry Pi OS.
1 - SSH into the Raspberry Pi.
2 - Install dependencies:
$ sudo apt-get update
$ sudo apt-get install git cmake python3-distutils libfastjson-dev libcurl4-gnutls-dev libtool
3 - Clone:
$ cd ~
$ git clone --recurse-submodules -j4 --branch v0.1.0-alpha https://github.com/iotaledger/access-server.git
$ cd access-server
Warning v0.1.0-alpha
, which will allow you to try out the Access Mobile Client and the Access Policy Store.
If you choose to build from master
or develop
, beware that you are about to build a Work-In-Progress. You are invited to investigate and help us fix the build and runtime errors you will likely encounter.
4 - Build:
$ mkdir build; cd build
$ cmake .. -DCMAKE_INSTALL_PREFIX=$PWD/ext_install
$ make -j4
Edit config.ini
to set up runtime parameters.
In case you are testing Access Policy Store, it is important that you set up policy_store_service_ip
under [pap]
.
Warning
You want to edit access-server/build/config.ini
, not access-server/config.ini
.
Simply invoke the asri
ELF.
Warning pep_plugin_relay
, you will need sudo
. That's because pigpio
uses DMA. pigpio
's author warns the following:
At the moment pigpio on the Pi4B is experimental. I am not sure if the DMA channels being used are safe.
For production scenarios, it is advised that pigpio
is replaced (by a safe alternative) on any GPIO-based pep_plugin_*
implementation.
$ ./asri