Merge pull request #30 from beckn/fix_typos

Use standard nomenclature for Beckn-ONIX
This commit is contained in:
Venkatesh Babu
2024-04-02 11:18:32 +05:30
committed by GitHub
11 changed files with 113 additions and 106 deletions

View File

@@ -1,8 +1,8 @@
# ONIX
# Beckn-ONIX
ONIX - Open Network In A Box, is a project designed to effortlessly set up and maintain Beckn network that is scalable, secure and easy to maintain.
Beckn-ONIX - Open Network In A Box, is a project designed to effortlessly set up and maintain Beckn network that is scalable, secure and easy to maintain.
In the install folder, you find a tool that helps install a Beckn network. This tool serves as a valuable resource for developers and network participants eager to explore BECKN protocols or join open networks supported by the BECKN protocol. By simplifying the installation process, ONIX streamlines the onboarding experience.
In the install folder, you find a tool that helps install a Beckn network. This tool serves as a valuable resource for developers and network participants eager to explore Beckn protocols or join open networks supported by the Beckn protocol. By simplifying the installation process, Beckn-ONIX streamlines the onboarding experience.
Refer to the following documents for more information:
@@ -10,12 +10,12 @@ Refer to the following documents for more information:
- [Step by step walkthrough of a demo](./docs/demo_walkthrough.md)
- [release notes](./install/RELEASE.md)
Experience the convenience and efficiency of ONIX as you embark on your journey with BECKN protocols and open networks.
Experience the convenience and efficiency of Beckn-ONIX as you embark on your journey with Beckn protocols and open networks.
## Note on mandatory Layer 2 Config (Important)
This note will eventually be moved to a proper place in the documentation. It has been put here to alert people who run Beckn ONIX in the meantime.
Beckn-Onix mandates availability of Layer 2 Config for a particular domain before any transactions can be conducted on it. If the layer 2 config is not present, on either the BAP or the BPP, the following error is returned back to the caller. "Config error : Layer 2 config not found."
This note will eventually be moved to a proper place in the documentation. It has been put here to alert people who run Beckn-ONIX in the meantime.
Beckn-ONIX mandates availability of Layer 2 Config for a particular domain before any transactions can be conducted on it. If the layer 2 config is not present, on either the BAP or the BPP, the following error is returned back to the caller. "Config error : Layer 2 config not found."
Usually the network facilitators will host the Layer 2 config and provide a way to access it. Currently we have a small script (layer2/download_layer_2_config_bap.sh and layer2/download_layer_2_config_bpp.sh) that can download the layer 2 config from a fixed location and insert it into the docker container that runs the Protocol Server Client.

View File

@@ -2,7 +2,7 @@
The [demo walkthrough](../docs/demo_walkthrough.md) and the accompanying video shows a story where we have the following steps
1. We install a core Beckn network using Beckn ONIX
1. We install a core Beckn network using Beckn-ONIX
2. We try to conduct a retail transaction, but it fails due to layer 2 config not being present
3. We install the layer 2 config for retail from and successfully complete a retail transaction
4. We try to perform a query to find charging station nearby (energy transaction), but it fails due to the layer 2 for energy being absent
@@ -15,7 +15,7 @@ In this document we list a few other demo stories where we can show a similar fl
Alice wants to book a wellness center appointment and then book a cab to reach the clinic.
1. We install a core Beckn network using Beckn ONIX
1. We install a core Beckn network using Beckn-ONIX
2. Alice tries to conduct a healthcare booking, but it fails due to layer 2 config not being present
3. We install the layer 2 config for healthcare `https://raw.githubusercontent.com/beckn/beckn-onix/main/layer2/samples/dhp_1.1.0.yaml` and successfully complete a healthcare appointment booking
4. She tries to book a cab to reach the clinic, but it fails due to the layer 2 for mobility not being present
@@ -26,7 +26,7 @@ Alice wants to book a wellness center appointment and then book a cab to reach t
Bob wants to book a cab back home. He wants to buy groceries so he can pick it up on the way
1. We install a core Beckn network using Beckn ONIX
1. We install a core Beckn network using Beckn-ONIX
2. Bob tries to book a cab, but it fails due to layer 2 config not being present
3. We install the layer 2 config for mobility `https://raw.githubusercontent.com/beckn/beckn-onix/main/layer2/samples/mobility_1.1.0.yaml` and successfully complete the booking
4. He now wants to buy groceries from a shop on the way, but it fails due to the layer 2 for retail not being present
@@ -37,7 +37,7 @@ Bob wants to book a cab back home. He wants to buy groceries so he can pick it u
Cindy wants to schedule a wellness clinic visit, find charging stations near the clinic to get her bike charged while she is attending her appointment
1. We install a core Beckn network using Beckn ONIX
1. We install a core Beckn network using Beckn-ONIX
2. Cindy tries to book a wellness clinic appointment. It fails due to healthcare layer 2 being missing
3. We install the layer 2 config for healthcare `https://raw.githubusercontent.com/beckn/beckn-onix/main/layer2/samples/dhp_1.1.0.yaml` and Cindy can successfully book the appointment
4. Now she wants to find charging stations near the clinic, but it fails as energy layer 2 config is absent.

