SSI-BLS-VPMultiData/– Veramo agents for each actor (user, city council, robotaxi, etc.) install dependencies from README there.CODE/– Python services and the end-to-end simulator that orchestrates all actors.
Run the Veramo servers inside SSI-BLS-VPMultiData before anything else. Each process may persist its own SQLite wallet file if an error occurs; in that case, it must be deleted before the next execution.
Full stack when running all local (User, City Council, RoboTaxi, Ministry, RoboServer, Gate):
cd SSI-BLS-VPMultiData
PORT=3001 DB_FILE=user_wallet.sqlite yarn ts-node --esm ./src/server/veramo-server.js &
PORT=3002 DB_FILE=citycouncil_wallet.sqlite yarn ts-node --esm ./src/server/veramo-server.js &
PORT=3003 DB_FILE=robotaxi_wallet.sqlite yarn ts-node --esm ./src/server/veramo-server.js &
PORT=3004 DB_FILE=ministry_wallet.sqlite yarn ts-node --esm ./src/server/veramo-server.js &
PORT=3005 DB_FILE=roboserver_wallet.sqlite yarn ts-node --esm ./src/server/veramo-server.js &
PORT=3006 DB_FILE=gate_wallet.sqlite yarn ts-node --esm ./src/server/veramo-server.jsSubset stack when User and RoboTaxi in Raspberry PI (City Council, Ministry, RoboServer, Gate):
cd SSI-BLS-VPMultiData
PORT=3002 DB_FILE=citycouncil_wallet.sqlite yarn ts-node --esm ./src/server/veramo-server.js &
PORT=3004 DB_FILE=ministry_wallet.sqlite yarn ts-node --esm ./src/server/veramo-server.js &
PORT=3005 DB_FILE=roboserver_wallet.sqlite yarn ts-node --esm ./src/server/veramo-server.js &
PORT=3006 DB_FILE=gate_wallet.sqlite yarn ts-node --esm ./src/server/veramo-server.jsInstall dependencies and launch the actor services from CODE/:
cd CODE
python3 -m pip install -r requirements.txt
python user_pi.py /& python city_council.py /& python robotaxi_pi.py /& python ministry_of_transport.py /& python robotaxi_server.py /& python gate.pyDeployment notes:
- Gate and RoboTaxi server run on dedicated Windows machines.
- City Council and Ministry of Transport run on WSL.
- User and RoboTaxi Pi run on Raspberry Pi 4.
To stop lingering services during development, free the occupied ports:
kill -9 $(lsof -t -i:3001 -i:3002 -i:3003 -i:3004 -i:3005 -i:3006 -i:7002 -i:7003 -i:7004 -i:7005 -i:7006)After all Veramo servers and actor services are running, start the orchestrator from CODE/:
cd CODE
python simulation.pyThe simulator reads endpoints from CODE/config.json and will initialize actors, issue credentials, and walk through the full gate-approach flow.