Previous topic

pylti.common package

This Page

pylti.flask package

PyLTI decorator implementation for flask framework

class pylti.flask.LTI(lti_args, lti_kwargs)

LTI Object represents abstraction of current LTI session. It provides callback methods and methods that allow developer to inspect LTI basic-launch-request.

This object is instantiated by @lti wrapper.

close_session()

Invalidates session

is_role(role)

Verify if user is in role

Param:role: role to verify against
Returns:if user is in role
Exception:LTIException if role is unknown
key

OAuth Consumer Key :return: key

lis_result_sourcedid

lis_result_sourcedid to use for XML callback

Returns:LTI lis_result_sourcedid
message_identifier_id()

Message identifier to use for XML callback

Returns:non-empty string
name

Name returns user’s name or user’s email or user_id :return: best guess of name to use to greet user

post_grade(grade)

Post grade to LTI consumer using XML

Param:grade: 0 <= grade <= 1
Returns:True is post successful and grade valid
Exception:LTIPostMessageException if call failed
post_grade2(grade, user=None, comment='')

Post grade to LTI consumer using REST/JSON URL munging will is related to: https://openedx.atlassian.net/browse/PLAT-281

Param:grade: 0 <= grade <= 1
Returns:True is post successful and grade valid
Exception:LTIPostMessageException if call failed
response_url

Returns remapped lis_outcome_service_url uses PYLTI_URL_FIX map to support edX dev-stack

Returns:remapped lis_outcome_service_url
role

LTI roles

Returns:roles
user_id

Returns user_id as provided by LTI

Returns:user_id
verify()

Verify if LTI request is valid, validation depends on @lti wrapper arguments

Raises:LTIException
verify_request()

Verify LTI request

Raises:LTIException is request validation failed
pylti.flask.lti(app=None, request=None, error=None, role='any', *lti_args_out, **lti_kwargs_out)

LTI decorator

Param:app - Flask App object (required)
Param:error - Callback if LTI throws exception (required)
Param:request - Request type (default: any)
Param:roles - LTI Role (default: any)
Returns:wrapper