You are required to build the server and front end for a chat system.
The chat system will allow users to communicate with each other in real-time within
different groups and channels. Some users will have admin permission to add users to
channels and groups, whilst a super admin has access to the entire site. The solution must
be implemented using Node.js, Angular, and sockets.
Terminology
Group
A collection of users that have been given permission from a group admin or super
admin to be able to be a member of the group.
Multiple groups can exist.
Each user can exist in multiple groups.
Channel
Each group will have access to several rooms/channels for the purpose of chatting.
The super/group/group assis admin can create the rooms and give/remove permission
for existing group member to access them.
Architecture
A global list of groups is required.
A global list of rooms is required for each group.
A list of which users are in each group and rooms.
Users
• UserName
• Email
• ID
• Role
The system will have users which can have the following additional roles:
• Super Admin
• Group Admin
• Group Assis (Assistant)
Super Admin
• A Super Admin can create users with Group Admin role.
• A Super Admin can also remove all users.
• A Super Admin can also upgrade another user to Super Admin role.
• A Super Admin can also do whatever a group admin can.
Group Admin
• A Group Admin can create groups.
• A Group Admin also can create channels (subgroups) within groups.
• A Group Admin can create and or invite users to a channel (if the user has already
been created, they will simply be added to the channel).
• A Group Admin can remove groups, channels, and users from channels.
• A Group Admin can also allow a user to become a Group Assis of the group.
• A Group Admin other than a Super Admin cannot create a user with Group Admin role.
Group Assis
• A Group Assis of a group can add or remove users in the group from channels
within the group.
• A Group Assis of a group can also create channels within the group.
• Group Assis cannot do other operations of the Group Admin role.

You are required to build the server and front end for a chat system.
The chat system will allow users to communicate with each other in real-time within
different groups and channels. Some users will have admin permission to add users to
channels and groups, whilst a super admin has access to the entire site. The solution must
be implemented using Node.js, Angular, and sockets.
Terminology
Group
A collection of users that have been given permission from a group admin or super
admin to be able to be a member of the group.
Multiple groups can exist.
Each user can exist in multiple groups.
Channel
Each group will have access to several rooms/channels for the purpose of chatting.
The super/group/group assis admin can create the rooms and give/remove permission
for existing group member to access them.
Architecture
A global list of groups is required.
A global list of rooms is required for each group.
A list of which users are in each group and rooms.
Users
• UserName
• Email
• ID
• Role
The system will have users which can have the following additional roles:
• Super Admin
• Group Admin
• Group Assis (Assistant)
Super Admin
• A Super Admin can create users with Group Admin role.
• A Super Admin can also remove all users.
• A Super Admin can also upgrade another user to Super Admin role.
• A Super Admin can also do whatever a group admin can.
Group Admin
• A Group Admin can create groups.
• A Group Admin also can create channels (subgroups) within groups.
• A Group Admin can create and or invite users to a channel (if the user has already
been created, they will simply be added to the channel).
• A Group Admin can remove groups, channels, and users from channels.
• A Group Admin can also allow a user to become a Group Assis of the group.
• A Group Admin other than a Super Admin cannot create a user with Group Admin role.
Group Assis
• A Group Assis of a group can add or remove users in the group from channels
within the group.
• A Group Assis of a group can also create channels within the group.
• Group Assis cannot do other operations of the Group Admin role.

Found something interesting ?

• On-time delivery guarantee
• PhD-level professional writers
• Free Plagiarism Report

• 100% money-back guarantee
• Absolute Privacy & Confidentiality
• High Quality custom-written papers

Related Model Questions

Feel free to peruse our college and university model questions. If any our our assignment tasks interests you, click to place your order. Every paper is written by our professional essay writers from scratch to avoid plagiarism. We guarantee highest quality of work besides delivering your paper on time.

Grab your Discount!

25% Coupon Code: SAVE25
get 25% !!