def post(self):
     from helpers import log
     self.load_user()
     self.person.add_client_id(self.client_id)
     if self.person_type=="student" and len(self.person.client_ids)==1:
         self.person.latest_logout_timestamp = None
     self.person.put()
     
     log("=> CHANNEL CONNECTED: {0} ({1})".format(str(self.client_id),len(self.person.client_ids)))
             
     if self.person_type=="student" and len(self.person.client_ids)==1:
         from client_id_utils import lesson_code_for_client_id
         from model import Lesson
         from updates import send_update_log_in
         lesson_code = lesson_code_for_client_id(self.client_id)
         lesson = Lesson.get_by_key_name(lesson_code)
         send_update_log_in(student=self.person, teacher=lesson.teacher)
    def load_user(self):
        self.client_id = self.request.get('from', None)
        import client_id_utils
        self.person_type = client_id_utils.person_type_for_client_id(self.client_id)
        assert self.person_type in ("student", "teacher")

        self.person = None
        person_key = client_id_utils.person_key_for_client_id(self.client_id)
        if self.person_type == "teacher":
            from model import Teacher
            self.person = Teacher.get_by_key_name(person_key)
        else:
            from model import Student
            lesson_code = client_id_utils.lesson_code_for_client_id(self.client_id)
            student_key = "::".join((person_key, lesson_code))
            self.person = Student.get_by_key_name(student_key)
            
        if self.person is None:
            from helpers import log
            log("***** ERROR: Person not found for client_id {0}".format(self.client_id))