def user_Login_Method(coremail_user_infomation): """ :用户单点登陆 :param coremail_user_infomation: :return: """ user_login_attr = "user_at_domain={coremail_user}@{domain_name}".format( coremail_user=coremail_user_infomation["coremail_user"], domain_name=coremail_user_infomation["domain_name"]) api_return_result = split_request_url.api_interface( "userLogin", user_login_attr) if api_return_result[0] == "0": fid = "\"fid\"" common_user = "******" + api_return_result[ 1] print("普通用户单点登陆") print(common_user) webbrowser.open(common_user, autoraise=True) # 自动打开浏览器并输入url登陆 else: print("\033[31;1mWarn:\033[0m 单点失败") print(api_return_result) # 检查用户的session 并返回用户信息 coremail_user_session_info = "ses_id=%s" % api_return_result[1] api_return_user_session = split_request_url.api_interface( "sesTimeOut", coremail_user_session_info) if api_return_user_session[0] == "0": print("Info: 读取session id返回用户信息: " + api_return_user_session[1]) else: print("\033[31;1mWarn:\033[0m 用户的session出错:") print(api_return_user_session)
def get_createUser_Method(coremail_user_infomation): """ :创建用户 :param coremail_user_infomation: 用户信息字典 :return: """ create_user_attr = "provider_id={provider_id}&org_id={org_id}&user_id={create_user_id}&" \ "attrs=domain_name%3Dleejay.vip%26user_status%3D{user_status}%26cos_id%3D{cos_id}" \ "%26quota_delta%3D0%26true_name%3D{true_name}%26password%3D{password}%26org_unit_id%3D{org_unit_id}".format( provider_id=coremail_user_infomation["provider_id"], org_id=coremail_user_infomation["org_id"], create_user_id=coremail_user_infomation["coremail_user"], org_unit_id=coremail_user_infomation["org_unit_id"], password=coremail_user_infomation["password"], user_status=coremail_user_infomation["user_status"], cos_id=coremail_user_infomation["cos_id"], quota_delta=coremail_user_infomation["quota_delta"], true_name=coremail_user_infomation["coremail_user"]) api_return_result = split_request_url.api_interface( "createUser", create_user_attr) if api_return_result[0] == "0": print("Info: 创建用户 " + coremail_user_infomation["coremail_user"] + " 成功") else: print("\033[31;1mWarn:\033[0m 创建用户 " + coremail_user_infomation["coremail_user"] + " 失败:") print(api_return_result)
def getAttrs_Method(coremail_user_infomation): """ :获取用户信息 :mbox_msgcnt 所有文件夹下的邮件总数 :mbox_msgsize 邮件大小 :mbox_newmsgcnt 所有文件夹下的未读邮件数 :box_newmsgsize 未读邮件大小 :mbox.folder.1.newmsgcnt 收件箱下的未读邮件数,其中数字“1”为收件箱的fid,替换为其他fid即可查询对应文件夹下的未读邮件数 :param coremail_user_infomation: 用户信息字典 :return: """ user_attrs = 'user_at_domain={user_id}@{domain_name}&attrs=true_name%26domain_name%26' \ 'path%26second_auth_type%26password%26password_expiry_time%26mbox_id%26nick_name%26user_id%26second_auth_type%26' \ 'mbox_msgcnt%26mbox_msgsize%26mbox_newmsgcnt%26mbox_newmsgsize%26mbox.folder.1.newmsgcnt'.format( user_id=coremail_user_infomation["coremail_user"], domain_name=coremail_user_infomation["domain_name"]) api_return_result = list( split_request_url.api_interface("getAttrs", user_attrs)) get_user_result_list = re.split("&", api_return_result[1]) if api_return_result[0] == "0": for personal_user_attr_value in get_user_result_list: print(personal_user_attr_value) else: print("\033[31;1mWarn:\033[0m 用户 " + coremail_user_infomation["coremail_user"] + " 不存在:") print(api_return_result)
def get_changeUser_Method(coremail_user_infomation): """ :修改用户属性 :param coremail_user_infomation: 用户信息字典 :return: """ change_user_attr = "user_at_domain={coremail_user}@{domain_name}&attrs=user_status%3D{user_status}" \ "%26user_list_rank%3D{user_list_rank}%26cos_id%3D{cos_id}%26password%3D{password}" \ "%26quota_delta%3D{quota_delta}".format( coremail_user=coremail_user_infomation["coremail_user"], domain_name=coremail_user_infomation["domain_name"], user_status=coremail_user_infomation["user_status"], user_list_rank=coremail_user_infomation["user_list_rank"], cos_id=coremail_user_infomation["cos_id"], quota_delta=coremail_user_infomation["quota_delta"], password=coremail_user_infomation["password"] ) print("修改用户属性 " + coremail_user_infomation["coremail_user"]) api_return_result = split_request_url.api_interface( "changeAttrs", change_user_attr) if api_return_result[0] == "0": print("Info: 修改用户 " + coremail_user_infomation["coremail_user"] + " 成功") else: print("\033[31;1mWarn:\033[0m 修改用户 " + coremail_user_infomation["coremail_user"] + " 失败:") print(api_return_result)
def getOrgInformation_Method(coremail_org_information): """ :获取组织的信息 :param coremail_user_infomation: :return: """ org_attrs = "org_id={org_id}&attrs=org_name%26provider_id%26org_id%26org_assignable_quota%26" \ "org_status%26org_creation_date%26org_expiry_date%26org_xbcc%26org_list_rank%26org_nf_quota_delta%26" \ "org_admin_ip_limit%26org_access_level%26org_region_id%26email_allow_user%26domain_name" \ "%26not_used_quota".format( org_id=coremail_org_information["org_id"], ) api_return_result = list( split_request_url.api_interface("getOrgInfo", org_attrs)) # 传入方法 和 方法中的属性 org_result_list = re.split("&", api_return_result[1]) if api_return_result[0] == "0": print("Info: 获取组织信息成功") for org_info in org_result_list: print(org_info) else: print("\033[31;1mWarn:\033[0m 返回组织 " + coremail_org_information["org_id"] + " 信息失败:") print(api_return_result)
def get_addOrg_Method(coremail_org_information): """ :增加组织 :param coremail_org_information: :return: """ org_attrs = "org_id={org_id}&attrs=org_name%3D{org_name}%26domain_name%3D{domain_name}%26" \ "res_grp_id%3D{res_grp_id}%26cos_id%3D{cos_id}%26num_of_classes%3D{num_of_classes}%26" \ "org_assignable_quota%3D{org_assignable_quota}%26org_status%3D{org_status}" \ "%26org_expiry_date%3D{org_expiry_date}%26org_options%3D{org_options}".format( org_id=coremail_org_information["org_id"], org_name=coremail_org_information["org_name"], domain_name=coremail_org_information["domain_name"], res_grp_id=coremail_org_information["res_grp_id"], cos_id=coremail_org_information["cos_id"], num_of_classes=coremail_org_information["num_of_classes"], org_assignable_quota=coremail_org_information["org_assignable_quota"], org_status=coremail_org_information["org_status"], org_expiry_date=coremail_org_information["org_expiry_date"], org_options=coremail_org_information["org_options"] ) api_return_result = split_request_url.api_interface("addOrg", org_attrs) if api_return_result[0] == "0": print("Info: 组织添加成功: " + coremail_org_information["org_id"] + " " + coremail_org_information["org_name"]) else: print("\033[31;1mWarn:\033[0m 添加组织失败") print(api_return_result)
def getDomainList_Method(): """ :列出系统所有的域名 :param coremail_org_information: :return: """ org_attrs = "" print(split_request_url.api_interface("getDomainList", org_attrs))
def admin_login(): # 单点登陆 管理员登陆 admin_user_login_attr = "[email protected]" api_returnAdmin_result = split_request_url.api_interface( "userLogin", admin_user_login_attr) print("管理员单点登陆url:") if api_returnAdmin_result[0] == "0": admin_user = "******".format( sid=api_returnAdmin_result[1]) print(admin_user) else: print("获取管理员 session id 失败:") print(api_returnAdmin_result) webbrowser.open_new_tab(admin_user)
def get_delUnit_Method(coremail_org_information): """ :删除部门 :param coremail_org_information: :return: """ org_attrs = "org_id={org_id}&org_unit_id={org_unit_id}".format( org_id=coremail_org_information["org_id"], org_unit_id=coremail_org_information["org_unit_id"]) api_return_result = split_request_url.api_interface("delUnit", org_attrs) if api_return_result[0] == "0": print("Info: 删除部门成功\t" + coremail_org_information["org_unit_id"]) else: print("\033[31;1mWarn:\033[0m 删除部门失败") print(api_return_result)
def get_domainExist_Method(coremail_org_information): """ :判断域名或者域别名是否存在 :param coremail_org_information: :return: """ org_attrs = "domain_name={domain_name}".format( domain_name=coremail_org_information["domain_name"]) api_return_result = split_request_url.api_interface( "domainExist", org_attrs) # 接收的是一个元组:一个返回码 一个api调用返回的结果 if api_return_result[0] == "0": print("Info: 域名 " + api_return_result[1] + " 存在,返回码:" + api_return_result[0]) else: print("\033[31;1mWarn:\033[0m 域名不存在 ") print(api_return_result)
def get_deleteMailInfos_Method(coremail_user_infomation): """ :删除邮件 :param coremail_user_infomation: :return: """ coremail_user_attr = "uid={coremail_user}@{domain_name}&options=mid=1tbiAQELAlyd1qcACQALs7".format( coremail_user=coremail_user_infomation["coremail_user"], domain_name=coremail_user_infomation["domain_name"]) api_return_result = split_request_url.api_interface( "deleteMailInfos", coremail_user_attr) if api_return_result[0] == "0": print("删除邮件成功") else: print("删除邮件报错:") print(api_return_result)
def getUnitAttrs_Method(coremail_org_information): """ :获取部门信息 :param coremail_org_information: :return: """ unit_attrs = "org_id={org_id}&org_unit_id={org_unit_id}&attrs=parent_org_unit_id%26org_unit_name".format( org_id=coremail_org_information["org_id"], org_unit_id=coremail_org_information["org_unit_id"]) api_return_result = split_request_url.api_interface( "getUnitAttrs", unit_attrs) if api_return_result[0] == "0": print("Info: 成功获取到部门信息\t" + api_return_result[1]) else: print("\033[31;1mWarn:\033[0m 获取部门信息失败") print(api_return_result)
def get_addOrgDomain_Method(coremail_org_information): """ :组织增加新域名 :param coremail_org_information: :return: """ org_attrs = "org_id={org_id}&domain_name={new_domain_name}".format( org_id=coremail_org_information["org_id"], new_domain_name=coremail_org_information["new_domain_name"]) api_return_result = split_request_url.api_interface( "addOrgDomain", org_attrs) if api_return_result[0] == "0": print("Info: 组织增加新域名成功: " + coremail_org_information["org_id"] + " " + coremail_org_information["new_domain_name"]) else: print("\033[31;1mWarn:\033[0m 组织增加新域名失败:") print(api_return_result)
def get_delDomain25_Method(coremail_org_information): """ :删除一个域名 :param coremail_org_information: :return: """ org_attrs = "domain_name={new_domain_name}".format( new_domain_name=coremail_org_information["new_domain_name"]) api_return_result = split_request_url.api_interface( "delDomain25", org_attrs) if api_return_result[0] == "0": print("Info: 域名 " + coremail_org_information["new_domain_name"] + " 删除成功") else: print("\033[31;1mWarn:\033[0m 域名 " + coremail_org_information["new_domain_name"] + " 删除失败:") print(api_return_result)
def get_deleteUser_Method(coremail_user_infomation): """ :删除用户 :param coremail_user_infomation: 用户信息字典 :return: """ delete_user_attr = "user_at_domain=%s@%s" % ( coremail_user_infomation["coremail_user"], coremail_user_infomation["domain_name"]) # 删除的用户在"恢复已删除中" api_return_result = split_request_url.api_interface( "deleteUser", delete_user_attr) if api_return_result[0] == "0": print("Info: 删除用户 " + coremail_user_infomation["coremail_user"] + " 成功") else: print("\033[31;1mWarn:\033[0m 删除用户 " + coremail_user_infomation["coremail_user"] + " 失败:") print(api_return_result)
def get_delDomainAlias_Method(coremail_org_information): """ :删除域别名 :param coremail_org_information: :return: """ org_attrs = "domain_name={domain_name}&domain_name_alias={domain_name_alias}".format( domain_name=coremail_org_information["domain_name"], domain_name_alias=coremail_org_information["domain_name_alias"]) api_return_result = split_request_url.api_interface( "delDomainAlias", org_attrs) if api_return_result[0] == "0": print("Info: 域别名 " + coremail_org_information["domain_name_alias"] + " 删除成功") else: print("\033[31;1mWarn:\033[0m 域别名 " + coremail_org_information["domain_name_alias"] + " 删除失败:") print(api_return_result)
def get_addUnit_Method(coremail_org_information): """ :增加部门 :param coremail_org_information: :return: """ org_attrs = "org_id={org_id}&org_unit_id={org_unit_id}&attrs=parent_org_unit_id%3D{parent_org_unit_id}%26org_unit_name%3D{org_unit_name}".format( org_id=coremail_org_information["org_id"], org_unit_id=coremail_org_information["org_unit_id"], org_unit_name=coremail_org_information["org_unit_name"], parent_org_unit_id=coremail_org_information["parent_org_unit_id"]) api_return_result = split_request_url.api_interface("addUnit", org_attrs) if api_return_result[0] == "0": print("Info: 增加部门成功\t" + coremail_org_information["org_unit_id"] + "\t" + coremail_org_information["org_unit_name"]) else: print("\033[31;1mWarn:\033[0m 增加部门失败") print(api_return_result)
def get_userExist_Method(coremail_user_infomation): """ :判断用户是否存在 :param coremail_user_infomation: 用户信息字典 :return: """ user_exist_attr = "user_at_domain=%s@%s" % ( coremail_user_infomation["coremail_user"], coremail_user_infomation["domain_name"]) api_return_result = split_request_url.api_interface( "userExist", user_exist_attr) if api_return_result[0] == "0": print("Info: 用户 " + coremail_user_infomation["coremail_user"] + " 存在: " + api_return_result[1]) else: print("\033[31;1mWarn:\033[0m 用户 " + coremail_user_infomation["coremail_user"] + " 不存在:") print(api_return_result)
def get_setUnitAttrs_Method(coremail_org_information): """ :修改部门属性 :param coremail_org_information: :return: """ unit_attrs = "org_id={org_id}&org_unit_id={org_unit_id}&attrs=org_unit_name%3D{change_org_unit_name}".format( org_id=coremail_org_information["org_id"], org_unit_id=coremail_org_information["org_unit_id"], change_org_unit_name=coremail_org_information["change_org_unit_name"]) api_return_result = split_request_url.api_interface( "setUnitAttrs", unit_attrs) if api_return_result[0] == "0": print("Info: 已成功将部门id为 " + coremail_org_information["org_unit_id"] + " 的名字改为 " + coremail_org_information["change_org_unit_name"]) else: print("\033[31;1mWarn:\033[0m 设置部门属性失败") print(api_return_result)
def get_setAdminType_Method(coremail_user_infomation): """ :将用户设置为组织管理员 :param coremail_user_infomation: :return: """ coremail_user_attr = "user_at_domain={coremail_user}@{domain_name}".format( coremail_user=coremail_user_infomation["coremail_user"], domain_name=coremail_user_infomation["domain_name"]) api_return_result = split_request_url.api_interface( "setAdminType", coremail_user_attr) if api_return_result[0] == "0": print("Info: 已将用户 " + coremail_user_infomation["coremail_user"] + " 设置为组织管理员") else: print("\033[31;1mWarn:\033[0m 用户 " + coremail_user_infomation["coremail_user"] + " 设置组织管理员出错:") print(api_return_result)
def get_getSmtpAlias_Method(coremail_user_infomation): """ :列出用户别名 :param coremail_user_infomation: :return: """ coremail_user_attr = "user_at_domain={coremail_user}@{domain_name}".format( coremail_user=coremail_user_infomation["coremail_user"], domain_name=coremail_user_infomation["domain_name"]) api_return_result = split_request_url.api_interface( "getSmtpAlias", coremail_user_attr) if api_return_result[0] == "0": print("Info: 用户 " + coremail_user_infomation["coremail_user"] + " 的别名: " + api_return_result[1]) else: print("\033[31;1mWarn:\033[0m 获取用户 " + coremail_user_infomation["coremail_user"] + " 别名出错:") print(api_return_result)
def get_moveUser_Method(coremail_user_infomation): """ :跨组织移动用户 默认移动到根目录下,可移动到某个部门下,需要自定部门 org_unit_id :param coremail_user_infomation: :return: """ coremail_user_attr = "user_at_domain={coremail_user}@{domain_name}&attrs=org_id%3D{new_org_id}".format( coremail_user=coremail_user_infomation["coremail_user"], domain_name=coremail_user_infomation["domain_name"], new_org_id=coremail_user_infomation["new_org_id"]) api_return_result = split_request_url.api_interface( "moveUser", coremail_user_attr) if api_return_result[0] == "0": print("Info: 已成功将用户 " + coremail_user_infomation["coremail_user"] + " 移动到新组织中 " + coremail_user_infomation["new_org_id"]) else: print("\033[31;1mWarn:\033[0m 移动用户 " + coremail_user_infomation["coremail_user"] + " 到新组织出错: ") print(api_return_result)
def get_renameUser_Method(coremail_user_infomation): """ :修改邮箱地址前缀 :param coremail_user_infomation: :return: """ coremail_user_attr = "user_at_domain={coremail_user}@{domain_name}&new_user_id={new_user_id}".format( coremail_user=coremail_user_infomation["coremail_user"], domain_name=coremail_user_infomation["domain_name"], new_user_id=coremail_user_infomation["new_user_id"]) api_return_result = split_request_url.api_interface( "renameUser", coremail_user_attr) if api_return_result[0] == "0": print("Info: 已将用户 " + coremail_user_infomation["coremail_user"] + " 的前缀修改为 " + coremail_user_infomation["new_user_id"]) else: print("\033[31;1mWarn:\033[0m 修改用户 " + coremail_user_infomation["coremail_user"] + " 前缀出错:") print(api_return_result)
def get_addSmtpAlias_Method(coremail_user_infomation): """ :添加用户别名 :param coremail_user_infomation: :return: """ coremail_user_attr = "user_at_domain={coremail_user}@{domain_name}&alias_user_at_domain={alias_user_at_domain}".format( coremail_user=coremail_user_infomation["coremail_user"], domain_name=coremail_user_infomation["domain_name"], alias_user_at_domain=coremail_user_infomation["alias_user_at_domain"]) api_return_result = split_request_url.api_interface( "addSmtpAlias", coremail_user_attr) if api_return_result[0] == "0": print("Info: 用户 " + coremail_user_infomation["coremail_user"] + " 添加别名成功 " + coremail_user_infomation["alias_user_at_domain"]) else: print("\033[31;1mWarn:\033[0m 用户 " + coremail_user_infomation["coremail_user"] + " 添加别名失败 " + coremail_user_infomation["alias_user_at_domain"]) print(api_return_result)
def getNewMailInfos_Method(coremail_user_infomation): """ :获取用户未读邮件列表 :param coremail_user_infomation: :return: """ coremail_user_attr = "user_at_domain={coremail_user}@{domain_name}&options=doubleDecode%3DTrue".format( coremail_user=coremail_user_infomation["coremail_user"], domain_name=coremail_user_infomation["domain_name"]) api_return_result = list( split_request_url.api_interface("getNewMailInfos", coremail_user_attr)) if api_return_result[0] == "0": api_return_result_split_list = re.split("%26", api_return_result[1]) print(coremail_user_infomation["coremail_user"] + " 的未读邮件列表:") for mail_list in api_return_result_split_list: mail_list = mail_list.replace("%3D", "=") mail_list = mail_list.replace("&", "\n") print(mail_list) else: print("\033[31;1mWarn:\033[0m 获取用户 " + coremail_user_infomation["coremail_user"] + " 未读邮件数失败:") print(api_return_result)
def get_alterOrg_Method(coremail_org_information): """ :修改组织属性 :param coremail_org_information: :return: """ org_attrs = "org_id={org_id}&attrs=org_name%3D{org_name}%26" \ "res_grp_id%3D{res_grp_id}%26org_assignable_quota%3D{org_assignable_quota}" \ "%26org_status%3D{org_status}%26org_expiry_date%3D{org_expiry_date}%26".format( org_id=coremail_org_information["org_id"], org_name=coremail_org_information["org_name"], # domain_name=coremail_org_information["domain_name"], # 加上这个报错 res_grp_id=coremail_org_information["res_grp_id"], org_assignable_quota=coremail_org_information["org_assignable_quota"], org_status=coremail_org_information["org_status"], org_expiry_date=coremail_org_information["org_expiry_date"] ) api_return_result = split_request_url.api_interface("alterOrg", org_attrs) if api_return_result[0] == "0": print("Info: 组织属性修改成功: " + coremail_org_information["org_id"] + " " + coremail_org_information["org_name"]) else: print("\033[31;1mWarn:\033[0m 组织属性修改失败") print(api_return_result)