Contact Group
from mstrio.distribution_services import (ContactGroup, ContactGroupMember, ContactGroupMemberType)
from mstrio.users_and_groups import User
from mstrio.connection import get_connection
from production.mstrio.distribution_services.contact.contact import Contact
from production.mstrio.distribution_services.contact_group.contact_group import list_contact_groups
PROJECT_NAME = '<Project_name>' # Insert project name here
MEMBER_NAME = '<Username>' # here insert member name
MEMBER_ID = '<Member_ID>' # Insert member ID
USER_NAME = '<Username>' # name of user to link to the contact group
CONTACT_GROUP_NAME = '<Contact_group_name>' # Name of contact group
CONTACT_GROUP_DESCRIPTION = '<Contact_group_desc>' # Description of newly created contact group
CONTACT_GROUP_ID = '<Contact_group_ID>' # Insert your contact group ID here
CONTACT_GROUP_NEW_NAME = '<Contact_group_name>' # Insert new name of contact group
CONTACT_GROUP_NEW_DESCRIPTION = '<Contact_group_desc>' # Insert new description of contact group
OTHER_USER_NAME = '<Username>' # Insert new user for contact group
CONTACT_NAME = '<Contact_name>' # Insert contact name here
OTHER_CONTACT_GROUP_NAME = '<Contact_group_name>' # Insert name of another contact group here
conn = get_connection(workstationData, project_name=PROJECT_NAME)
member1 = ContactGroupMember(
name=MEMBER_NAME,
type=ContactGroupMemberType.CONTACT, # it can be also ContactGroupMemberType.CONTACT_GROUP
id=MEMBER_ID,
enabled=True,
)
new_cg = ContactGroup.create(
connection=conn,
name=CONTACT_GROUP_NAME,
linked_user=User(conn, username=USER_NAME),
members=[member1],
description=CONTACT_GROUP_DESCRIPTION,
enabled=True,
)
# list all contact groups
contact_groups = list_contact_groups(conn)
# get contact group by ID. Contact group can be also found by its name
cg = ContactGroup(conn, id=CONTACT_GROUP_ID)
cg_by_name = ContactGroup(conn, name=CONTACT_GROUP_NAME)
# get properties of contact group
cg_name = cg.name
cg_description = cg.description
cg_lined_user = cg.linked_user
cg_members = cg.members
cg_enabled = cg.enabled
# alter contact group
cg.alter(
name=CONTACT_GROUP_NEW_NAME,
description=CONTACT_GROUP_NEW_DESCRIPTION,
linked_user=User(conn, username=OTHER_USER_NAME),
enabled=False,
)
# add members to contact group - it can be `ContactGroupMember`, `Contact`
# or `ContactGroup`
contact = Contact(conn, name=CONTACT_NAME)
cg.add_members(members=[contact]) # add contact
cg.add_members(members=[new_cg]) # add contact group
# remove members from contact group - it can be `ContactGroupMember`, `Contact`
# or `ContactGroup`
contact_group = ContactGroup(conn, name=OTHER_CONTACT_GROUP_NAME)
cg.remove_members(members=[contact]) # remove contact
cg.remove_members(members=[contact_group]) # remove contact group
# Delete contact group. When argument `force` is set to `False` (default value),
# then deletion must be confirmed by selecting appropriate prompt value.
cg.delete(force=True)