🧒
Sunbird ED
new release -7.0.0 (Jun 2024)Askdot
latest
latest
  • Learn
    • Overview
    • Capabilities
      • Learning Apps
      • Asset Sourcing
      • Organised Collections
      • Discover Content - Digital & Phygital
      • User Engagement
      • Rich and diverse content
      • Versatile Question Bank
      • Observability
      • Launch Course
      • Verifiable Credentials
      • Multi-Channel Chatbot
      • Targeted Programs
      • Manage Learn
        • Overview
        • What is an entity?
        • What is a Program?
        • What is a Project?
        • What is Observation?
        • What is a Survey?
        • What is Observation as a task inside a Project?
      • Product and Developer's Guide
        • Learning apps
          • Workflows
            • Onboarding of Users
            • Discovery of Content
            • Play content
            • Track progress and Earn credentials
            • Interacting / Collaborating
        • Asset Sourcing
        • Organised Collections
        • Discover Content - Digital & Phygital
        • User Engagement
        • Rich and Diverse Content
        • Versatile Question Bank
        • Observability
        • Launch Courses
        • Verifiable Credentials
        • Multi-Channel Chatbot
        • Targeted Programs
        • Manage Learn
          • Overview
          • Component Diagram
          • ML Core Service
          • ML Project Service
          • ML Survey Service
          • ML Report Service
          • ML Analytics Service
    • Tech Overview
      • Design Principles
      • Technical Architecture Diagram
      • Tech Stack
    • Adopters
      • DIKSHA
    • Roadmap
      • Plan for 2025-2026
      • Releases and Dates
  • USE
    • Getting Started - Setup
      • Pre-requisites
      • Install
      • Functional Configurations
    • Developer Guide - Overview
      • Architecture - Component Diagram
      • System Requirements
        • Learning Apps
      • Install Locally
        • SunbirdED Mobile
        • SunbirdED Portal
      • Easy Installer
        • Adding Support for a New Cloud Provider
      • Configuration
        • SunbirdEd Portal
        • Sunbird Mobile
      • Portal
        • Component Diagram
        • I18N (Resource Bundles)
        • Branding Name and Logo Configuration Guide
      • Desktop
        • Component Diagram
      • Mobile
        • Component Diagram
        • sunbird-mobile-sdk
        • Sunbird-mobile-app plugins
        • Configurations to setup mobile app
        • I18N (Resource Bundles)
      • Form service
        • Component Diagram
        • Data model
        • API's
      • Manage Learn
        • ML Core Service
          • Overview
          • User Flow Diagram
          • Component Diagram
          • Data Model
          • Folder Structure
          • API's
          • Deployment Overview
          • Local Service Setup Guide
        • ML Project Service
          • Overview
          • User Flow Diagram
          • Component Diagram
          • Data Model
          • Folder Structure
          • API's
          • Deployment Overview
          • Local Service Setup Guide
        • ML Survey Service
          • Overview
          • User Flow Diagram
          • Component Diagram
          • Data Model
          • Folder Structure
          • API's
          • Deployment Overview
          • Local Service Setup Guide
        • ML Report Service
          • Overview
          • User Flow Diagram
          • Component Diagram
          • Data Model
          • Folder Structure
          • API's
          • Deployment Overview
          • Local Service Setup Guide
        • ML Analytics Service
          • Overview
          • Component Diagram
          • Data Model
          • Setup Guide
            • ENV Variables ( Config.ini)
          • Ingestions
          • Folder Structure
          • Report creation and Updation Scripts
          • Deployment Overview
      • UI (User interface)
        • Angular Material
          • Overview
          • Installation
          • Material Icons
          • Components Usage
          • Theming
          • Theme Setup
          • Customazion
            • Palette
            • Theme
            • Accessibility
            • Colors
            • Typography
            • Components
              • Buttons
              • CC Components
        • Component Style Guide Version 1
          • Accordion
          • Buttons
          • Cards
          • Forms
          • Grid & Layout
          • Labels
          • Modals
          • Pagination
          • Rating
          • Search Box
          • Select Box
          • Tables
          • Tabs
          • Toast messages
          • Tooltip
          • Typography
        • SB-Styles: A Comprehensive Design Resource
        • SB-Themes Repository: Unifying Design Across Platforms
          • Classical Theme in Sunbird-Ed portal
          • Joyful Theme in Sunbird-Ed portal:
      • Reference Apps
        • Independent Libraries
          • Common Consumption Components
          • SunbirdEd Forms
          • Sunbird Client Services
          • Sunbird Styles
          • Sunbird Themes
          • Sunbird Tag Manager
      • API's
      • CSP changes
      • Cloud-Store SDK Maven Deployment Guide
      • Other
        • Building Images
        • Minimal forms
        • Telemetry
          • Trackable Collection
        • Platform
        • Learning Apps
    • Learn More
      • Dependencies
      • Specifications
        • SOFIE
        • SOFIE Implementation
  • SB Ed Releases
    • Sunbird v7.6.0 (Latest)
    • Sunbird v7.5.1
    • Release - SB 7.5
    • SB Release - 7.0.0
      • Release notes
      • Updating Sunbird Releases
        • 6.0.1 to 7.0.0
      • Release Calendar 7.0.0
      • Demo of released items
  • Engage
    • Discuss
    • Contribute to Sunbird ED
    • Extend / Contribute to Sunbird
    • Issue tracker/ Create Issue
  • Misc
    • Templates
      • Upgrade Sunbird release document
      • Release Notes
    • Misc Pages
      • Portal - Manage Learn - Reports
      • App - Manage Learn - component diagram
        • Projects
        • Observation & Survey
        • Program
      • Portal - Manage Learn - component diagram
      • Mobile form configurations
      • Content Indexing Flow
      • What are multiple databases used for
      • Course completion, reports and certificate issue
      • How to access Flink UI
      • What are all the flink jobs for
      • How does data flow into Druid
      • Minimal build properties
      • Delete User Functionality
    • Archived
      • High Level Capabilities
      • Workflows
      • Where Sunbird ED helps you
      • ED - Mobile App (going to archive)
        • 4.10.3 to 5.0.0
        • 5.0.0 to 5.1.0
      • Setting up Sunbird ED
      • Developer Documentation
      • API Reference Documentation
      • Detailed Documentation
      • Source Code
      • Actors & Actions
      • Detailed Capabilities
      • Data
      • Terminology
      • 5.1.0-hotfix (OCI )
      • Getting started (v7)
        • Deployment Overview
        • Pre-requisites
        • Install
          • Provision Cloud Infrastructure
          • Setup Jenkins
          • Update Ansible Variables
          • Build, Provision and Deploy
          • Functional Configurations
