lightbulb/services/ags

Types

pub type AgsClaim {
  AgsClaim(
    lineitem: Option(String),
    lineitems: Option(String),
    scope: List(String),
    errors: Dict(String, Dynamic),
    validation_context: Option(Dynamic),
  )
}

Constructors

  • AgsClaim(
      lineitem: Option(String),
      lineitems: Option(String),
      scope: List(String),
      errors: Dict(String, Dynamic),
      validation_context: Option(Dynamic),
    )

Values

pub fn create_line_item(
  http_provider: HttpProvider,
  line_items_service_url: String,
  resource_id: String,
  score_maximum: Float,
  label: String,
  access_token: AccessToken,
) -> Result(LineItem, String)

Creates a new line item.

pub fn fetch_or_create_line_item(
  http_provider: HttpProvider,
  line_items_service_url: String,
  resource_id: String,
  maximum_score_provider: fn() -> Float,
  label: String,
  access_token: AccessToken,
) -> Result(LineItem, String)

Fetches an existing line item or creates a new one if it doesn’t exist.

pub fn get_line_items_service_url(
  lti_launch_claims: Dict(String, Dynamic),
) -> Result(String, String)
pub fn get_lti_ags_claim(
  claims: Dict(String, Dynamic),
) -> Result(AgsClaim, String)
pub fn grade_passback_available(
  lti_launch_claims: Dict(String, Dynamic),
) -> Bool

Given a set of LTI claims, returns True if the grade passback feature is available for the given LTI launch.

pub const lineitem_scope_url: String
pub const lti_ags_claim_url: String
pub fn post_score(
  http_provider: HttpProvider,
  score: Score,
  line_item: LineItem,
  access_token: AccessToken,
) -> Result(String, String)

Posts a score to the AGS service for a given line item.

pub const result_readonly_scope_url: String
pub const scores_scope_url: String
Search Document