User Groups
Group procedures are used to create a group of users that can interact inside a course or even outside of a course. An example of this might be Lab1 and Lab2 user groups setup by the Instructor to allow different groups of students to work together on a project.
There are two types of user groups. The first group is created automatically by the system when specific users are added to a message using create_message(). The second group type is created manually using create_user_group() and specific messages are later added to the group. The second type allows for assigning visibility options when using the create_user_group() function. Visibility levels determine if a group is included in the list when get_my_usergroups() is called. User groups have 4 Visibility levels:
- Global Visibility - All users can see the group, even users not in a course
- Course Visibility - All users in the course can see the group.
- Group Visibility - Only members of the specific group can see the group.
- Message Visibility - Only groups created using create_message() can have this visibility level. User Groups with this visibility do not show up at all in get_my_usergroups().
It is worth noting that security restricts users so that user groups with global visibility can only be created by Administrators and user groups with course visibility can only be created by TAs and above.