Backend Setup

Getting Started

1. Introduction

The Unified Communications Interface (UCI) aims to democratize the use of different communication channels such as WhatsApp, Telegram, SMS, email and more for governance use cases through a standard configurable manner that is reusable and scalable across all governance use cases.

2. Overview

This Document help you to Setup UCI (Unified Communications Interface) Project and test APIs on your local machine.

3. Prerequisite

  1. Install Git

    $ sudo apt-get update
    $ sudo apt-get upgrade
    $ sudo apt-get install git
  1. Install Java 11

    $ sudo apt-get install openjdk-11-jdk
  1. Install Docker

    • install docker using docker installation guide.

  2. Install Cassandra

    • install cassandra using cassandra installation guide.

  3. Install Maven

    $ sudo apt-get install maven
  1. Install IDE (STS / Eclipse / IntelliJ)

  2. Lombok Enabled

    • Enable lombok in Eclipse / STS / intelliJ.

  3. Install Postman (for testing API)

  4. Install Kafka, Zookeeper

    • install kafka using kafka installation guide.

  5. Install Redis

  • Install Redis using installation guide.

  1. Install Postgresql

4. Setup

4.1 For first time

  1. Fork following repositories
  1. Clone all forked repositories

    git clone repository-link
  1. Import all cloned repositories into IDE and checkout to the latest branch Eg. release-4.9.0

  2. If project is not build by default then build using

    $ mvn clean install -U 
  1. Add projects in IDE link

  2. Add Enviorment Variable in IDE.

  3. We can run the services via IDE. if you want to run these via terminal or docker use this link

4.2 Routine

  1. Run spring boot application for following projects

    • Inbound

    • Orchestrator

    • Transformer

    • Broadcast Transformer

    • Outbound

  2. To debug these service, we should follow the same routine. Click here to check the detailed overview of debugging services.

5. APIs

5.1 For first time

  1. Import following files to postman :

  2. create new enviorment inbound with properties :

    VariableTypeInitial ValueCurrent Value





  3. create new enviorment transformer with following properties :

    VariableTypeInitial ValueCurrent Value





5.2 Routine :

  1. Test bot APIs with :

    └── Samagra Inbound - Apis 
                └── Bot - Messages
                        └── ...

Last updated