moto/moto/support/responses.py

78 lines
2.9 KiB
Python
Raw Normal View History

from moto.core.responses import BaseResponse
from .models import support_backends
import json
class SupportResponse(BaseResponse):
SERVICE_NAME = "support"
@property
def support_backend(self):
return support_backends[self.region]
def describe_trusted_advisor_checks(self):
language = self._get_param("language")
2022-03-10 13:39:59 -01:00
checks = self.support_backend.describe_trusted_advisor_checks(language=language)
return json.dumps({"checks": checks})
def refresh_trusted_advisor_check(self):
check_id = self._get_param("checkId")
2022-03-10 13:39:59 -01:00
status = self.support_backend.refresh_trusted_advisor_check(check_id=check_id)
return json.dumps(status)
def resolve_case(self):
case_id = self._get_param("caseId")
2022-03-10 13:39:59 -01:00
resolve_case_response = self.support_backend.resolve_case(case_id=case_id)
return json.dumps(resolve_case_response)
def create_case(self):
subject = self._get_param("subject")
service_code = self._get_param("serviceCode")
severity_code = self._get_param("severityCode")
category_code = self._get_param("categoryCode")
communication_body = self._get_param("communicationBody")
cc_email_addresses = self._get_param("ccEmailAddresses")
language = self._get_param("language")
issue_type = self._get_param("issueType")
attachment_set_id = self._get_param("attachmentSetId")
create_case_response = self.support_backend.create_case(
subject=subject,
service_code=service_code,
severity_code=severity_code,
category_code=category_code,
communication_body=communication_body,
cc_email_addresses=cc_email_addresses,
language=language,
issue_type=issue_type,
attachment_set_id=attachment_set_id,
)
return json.dumps(create_case_response)
def describe_cases(self):
case_id_list = self._get_param("caseIdList")
display_id = self._get_param("displayId")
after_time = self._get_param("afterTime")
before_time = self._get_param("beforeTime")
include_resolved_cases = self._get_param("includeResolvedCases", False)
next_token = self._get_param("nextToken")
max_results = self._get_int_param("maxResults")
language = self._get_param("language")
include_communications = self._get_param("includeCommunications", True)
describe_cases_response = self.support_backend.describe_cases(
case_id_list=case_id_list,
display_id=display_id,
after_time=after_time,
before_time=before_time,
include_resolved_cases=include_resolved_cases,
next_token=next_token,
max_results=max_results,
language=language,
include_communications=include_communications,
)
return json.dumps(describe_cases_response)