Source code for ussd.screens.quit_screen

from ussd.core import UssdHandlerAbstract, UssdResponse
from ussd.screens.serializers import UssdContentBaseSerializer
from ussd import defaults as ussd_airflow_variables

[docs]class QuitScreen(UssdHandlerAbstract): """ This is the last screen to be shown in a ussd session. Its the easiest screen to create. It requires only text Example of quit screen: .. literalinclude:: .././ussd/tests/sample_screen_definition/valid_quit_screen_conf.yml """ screen_type = "quit_screen" serializer = UssdContentBaseSerializer def handle(self): # set session has expired self.ussd_request.session[ussd_airflow_variables.expiry] = True if self.initial_screen.get('ussd_report_session'): # schedule a task to report session self.fire_ussd_report_session_task(self.initial_screen, self.ussd_request.session_id, support_countdown=False) return UssdResponse(self.get_text(), status=False)