LogoLogo
  • LEARN
    • Overview
    • Capabilities
      • Rich and Diverse Assets
      • Organised Collections
      • Asset Lifecycle Management
      • Powerful Discovery
      • Phygital Discovery
      • Observability
    • Technical Architecture
    • Product & Developer Guide
      • Content Service
        • Content APIs
          • Features
          • Architecture
          • Code Structure
          • Schemas
          • APIs
          • Jobs
            • Content publish
            • Asset enrichment
            • Audit event generator
            • Video stream generator
          • FAQs
            • Upload Content
        • Media APIs
          • Features
          • Architecture
          • Schemas
          • APIs
          • Jobs
            • Asset enrichment
            • Audit event generator
          • FAQs
        • Channel APIs
          • Architecture
          • Schema
          • APIs
          • Configuration
          • FAQs
        • License APIs
          • Architecture
          • Schema
          • APIs
          • Configuration
          • FAQs
        • Collection APIs
          • Features
          • Architecture
          • Schemas
          • APIs
          • Jobs
            • Content publish
            • Post publish processor
            • Audit event generator
          • FAQs
      • Search Service
        • Architecture
        • Code Structure
          • Configuration
        • APIs
        • Jobs
          • Search indexer
          • Audit history indexer
        • FAQs
      • Taxonomy Service (Taxonomy & Tagging)
        • Framework APIs
          • Architecture
          • Code Structure
            • Configuration
          • Schemas
          • APIs
          • Jobs
            • Audit event generator
          • FAQs
            • Create Framework
            • Add Content to Framework
        • Object Category APIs
          • Architecture
          • Code Structure
          • Schemas
          • APIs
          • Jobs
            • Audit event generator
          • Configuration
          • FAQs
      • DIAL Service
        • Architecture
        • APIs
        • Jobs
        • Configuration
        • FAQs
          • Link DIAL Code to a Book
      • Player
        • V1
          • Features
          • Architecture
          • Players
            • ECML Player - v1
              • Quiz
              • Create Content
            • Video Player v1
            • Epub Player - v1
            • PDF Player - v1
            • HTML-h5p Player - v1
          • Content import and preview folder creation
          • FAQs
        • V2
          • PDF Player
            • Features
            • Architecture
            • Configuration
            • FAQ's
          • Epub Player
            • Features
            • Architecture
            • Configuration
            • FAQ's
          • Video Player
            • Features
            • Architecture
            • Configuration
            • FAQ's
        • Telemetry Events
          • Offline Telemetry
          • Generate API keys
      • Editors
        • Architecture
        • Interactive Editor
          • Features
            • Content Editor
            • Adding Question Set
            • Concept Selector
            • Add Image
            • Add Video
            • Adding Math Function
            • Limited Publishing and Sharing
        • File Upload Editor
          • Features
          • FAQ's
            • Content Upload
        • Collection Editor - V1
        • Collection Editor - V2
          • Features
          • Architecture
          • APIs
          • FAQ's
        • How to contribute as a JS plugin
          • How do I think about a plugin?
          • Interactive Editor Plugin Guide
          • Using SDK to create and test the plugin
      • Other Knowlg Jobs
        • Configuration
        • FAQs
      • Other
        • Data Migration
        • Schema strucure
    • Product Roadmap
  • ENGAGE
    • Discuss
    • Contribute to SB Knowlg
  • USE
    • Overview
    • System requirements
    • Installation guide
      • Players
        • V1
          • How to setup
        • V2
          • Epub Player
          • Video Player
          • Pdf Player
      • Editors
        • Interactive Editor
        • File Upload Editor
        • Collection Editor - V1
        • Collection Editor - V2
        • Plugins
      • Services
        • Content Service
          • Configuration
        • Search Service
        • Taxonomy Service (Taxonomy & Tagging)
        • DIAL Service
        • Knowlg Jobs
    • Deployment
    • Release notes
      • Release - 6.2.0 (Ongoing)
      • Release - 6.1.0 (latest)
      • Release - 6.0.0
      • Release - 5.7.0
      • Release - 5.6.0
      • Release - 5.5.0
      • Release - 5.4.0
      • Release - 5.3.0
      • Release - 5.2.0
      • Release - 5.1.0
      • Release - 5.0.0
      • Release - 4.10.0
      • Release - 4.8.0
    • Breaking Changes
    • Deprecations
      • Release-5.2.0
      • Release-5.1.0
    • Release
    • USE
      • Infra Requirements
    • Additional Reading
      • Content Service Environment Variables
      • Import External Content
  • Archived
    • Powerful Discovery
      • Usecase
      • Sample data