Powered by GitBook
On this page
  • Pre-requisites
  • Clone the service repository onto your system
  • Create .env file
  • ML Survey Service Config
  • Install Dependencies
  • Setting the keycloak
  • Setup Database
  1. USE
  2. Developer Guide - Overview
  3. Manage Learn
  4. ML Survey Service

Local Service Setup Guide

Pre-requisites

  • All resources under Introduction to Manage Learn Category

  • NodeJS

  • MongoDB

  • Basics of Cloud Storage

  • Basics of Kafka

Clone the service repository onto your system

  • Create a new folder where you want to clone the repository.

  • Navigate to that directory using the terminal.

  • Execute the git commands to clone the repository using the provided link from the code tab.

Git link

https://github.com/shikshalokam/ml-survey-service.git

command to clone

git clone https://github.com/shikshalokam/ml-survey-service.git

Create .env file

Create a file named .env and copy the environment-specific data corresponding to that service into the .env file.

ML Survey Service Config

APPLICATION_PORT = 3000                                                         // Application port number
APPLICATION_ENV = 'development'                                                 // Application running enviornment

# Setting for custom request timeout for reports
MONGODB_URL = mongodb://localhost:27017/sl-assessment                           // Mongodb connection url
USER_SERVICE_URL = "http://user-service:3000"                                   // Base url of the sunbird enviornment
INTERNAL_ACCESS_TOKEN = "Internal access token to access reports"               // Internal access token for accessing Admin specific APIs

# Kafka Configuration
KAFKA_COMMUNICATIONS_ON_OFF = "ON/OFF"                                          // Kafka enable or disable communication flag
KAFKA_URL = "100.0.0.1:9092"                                                    // IP address of kafka server with port without HTTP
SUBMISSION_RATING_QUEUE_TOPIC = "dev.sl.submission.rating.raw"                                // Kafka topic name for pushing submissions for which rating has to be done.
COMPLETED_SURVEY_SUBMISSION_TOPIC = "dev.sl.survey.raw"                            // Kafka topic name for completed survey submission
INCOMPLETE_SURVEY_SUBMISSION_TOPIC = "dev.sl.incomplete.survey.raw"                           // Kafka topic name for incomplete survey submission
KAFKA_GROUP_ID = "survey"                                                       // Kafka consumer group for ML Survey Service
IMPROVEMENT_PROJECT_SUBMISSION_TOPIC = "dev.sl.improvement.project.submission"                                       // Kafka topic name for pushing project submission related data
OBSERVATION_SUBMISSION_TOPIC = "dev.sl.observation.raw"                         // Kafka topic name for pushing observation submission


# ML Core Service
ML_CORE_SERVICE_URL = "http://ml-core-service:3000"                             // ML Core Service URL

# IMPROVEMENT PROJECT SERVICE
ML_PROJECT_SERVICE_URL = "http://ml-project-service:3000"                       // Project Service URL

KEYCLOAK_PUBLIC_KEY_PATH = "keycloak-public-keys"                               // Keycloak public keys path

DISABLE_LEARNER_SERVICE_ON_OFF = "ON"                                          // Disable learner service check

FORM_SERVICE_URL = "http://player:3000"                                         // Base url for form search

Install Dependencies

To install dependencies from a package.json file in Visual Studio Code, you can use the integrated terminal. Here are the steps:

  • Open the integrated terminal by going to View > Terminal or using the shortcut Ctrl+` (backtick).

  • In the terminal, navigate to the directory where the package.json file is located.

  • Run the command npm install or yarn install, depending on your preferred package manager.

  • The package manager will read the package.json file and install all the dependencies specified in it.

  • Wait for the installation process to complete. You should see progress indicators or a success message for each installed dependency.

  • Once the installation is finished, the dependencies listed in the package.json file will be installed in a node_modules directory in your project.

Setting the keycloak

  • Create a folder on service directory named: keycloak-public-keys

  • Inside that folder create a file GRxxx....................xxxxx60fA

for keycloak file please contact Backend Team

Setup Database

Before proceeding with these steps, ensure that you have MongoDB installed on your computer. For a graphical user interface (GUI) for MongoDB, you can choose to install Robo 3T.

  • Obtain the latest database dump from the backend team.

  • Restore the database in your local environment using the following command:

    For Windows/Linux: mongorestore <name you want to give the db> <directory or file to restore>

    For macOS: mongorestore -d <name you want to give the db> <directory or file to restore>

Note: Add <name you want to give the db> to mongoDB url in .env file.

GitHub - shikshalokam/ml-survey-serviceGitHub
Logo