Collection Certificate Pre-Processor

'collection-cert-pre-processor' job is used to perform the validation of certificate issuance criteria.

Configuration variables:

VariableDefault ValuePurpose

kafka.input.topic

{{env}}.issue.certificate.request

Kafka topic from which messages/events are read to be processed.

kafka.output.failed.topic

{{env}}.issue.certificate.failed

Kafka topic to which message is written when an exception occurs while processing an event.

kafka.output.topic

{{env}}.generate.certificate.request

Kafka topic used to trigger certificate generator job

kafka.groupId

{{env}}-collection-cert-pre-processor-group

Kafka input topic group Id

lms-cassandra.keyspace

sunbird_courses

Cassandra keyspace name

lms-cassandra.course_batch.table

course_batch

Cassandra table used to store batch details of a collection. Batch status, start date , end date , batch enrolment end date, enrolment type (open/invite-only), certificate templates etc are stored in this table.

lms-cassandra.user_enrolments.table

user_enrolments

Cassandra table used to store user enrolment data in a collection of a particular batch. This also holds the consumption progress, enrolment status and issued certificate details

lms-cassandra.assessment_aggregator.table

assessment_aggregator

Cassandra table used to store attempt wise data for each assessment in a collection of a batch by a user. Answer for each question in the assessment is also recorded.

lms-cassandra.user_activity_agg.table

user_activity_agg

Cassandra table used to store user consumption aggregate details of a collection in a batch. Aggregates like the consumption completed content count

redis.database.contentCache.id

5

Content cache is used to get assessment details from redis to compute the score details. This content cache is gettig updated by using content-cache-updater flink job

redis.database.collectionCache.id

0

Collection cache is used to get the course details. This collection cache is gettig updated by using content-service.

cert_domain_url

user_read_api

/private/user/v1/read

API route for fetching user profile details

content_read_api

/content/v4/read

API route for fetching content metadata

service.content.basePath

Content service URL

service.learner.basePath

User-Org service URL

assessment.metrics.supported.contenttype

["SelfAssess"]

variable used to identify assessment type of contents in a Course

enable.suppress.exception

true

Variable used to suppress exception if the content metadata is not available in Redis cache

cloud_storage_base_url

variable to identify the cloud storage base url. Used to replace the base url with variable mentioned in cloud_store_base_path_placeholder while storing to databases

cloud_store_base_path_placeholder

CLOUD_BASE_PATH

relative variable used to replace cloud storage base URLs and stored in database

content_cloud_storage_container

cloud storage container name

cloud_storage_cname_url

variable used to replace 'cloud_store_base_path_placeholder' value with cname or cloud storage url while reading data from database.

Sample event:

{
  "eid": "BE_JOB_REQUEST",
  "ets": 1683609537232,
  "mid": "LP.1683609537232.f04270f4-7d8b-4fc6-9315-dc5c495fb059",
  "actor": {
    "id": "Course Certificate Generator",
    "type": "System"
  },
  "context": {
    "pdata": {
      "ver": "1.0",
      "id": "org.sunbird.platform"
    }
  },
  "object": {
    "id": "013625297374085120185_do_2136252863013273601715",
    "type": "CourseCertificateGeneration"json
  },
  "edata": {
    "userIds": [
      "95c1f00b-c033-4ea2-acf6-e368e2a56bdb"
    ],
    "action": "issue-certificate",
    "iteration": 1,
    "trigger": "auto-issue",
    "batchId": "013625297374085120185",
    "reIssue": false,
    "courseId": "do_2136252863013273601715"
  }
}

Source code:

Last updated