Powered by GitBook
On this page
  • Intended Audience
  • Overview
  • Prerequisites
  • Taskflow
  • Presteps to Follow to Before Linking a DIAL Code to a Book
  • Concept Covered

Was this helpful?

Edit on GitHub
  1. LEARN
  2. Product & Developer Guide
  3. DIAL Service
  4. FAQs

Link DIAL Code to a Book

PreviousFAQsNextPlayer

Last updated 2 years ago

Was this helpful?

An educational institution XYZ, with over three thousand students, is spread across three locations. XYZ institute has decided to use Sunbird for its digital learning solution to provide more scalable and effective education to its students.

An energized book contains a QR code or a QR Code with a DIAL code in it. The students can scan the QR code using the Sunbird mobile app (Android 1.7.0 onwards) on their smartphone or other electronic devices like a laptop (using chrome browser) or a tablet. Scanning QR code provides a user the web links of related reading content. It helps the students to access the more content easily and understand the topics better.

Intended Audience

A user with book creation access

Overview

A book creator can tag various pages and topics with DIAL code as required. Using the DIAL codes, a book’s content can be converted into digital content. It provides the students easy access to content by transforming physical content material into digital content.

Prerequisites

  1. API Key to access Sunbird APIs. To create an API key refer

  2. Software that can make API calls like curl or

  3. The root organization and sub-organizations created and their organsationId and root organization’s channel readily available

  4. The user account created in the root-organization and userId readily available

  5. The created users are mapped to the organization and given appropriate rights and permisssions

  6. Access to QR code and DIAL code. By default, any book creator gets access to link and unlink DIAL code

  7. The DIAL code attribute must be configured in the Create Content API

Taskflow

Presteps to Follow to Before Linking a DIAL Code to a Book

Ensure to complete the following before linking DIAL code to a book:

a. Create Publisher

This API is associated with creating a publisher

  • The dialcode/v1/publisher/create endpoint executes the “Create Publisher” request based on parameters provided as metadata in the request body

  • Required fields cannot be left null or empty

While providing values for the parameters in the request body of the API, it is essential to mention values as mentioned in the following table:

HEADER PARAMETER
SAMPLE VALUE
DESCRIPTION
IS MANDATORY

X-Channel-Id

in.ekstep

It is a unique Id to identify the root organization to which the publisher has to be created

Yes

Content-Type

Application/json Multipart/form-data Application/x-www-form-urlencoded

The media type of the resource

Yes

Authorization

NA

All User APIs require authorization. Raise a request to the administrator for the authorization key. Mention the received key here

Yes

Request Body for create publisher API

    {
      "request": {
          "publisher": {
              "identifier": "skpublisher",
              "name": "SK Publisher"
          }
      }
  }

Response Body of Create Publisher API

    {
    "id": "api.publisher.create",
    "ver": "1.0",
    "ts": "2018-10-04T07:12:47.729Z",
    "params": {
        "resmsgid": "e5b63e10-c7a4-11e8-bbd8-e58670bcc2b7",
        "msgid": "e51fca70-c7a4-11e8-ac7b-7b8f28c2d9c1",
        "status": "successful",
        "err": null,
        "errmsg": null
    },
    "responseCode": "OK",
    "result": {
        "identifier": "skpublisher"
    }
  }

b. Generate QR Code

This API is associated with generating DIAL code.

  • The /dialcode/v1/generate endpoint executes the “Generate DIAL code” request based on parameters provided as metadata in the request body to be replaced by appropriate Id

  • Required fields cannot be left null or empty

While providing values for the parameters in the request body of the API, it is essential to mention values as mentioned in the following table:

HEADER PARAMETER
SAMPLE VALUE
DESCRIPTION
IS MANDATORY

X-Channel-Id

in.ekstep

It is a unique Id to identify the root organization to which the dialcodes have to be generated

Yes

Content-Type

Application/json Multipart/form-data Application/x-www-form-urlencoded

The media type of the resource

Yes

Authorization

NA

All User APIs require authorization. Raise a request to the administrator for the authorization key. Mention the received key here

Yes

Request Body of Generate DIAL Code API ** :

    {
      "request": {
          "dialcodes": {
              "count": 2,
              "publisher": "skpublisher"
          }
      }
  }

