def get_assessment_offered_smart_bank_session(self, bank_id=None):
if bank_id is None:<EOL><INDENT>raise NullArgument<EOL><DEDENT>raise Unimplemented()<EOL>
Gets the ``OsidSession`` associated with the assessment offered smart banking service for the given bank.

        arg:    bank_id (osid.id.Id): the ``Id`` of the bank
        return: (osid.assessment.AssessmentOfferedSmartBankSession) - an
                ``AssessmentOfferedSmartBankSession``
        raise:  NotFound - ``bank_id`` not found
        raise:  NullArgument - ``bank_id`` is ``null``
        raise:  OperationFailed - unable to complete request
        raise:  Unimplemented -
                ``supports_assessment_offered_smart_bank()`` is
                ``false``
        *compliance: optional -- This method must be implemented if
        ``supports_assessment_offered_smart_bank()`` and
        ``supports_visibe_federation()`` is ``true``.*