View File

@@ -19,7 +19,7 @@ Some of the outputs listed below might be different when you run the script for
Note: Due to a [known issue](https://github.com/beckn/beckn-onix/issues/11), on certain machines, when the script is run for the first time, it errors out complaining about permission error in accessing docker daemon. Till this issue is fixed, the work around is to exit the terminal and restart the installation in a new terminal.
Please refer to the [Beckn Onix User Guide](./user_guide.md) for detailed explanation of the below steps.
Please refer to the [Beckn-ONIX User Guide](./user_guide.md) for detailed explanation of the below steps.
## Sample deployment diagram
@@ -119,7 +119,7 @@ Registry installation successful
[Installation Logs]
Your Registry setup is complete.
You can access your Registry at https://onix-registry.becknprotocol.io
Process complete. Thank you for using Beckn Onix!
Process complete. Thank you for using Beckn-ONIX!
```
## Install a gateway for the network
@@ -231,7 +231,7 @@ Gateway installation successful
[Installation Logs]
Your Gateway setup is complete.
You can access your Gateway at https://onix-gateway.becknprotocol.io
Process complete. Thank you for using Beckn Onix!
Process complete. Thank you for using Beckn-ONIX!
```
## Install a Beckn Adaptor for the BAP
@@ -324,7 +324,7 @@ Protocol server BAP installation successful
[Installation Logs]
Your BAP setup is complete.
You can access your BAP at https://onix-bap.becknprotocol.io
Process complete. Thank you for using Beckn Onix!
Process complete. Thank you for using Beckn-ONIX!
```
@@ -420,7 +420,7 @@ Protocol server BPP installation successful
[Installation Logs]
Your BPP setup is complete.
You can access your BPP at https://onix-bpp.becknprotocol.io
Process complete. Thank you for using Beckn Onix!
Process complete. Thank you for using Beckn-ONIX!
```
## Change the status of the BAP and BPP on registry to Subscribed

View File

@@ -1,9 +1,9 @@
# Beckn ONIX - User Guide
# Beckn-ONIX - User Guide
## Table of Contents
- [Introduction](#introduction)
- [Running Beckn ONIX on the cloud](#running-beckn-onix-on-the-cloud)
- [Running Beckn-ONIX on the cloud](#running-beckn-onix-on-the-cloud)
- [Sample deployment diagram](#sample-deployment-diagram)
- [Overall Prerequisites](#overall-pre-requisites)
- [Setting up a new network - Registry](#setting-up-a-new-network---registry)
@@ -12,7 +12,7 @@
- [Setting up a BPP Beckn Adapter](#setting-up-a-bpp-beckn-adapter)
- [Downloading Layer 2 Configuration for a domain](#downloading-layer-2-configuration-for-a-domain)
- [Testing transactions on the network](#testing-transactions-on-the-new-network)
- [Running Beckn ONIX locally](#running-beckn-onix-locally)
- [Running Beckn-ONIX locally](#running-beckn-onix-locally)
- [Appendix A - subdomain/domain name configuration](#appendix-a---registering-or-adding-domain-or-subdomains)
- [Appendix B - Nginx reverse proxy configuration](#appendix-b---nginx-reverse-proxy-configuration)
@@ -24,12 +24,12 @@ This user guide provides all information necessary to setup a Beckn network and
There are two primary setups covered in this document.
- A typical production setup with the various Beckn components on different nodes - This is explained in the Running Beckn ONIX on the cloud section.
- A developer all in one setup - This is explained in the Running Beckn ONIX locally section.
- A typical production setup with the various Beckn components on different nodes - This is explained in the Running Beckn-ONIX on the cloud section.
- A developer all in one setup - This is explained in the Running Beckn-ONIX locally section.
## Running Beckn ONIX on the Cloud
## Running Beckn-ONIX on the Cloud
Using Beckn ONIX, we can install a Beckn network on the cloud. This will be similar to a simple production instance of Beckn network. In the sections below, we use Amazon EC2 as an example for VPS provider. The guide can be useful for other cloud environments with simple changes on methods of accessing them etc. In this part of the guide, we explain installation of the four components of Registry, Gateway, BAP and BPP Beckn Adapter on different instances of virtual servers. You can however use the same process with minimal changes to install multiple nodes on the same virtual server (e.g. Registry and Gateway on a single virtual server)
Using Beckn-ONIX, we can install a Beckn network on the cloud. This will be similar to a simple production instance of Beckn network. In the sections below, we use Amazon EC2 as an example for VPS provider. The guide can be useful for other cloud environments with simple changes on methods of accessing them etc. In this part of the guide, we explain installation of the four components of Registry, Gateway, BAP and BPP Beckn Adapter on different instances of virtual servers. You can however use the same process with minimal changes to install multiple nodes on the same virtual server (e.g. Registry and Gateway on a single virtual server)
### Sample deployment diagram
@@ -59,7 +59,7 @@ In the Beckn ecosystem, a new network starts with the setting up of the Registry
**Installation Steps**
- Clone the Beckn ONIX repository `git clone https://github.com/beckn/beckn-onix.git`
- Clone the Beckn-ONIX repository `git clone https://github.com/beckn/beckn-onix.git`
- Change into the installation folder `cd beckn-onix/install`
- Run the installation script `./beckn-onix.sh`
- Specify you want to start a new network and install the registry
@@ -81,7 +81,7 @@ In the Beckn ecosystem, the role of the Gateway is limited to the discovery phas
**Installation Steps**
- Clone the Beckn ONIX repository (git clone https://github.com/beckn/beckn-onix.git)
- Clone the Beckn-ONIX repository (git clone https://github.com/beckn/beckn-onix.git)
- Change into the installation folder `cd beckn-onix/install`
- Run the installation script `./beckn-onix.sh`
- Specify you want to join an existing network and install the gateway
@@ -106,7 +106,7 @@ The BAP (Beckn Application Platform) is the bridge between buyer side applicatio
**Installation Steps**
- Clone the Beckn ONIX repository (git clone https://github.com/beckn/beckn-onix.git)
- Clone the Beckn-ONIX repository (git clone https://github.com/beckn/beckn-onix.git)
- Change into the installation folder `cd beckn-onix/install`
- Run the installation script `./beckn-onix.sh`
- Specify you want to join an existing network and install the BAP.
@@ -132,7 +132,7 @@ The BPP (Beckn Provider Platform) is the bridge between the seller side applicat
**Installation Steps**
- Clone the Beckn ONIX repository (git clone https://github.com/beckn/beckn-onix.git)
- Clone the Beckn-ONIX repository (git clone https://github.com/beckn/beckn-onix.git)
- Change into the installation folder `cd beckn-onix/install`
- Run the installation script `./beckn-onix.sh`
- Specify you want to join an existing network and install the BPP.
@@ -145,7 +145,7 @@ The BPP (Beckn Provider Platform) is the bridge between the seller side applicat
### Changing subscription status of BAP and BPP at the registry
While the Beckn ONIX installs network participant beckn adapter as well as registers them with the Registry, they need to be manually put to the 'Subscribed' status. Its only then that they can transact. In real networks, the network facilitator might require additional documentation or validation before transitioning the BAP/BPP to the Subscribed state. When we are setting up the entire network ourselves, we do this task ourselves.
While the Beckn-ONIX installs network participant beckn adapter as well as registers them with the Registry, they need to be manually put to the 'Subscribed' status. Its only then that they can transact. In real networks, the network facilitator might require additional documentation or validation before transitioning the BAP/BPP to the Subscribed state. When we are setting up the entire network ourselves, we do this task ourselves.
**Steps**
@@ -156,7 +156,7 @@ While the Beckn ONIX installs network participant beckn adapter as well as regis
### Downloading Layer 2 Configuration for a domain
With Beckn network setup by ONIX, we have a core network with all required network participants. However we cannot still do any transactions on this network. In order to do transactions, we need the Layer 2 Config file for the domain in which we want to transact. Layer 2 configuration files contain
With Beckn network setup by Beckn-ONIX, we have a core network with all required network participants. However we cannot still do any transactions on this network. In order to do transactions, we need the Layer 2 Config file for the domain in which we want to transact. Layer 2 configuration files contain
- rules and policies agreed upon by entities operating in the domain through working group and other consultations
- rules and policies required by the network facilitator
@@ -176,7 +176,7 @@ Currently the layer-2 config are per domain, though this might change with futur
- We can use postman collection for the specific domain to test end to end communication on the domain. Some sample postman collections for testing are [present here](https://github.com/beckn/beckn-sandbox/tree/main/artefacts)
- When running postman collection from the buyer side, the base url to which the requests are sent should be the client side endpoint of the BAP Beckn Adapter instance. (e.g https://onix-bap-client.becknprotocol.io)
## Running Beckn ONIX locally
## Running Beckn-ONIX locally
- In order for people new to Beckn who want to try out Beckn on their own machine, a simple one click installer has been written. Currently it can be installed by running the `start_beckn.sh` script present in the installfolder. In the next release, this will be integrated with the main script and the `start_beckn.sh` script deprecated. An all in one installation has preconfigured values for variables and so pretty much does not ask for any input.

View File

@@ -2,9 +2,9 @@
### Objective
ONIX - Open Network In A Box. This install utility is designed to effortlessly set up all BECKN components on a machine using a one-click installer. This tool serves as a valuable resource for developers and network participants eager to explore BECKN protocols or join open networks supported by the BECKN protocol. By simplifying the installation process, ONIX streamlines the onboarding experience.
Beckn-ONIX - Open Network In A Box. This install utility is designed to effortlessly set up all Beckn components on a machine using a one-click installer. This tool serves as a valuable resource for developers and network participants eager to explore Beckn protocols or join open networks supported by the Beckn protocol. By simplifying the installation process, Beckn-ONIX streamlines the onboarding experience.
Experience the convenience and efficiency of ONIX as you embark on your journey with BECKN protocols and open networks.
Experience the convenience and efficiency of Beckn-ONIX as you embark on your journey with Beckn protocols and open networks.
| Version | Release Date |
| ------------------------------------------------------------------------------------------ | ------------ |

View File

@@ -1,4 +1,4 @@
# ONIX Setup Script
# Beckn-ONIX Setup Script
## Overview

View File

@@ -148,11 +148,11 @@ install_bpp_protocol_server(){
# MAIN SCRIPT STARTS HERE
#!/bin/bash
echo "Welcome to Beckn Onix!"
echo "Welcome to Beckn-ONIX!"
if [ -f ./onix_ascii_art.txt ]; then
cat ./onix_ascii_art.txt
else
echo "[Display Beckn ONIX ASCII Art]"
echo "[Display Beckn-ONIX ASCII Art]"
fi
echo "Beckn ONIX is a platform that helps you quickly launch and configure beckn-enabled networks."
@@ -277,6 +277,6 @@ else
exit 1
fi
echo "Process complete. Thank you for using Beckn Onix!"
echo "Process complete. Thank you for using Beckn-ONIX!"

View File

@@ -1,18 +1,20 @@
# Release Notes
## ONIX Version 0.1.0 (2024-02-16)
## Beckn-ONIX Version 0.1.0 (2024-02-16)
### Objective
ONIX - Open Network In A Box, is a utility designed to effortlessly set up all BECKN components on a machine using a one-click installer. This tool serves as a valuable resource for developers and network participants eager to explore BECKN protocols or join open networks supported by the BECKN protocol. By simplifying the installation process, ONIX streamlines the onboarding experience.
The current version installs all components automatically without requiring user input, facilitating a seamless setup process. However, we are committed to further enhancing ONIX's functionality. In the upcoming release, we will introduce the capability to selectively install specific components and accommodate user-provided configurations.
Beckn-ONIX - Open Network In A Box, is a utility designed to effortlessly set up all Beckn components on a machine using a one-click installer. This tool serves as a valuable resource for developers and network participants eager to explore Beckn protocols or join open networks supported by the Beckn protocol. By simplifying the installation process, Beckn-ONIX streamlines the onboarding experience.
The current version installs all components automatically without requiring user input, facilitating a seamless setup process. However, we are committed to further enhancing Beckn-ONIX's functionality. In the upcoming release, we will introduce the capability to selectively install specific components and accommodate user-provided configurations.
For a comprehensive summary of the features, refer [here](https://github.com/beckn/beckn-utilities/milestone/2?closed=1)
Experience the convenience and efficiency of ONIX as you embark on your journey with BECKN protocols and open networks.
Experience the convenience and efficiency of Beckn-ONIX as you embark on your journey with Beckn protocols and open networks.
### New Features
- Implemented installation support for the following BECKN components:
- Implemented installation support for the following Beckn components:
- Protocol Server BAP
- Protocol Server BPP
- Webhook BPP
@@ -24,22 +26,27 @@ Experience the convenience and efficiency of ONIX as you embark on your journey
This release is specifically tailored for deployment on Linux machines, encompassing all aforementioned components with default configurations.
### Enhancements
- None
### Bug Fixes
- None
### Known Issues
- None
### Limitations
- The current installer is tested only for Linux (Ubuntu), it might support other flavors also.
- The current version installs all the components with the default configurations.
### Upcoming Version
- Installation of individual components with user-provided configuration.
- Support for Windows and Mac OS will be added.
### Release Date
- 2024-02-16

View File

@@ -25,7 +25,7 @@ start_support_services(){
}
# Main script starts here
text="
Welcome to ONIX!
Welcome to Beckn-ONIX!
The following components will be installed
1. MongoDB, RabbitMQ and Redis

View File

@@ -187,7 +187,7 @@ The following components will be installed
# Main script starts here
bash scripts/banner.sh
echo "Welcome to ONIX"
echo "Welcome to Beckn-ONIX"
echo "$text"
read -p "${GREEN}Do you want to install all the components on the local system? (Y/n): ${NC}" install_all
@@ -306,11 +306,11 @@ else
;;
7)
echo "Exiting ONIX"
echo "Exiting Beckn-ONIX"
exit 0
;;
*)
echo "Invalid choice. Exiting ONIX."
echo "Invalid choice. Exiting Beckn-ONIX."
exit 1
;;
esac

View File

@@ -1,10 +1,10 @@
# Creating a Beckn network for healthcare using Beckn ONIX and transacting on it.
# Creating a Beckn network for healthcare using Beckn-ONIX and transacting on it.
## Introduction
[Beckn](https://becknprotocol.io/) as a protocol allows creation of decentralised commerce network across many domains. Healthcare is one of them. Beckn ONIX is a project aimed at easing setup and maintanence of Beckn network for different domains. It provides utilities to quickly setup the core Beckn network as well as provides tools to enable domain specific transactions. The latter is achieved through the use of layer 2 configuration files.
[Beckn](https://becknprotocol.io/) as a protocol allows creation of decentralised commerce network across many domains. Healthcare is one of them. Beckn-ONIX is a project aimed at easing setup and maintanence of Beckn network for different domains. It provides utilities to quickly setup the core Beckn network as well as provides tools to enable domain specific transactions. The latter is achieved through the use of layer 2 configuration files.
The [Beckn ONIX User Guide](./user_guide.md) provides an overall understanding of setup of the core Beckn network as well as download and ingestion of Layer 2 configuration files. The [step by step demo](./demo_walkthrough.md) walks through one such installation in great detail. The layer 2 configurations illustrated in that demo belong to the retail and energy domain.
The [Beckn-ONIX User Guide](./user_guide.md) provides an overall understanding of setup of the core Beckn network as well as download and ingestion of Layer 2 configuration files. The [step by step demo](./demo_walkthrough.md) walks through one such installation in great detail. The layer 2 configurations illustrated in that demo belong to the retail and energy domain.
## Healthcare usecases on Beckn network
@@ -139,4 +139,4 @@ anyOf:
## Conclusion
Multitide DHP related use cases can be implemented on the Beckn networks. The process Beckn ONIX follows to create core Beckn network and allowing participants to download layer 2 configuration is identical across domains. Layer 2 configuration captures both domain policies and rules as well as those enforced by the network facilitators. Layer 2 configuration are both prescriptive as well as mandatory. The mandatory rules and policies can be written on top of the core spec within the layer 2 config and can be enforced by incorporating a validator in the workflow.
Multitide DHP related use cases can be implemented on the Beckn networks. The process Beckn-ONIX follows to create core Beckn network and allowing participants to download layer 2 configuration is identical across domains. Layer 2 configuration captures both domain policies and rules as well as those enforced by the network facilitators. Layer 2 configuration are both prescriptive as well as mandatory. The mandatory rules and policies can be written on top of the core spec within the layer 2 config and can be enforced by incorporating a validator in the workflow.