Response Body of Generate DIAL Code API

    {
    "id": "api.dialcode.generate",
    "ver": "2.0",
    "ts": "2017-10-04T10:54:28.916",
    "params": {
        "resmsgid": "dcd64f40-c7c3-11e8-9bfa-fd2e5637008b",
        "msgid": "dc3af9a0-c6c3-11e8-9fb2-b710543e8512",
        "status": "successful",
        "err": null,
        "errmsg": null
    },
    "responseCode": "OK",
    "result": {
        "dialcodes": [
            "QP79LL",
            "WMHNYJ",
        ],
        "count": 2,
        "batchcode": "skpublisher.20181004T106427",
        "publisher": "skpublisher"
    }
  }

Link DIAL code to content using DIAL API

This API is associated with linking DIAL code to the content.

  • The /dialcode/v1/content/link endpoint executes the “Link DIAL code” request based on parameters provided as metadata in the request body.

  • Required fields cannot be left null or empty.

  • As it is an updated request, whatever the list of dial codes API gets in the request body against any particular content Id or list of content Ids; the API updates the same as content metadata. If API does not get any value in dial code list, it delinks the content from all the existing dial-code by removing dial codes from content metadata.

While providing values for the parameters in the request body of the API, it is essential to mention values as mentioned in the following table:

HEADER PARAMETER
SAMPLE VALUE
DESCRIPTION
IS MANDATORY

X-Channel-Id

in.ekstep

It is a unique Id to identify the root organization to which the user belongs

Yes

Content-Type

Application/json Multipart/form-data Application/x-www-form-urlencoded

The media type of the resource

Yes

Authorization

NA

All User APIs require authorization. Raise a request to the administrator for the authorization key. Mention the received key here

Yes

Request Body Parameter

REQUEST BODY PARAMETER
SAMPLE VALUE
DESCRIPTION
IS MANDATORY

content.identifier

“do_3010101010”

List of content identifiers that are linked with dial codes

Yes

content.dialcode

“A6GHY”

List of dial codes to which identifiers will be linked

Yes

Link DIAL code API End point: POST: /dialcode/v1/content/link

Request Body for linking DIAL code API

    {
    "request": {
      "content":
        {
          "identifier": "do_3010101011",
          "dialcode": "3R3DSS"
        }
    }
  }

Response Body for linking DIAL code API

{ “id”: “sunbird.content.dialcode.link”, “ver”: “3.0”, “ts”: “2018-09-18T09:15:01ZZ” “, “params”: { “resmsgid”: “287298eb-ac54-4c9a-bf98-c0b1b1d4732e”, “msgid”: “null”, “err”: “null”, “status”: “successful”, “errmsg”: “null” }, “responseCode”: “OK”, “result”: { “node_id”: “do_3010101011”, “versionKey”: “1542625257776” } }

Consuming DIAL Code linked content

You can consume the content linked with DIAL code using mobile or website

To consume the content using Sunbird mobile app:

Scan the QR code using the Sunbird app installed on your mobile

To consume the content using Sunbird portal:

Enter the DIAL code (the alphanumeric number) in the Explore Content Using DIAL Code field and click on the Search icon

Concept Covered

QR code: It is a two-dimensional machine-readable barcode that is readable by smartphones and some other electronic devices. It consists of an array of black and white squares, which essentially encode web link as graphics. Users can scan QR code using a smartphone and some other electronic devices.

Discovery of digital content from physical textbooks is made possible by printing a QR code along with DIAL code on books and linking digital teaching and learning content to the QR codes placed in textbooks at a chapter and topic level.

DIAL Code: A DIAL code is the 6 digits alphanumeric code embedded with QR code.

Energized book: A book that is embedded with QR codes is called Energized book. The energized book serves as the anchor to the reader enabling them to have easy access to digital learning and training material.

Related Topic

: As a book creator or author, you can create content and associate the QR code and DIAL code to the content. This can be done via API and Sunbird User interface as well. This document describes how to link DIAL code to a book using APIs.

a.

b.

The (Digital Infrastructure for Augmented Learning) API resources are used for energizing the textbooks.

For more information, refer to to QR code.

Go to

How to generate a API key
POSTMAN
Content linking to QR code
Create Publisher
Generate QR code
Link DIAL Code
Content linking
https://play.diksha.gov.in/dialpage/index.html
Update DIAL code
Update publisher
List DIAL Code