messenger_server.user_management module

The following classes are oriented toward working with users as they are signed-in (i.e. have established a socket connection with the server and authenticated themselves).

class messenger_server.user_management.OnlineUser(login, key, socket)

Class represents a user at the time of being signed-in.

Parameters:
  • login (str) – User’s login
  • key (int) – User’s identification key
  • socket (socket.socket) – Socket established between the user and the server
class messenger_server.user_management.UserManager

This class keeps track of users currently logged in.

classmethod get_online_user_by_key(key)

Get online user with matching identification key.

Parameters:key (int) – Identification key
Returns:Online user whose key has been matched
Return type:messenger_server.user_management.OnlineUser or None
classmethod get_online_user_by_login(login)

Get online user with matching login.

Parameters:login (str) – User’s login
Returns:Online user whose login has been matched
Return type:messenger_server.user_management.OnlineUser or None
classmethod sign_in(login, socket)

Generate unique identification key and add new online user.

Parameters:
  • login (str) – User’s login
  • socket (socket.socket) – Socket established between the user and the server
Returns:

Online user with newly generated key

Return type:

messenger_server.user_management.OnlineUser