ecapi-sdk 3.2.1__tar.gz → 3.2.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ecapi-sdk
3
- Version: 3.2.1
3
+ Version: 3.2.3
4
4
  Summary: ECAPI SDK for Python
5
5
  Author: EaseCation
6
6
  License: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "ecapi-sdk"
7
- version = "3.2.1"
7
+ version = "3.2.3"
8
8
  description = "ECAPI SDK for Python"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
@@ -281,6 +281,31 @@ class _BaseApi:
281
281
  request_kwargs, query_kwargs = _extract_request_kwargs(kwargs)
282
282
  return self._http.request("DELETE", path, query=query, **request_kwargs, **query_kwargs)
283
283
 
284
+ class ReplayAPI(_BaseApi):
285
+ def cache_map_profiles(self, payload: Mapping[str, Any], **kwargs: Any) -> Any:
286
+ """预热回放地图轮廓缓存"""
287
+ return self._post(f"/replay-map-profiles/cache", payload, **kwargs)
288
+
289
+ def create_visualization_data_job(self, recordId: Union[int, float], payload: Mapping[str, Any], **kwargs: Any) -> Any:
290
+ """创建回放结构化数据解析任务"""
291
+ return self._post(f"/replays/{quote(str(recordId), safe='')}/visualization-data-jobs", payload, **kwargs)
292
+
293
+ def get_map_profile(self, query: Optional[QueryParams] = None, **kwargs: Any) -> Any:
294
+ """获取回放地图轮廓"""
295
+ return self._get(f"/replay-map-profiles", query, **kwargs)
296
+
297
+ def get_replay_record(self, recordId: Union[int, float], **kwargs: Any) -> Any:
298
+ """获取回放记录"""
299
+ return self._get(f"/replays/{quote(str(recordId), safe='')}", None, **kwargs)
300
+
301
+ def get_visualization_data(self, jobId: str, **kwargs: Any) -> Any:
302
+ """获取回放结构化数据"""
303
+ return self._get(f"/replay-visualization-data-jobs/{quote(str(jobId), safe='')}/data", None, **kwargs)
304
+
305
+ def get_visualization_data_job(self, jobId: str, **kwargs: Any) -> Any:
306
+ """查询回放结构化数据任务"""
307
+ return self._get(f"/replay-visualization-data-jobs/{quote(str(jobId), safe='')}", None, **kwargs)
308
+
284
309
  class AdminAPI(_BaseApi):
285
310
  def __init__(self, http: _HttpClient) -> None:
286
311
  super().__init__(http)
@@ -1011,6 +1036,10 @@ class SystemAPI(_BaseApi):
1011
1036
  """获取服务基础资料"""
1012
1037
  return self._get(f"/", None, **kwargs)
1013
1038
 
1039
+ def probe_database_indexes(self, query: Optional[QueryParams] = None, **kwargs: Any) -> Any:
1040
+ """诊断线上数据库表索引"""
1041
+ return self._get(f"/health/diagnostics/database-indexes", query, **kwargs)
1042
+
1014
1043
  class UserAPI(_BaseApi):
1015
1044
  def get_by_id(self, id: str, **kwargs: Any) -> Any:
1016
1045
  """获取玩家账号详情"""
@@ -10,6 +10,25 @@ Headers = Dict[str, str]
10
10
  AuthCredentials = Dict[str, str]
11
11
  AuthProvider = Callable[[], Union[Optional[AuthCredentials], Awaitable[Optional[AuthCredentials]]]]
12
12
 
13
+ class ReplayAPIGetMapProfileQueryRequired(TypedDict):
14
+ mapPath: QueryValue
15
+
16
+ class ReplayAPIGetMapProfileQuery(ReplayAPIGetMapProfileQueryRequired, total=False):
17
+ includeOverview: QueryValue
18
+ refresh: QueryValue
19
+
20
+ class ReplayAPICacheMapProfilesBody(TypedDict, total=False):
21
+ mapPaths: Sequence[Any]
22
+ prefix: str
23
+ includeOverview: bool
24
+ maxMaps: int
25
+
26
+ class ReplayAPICreateVisualizationDataJobBody(TypedDict, total=False):
27
+ includeBlocks: bool
28
+ includeLandmarks: bool
29
+ sampleRate: int
30
+ maxDurationSeconds: int
31
+
13
32
  class AdminAccountAPIUpdatePasswordBodyRequired(TypedDict):
14
33
  passwordHash: str
15
34
 
@@ -798,6 +817,12 @@ class ServerSpamDetectorAPISetStateBodyRequired(TypedDict):
798
817
  class ServerSpamDetectorAPISetStateBody(ServerSpamDetectorAPISetStateBodyRequired, total=False):
799
818
  pass
800
819
 
820
+ class SystemAPIProbeDatabaseIndexesQueryRequired(TypedDict):
821
+ tables: QueryValue
822
+
823
+ class SystemAPIProbeDatabaseIndexesQuery(SystemAPIProbeDatabaseIndexesQueryRequired, total=False):
824
+ requiredColumns: QueryValue
825
+
801
826
  class ECAPIError(Exception):
802
827
  status: int
803
828
  payload: Any
@@ -808,6 +833,14 @@ class ECAPIError(Exception):
808
833
  field: Optional[str]
809
834
  def __init__(self, message: str, status: int, payload: Any, url: str) -> None: ...
810
835
 
836
+ class ReplayAPI:
837
+ def cache_map_profiles(self, payload: ReplayAPICacheMapProfilesBody, **kwargs: Any) -> Any: ...
838
+ def create_visualization_data_job(self, recordId: Union[int, float], payload: ReplayAPICreateVisualizationDataJobBody, **kwargs: Any) -> Any: ...
839
+ def get_map_profile(self, query: ReplayAPIGetMapProfileQuery, **kwargs: Any) -> Any: ...
840
+ def get_replay_record(self, recordId: Union[int, float], **kwargs: Any) -> Any: ...
841
+ def get_visualization_data(self, jobId: str, **kwargs: Any) -> Any: ...
842
+ def get_visualization_data_job(self, jobId: str, **kwargs: Any) -> Any: ...
843
+
811
844
  class AdminAPI:
812
845
  account: AdminAccountAPI
813
846
  leaderboard: AdminLeaderboardAPI
@@ -1088,6 +1121,7 @@ class SystemAPI:
1088
1121
  def get_liveness(self, **kwargs: Any) -> Any: ...
1089
1122
  def get_readiness(self, **kwargs: Any) -> Any: ...
1090
1123
  def get_root(self, **kwargs: Any) -> Any: ...
1124
+ def probe_database_indexes(self, query: SystemAPIProbeDatabaseIndexesQuery, **kwargs: Any) -> Any: ...
1091
1125
 
1092
1126
  class UserAPI:
1093
1127
  def get_by_id(self, id: str, **kwargs: Any) -> Any: ...
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ecapi-sdk
3
- Version: 3.2.1
3
+ Version: 3.2.3
4
4
  Summary: ECAPI SDK for Python
5
5
  Author: EaseCation
6
6
  License: MIT
File without changes
File without changes