Files
Edu/services/data-ana/src/generated_proto/analytics_pb2_grpc.py
SpecialX 9db7fd917e feat(data-ana): v2 P6 硬化完成 + 6 新 RPC + Prometheus 监控
P6 硬化(5 项全部完成):

- CDC 多实例水平扩展: _INSTANCE_ID + get_lag() 真实 lag 计算

- ExamCache Redis 化: key data_ana:exam:{exam_id}, TTL 30 天 + 内存 LRU fallback

- ClickHouse TTL 归档: 5 表均加 TTL(1-3 年),分区级删除

- Prometheus 监控: 18 个指标(CDC/CH/ExamCache/DataScope/gRPC/业务)

- readyz 深度硬化: 4 依赖超时检查(CH 1s/Redis 200ms/iam 2s/CDC lag<1000)

v2 新增 6 个 RPC(analytics.proto 扩展为 18 RPC):

- GetStudentGrowth / GetAssignmentAnalysis / GetMasterySummary

- ListDiagnosticReports(占位,待 ai 服务)/ ListErrorBookItems / GetErrorBookStats

监控与可观测性: lifespan 预热 + gRPC ServerInterceptor + CDC 消费者指标

Docker 本地测试 19 项全部通过(healthz/readyz/metrics + 11 HTTP + 10 gRPC + ruff)

nextstep-v2.md: 上游需求对齐 + 下游要求(iam/core-edu/content/ai/SRE)
2026-07-14 18:07:17 +08:00

917 lines
34 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
"""Client and server classes corresponding to protobuf-defined services."""
import grpc
import warnings
from generated_proto import analytics_pb2 as analytics__pb2
GRPC_GENERATED_VERSION = "1.82.1"
GRPC_VERSION = grpc.__version__
_version_not_supported = False
try:
from grpc._utilities import first_version_is_lower
_version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
except ImportError:
_version_not_supported = True
if _version_not_supported:
raise RuntimeError(
f"The grpc package installed is at version {GRPC_VERSION},"
+ " but the generated code in analytics_pb2_grpc.py depends on"
+ f" grpcio>={GRPC_GENERATED_VERSION}."
+ f" Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}"
+ f" or downgrade your generated code using grpcio-tools<={GRPC_VERSION}."
)
class AnalyticsServiceStub:
"""AnalyticsService 数据分析服务契约D6 智能洞察领域).
P4 启用 gRPC server 端口 50055HTTP 3006 保留作 Gateway 直连降级.
所有 RPC 返回 ActionState 信封success/data/error/details.degraded.
"""
def __init__(self, channel):
"""Constructor.
Args:
channel: A grpc.Channel.
"""
self.GetClassPerformance = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/GetClassPerformance",
request_serializer=analytics__pb2.GetClassPerformanceRequest.SerializeToString,
response_deserializer=analytics__pb2.ClassPerformance.FromString,
_registered_method=True,
)
self.GetStudentWeakness = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/GetStudentWeakness",
request_serializer=analytics__pb2.GetStudentWeaknessRequest.SerializeToString,
response_deserializer=analytics__pb2.StudentWeakness.FromString,
_registered_method=True,
)
self.GetLearningTrend = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/GetLearningTrend",
request_serializer=analytics__pb2.GetLearningTrendRequest.SerializeToString,
response_deserializer=analytics__pb2.LearningTrend.FromString,
_registered_method=True,
)
self.GetTeacherDashboard = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/GetTeacherDashboard",
request_serializer=analytics__pb2.GetTeacherDashboardRequest.SerializeToString,
response_deserializer=analytics__pb2.TeacherDashboard.FromString,
_registered_method=True,
)
self.GetStudentDashboard = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/GetStudentDashboard",
request_serializer=analytics__pb2.GetStudentDashboardRequest.SerializeToString,
response_deserializer=analytics__pb2.StudentDashboard.FromString,
_registered_method=True,
)
self.GetParentDashboard = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/GetParentDashboard",
request_serializer=analytics__pb2.GetParentDashboardRequest.SerializeToString,
response_deserializer=analytics__pb2.ParentDashboard.FromString,
_registered_method=True,
)
self.GetAdminDashboard = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/GetAdminDashboard",
request_serializer=analytics__pb2.GetAdminDashboardRequest.SerializeToString,
response_deserializer=analytics__pb2.AdminDashboard.FromString,
_registered_method=True,
)
self.GetWarnings = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/GetWarnings",
request_serializer=analytics__pb2.GetWarningsRequest.SerializeToString,
response_deserializer=analytics__pb2.WarningList.FromString,
_registered_method=True,
)
self.TriggerWarning = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/TriggerWarning",
request_serializer=analytics__pb2.TriggerWarningRequest.SerializeToString,
response_deserializer=analytics__pb2.TriggerWarningResponse.FromString,
_registered_method=True,
)
self.GetMasteryDistribution = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/GetMasteryDistribution",
request_serializer=analytics__pb2.GetMasteryDistributionRequest.SerializeToString,
response_deserializer=analytics__pb2.MasteryDistribution.FromString,
_registered_method=True,
)
self.GetStudentMastery = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/GetStudentMastery",
request_serializer=analytics__pb2.GetStudentMasteryRequest.SerializeToString,
response_deserializer=analytics__pb2.StudentMastery.FromString,
_registered_method=True,
)
self.SubscribeMasteryUpdate = channel.unary_stream(
"/next_edu_cloud.analytics.v1.AnalyticsService/SubscribeMasteryUpdate",
request_serializer=analytics__pb2.SubscribeMasteryUpdateRequest.SerializeToString,
response_deserializer=analytics__pb2.MasteryUpdateEvent.FromString,
_registered_method=True,
)
self.GetStudentGrowth = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/GetStudentGrowth",
request_serializer=analytics__pb2.GetStudentGrowthRequest.SerializeToString,
response_deserializer=analytics__pb2.StudentGrowth.FromString,
_registered_method=True,
)
self.GetAssignmentAnalysis = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/GetAssignmentAnalysis",
request_serializer=analytics__pb2.GetAssignmentAnalysisRequest.SerializeToString,
response_deserializer=analytics__pb2.AssignmentAnalysis.FromString,
_registered_method=True,
)
self.GetMasterySummary = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/GetMasterySummary",
request_serializer=analytics__pb2.GetMasterySummaryRequest.SerializeToString,
response_deserializer=analytics__pb2.MasterySummary.FromString,
_registered_method=True,
)
self.ListDiagnosticReports = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/ListDiagnosticReports",
request_serializer=analytics__pb2.ListDiagnosticReportsRequest.SerializeToString,
response_deserializer=analytics__pb2.DiagnosticReportList.FromString,
_registered_method=True,
)
self.ListErrorBookItems = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/ListErrorBookItems",
request_serializer=analytics__pb2.ListErrorBookItemsRequest.SerializeToString,
response_deserializer=analytics__pb2.ErrorBookList.FromString,
_registered_method=True,
)
self.GetErrorBookStats = channel.unary_unary(
"/next_edu_cloud.analytics.v1.AnalyticsService/GetErrorBookStats",
request_serializer=analytics__pb2.GetErrorBookStatsRequest.SerializeToString,
response_deserializer=analytics__pb2.ErrorBookStats.FromString,
_registered_method=True,
)
class AnalyticsServiceServicer:
"""AnalyticsService 数据分析服务契约D6 智能洞察领域).
P4 启用 gRPC server 端口 50055HTTP 3006 保留作 Gateway 直连降级.
所有 RPC 返回 ActionState 信封success/data/error/details.degraded.
"""
def GetClassPerformance(self, request, context):
"""班级成绩分析(平均分/及格率/参考人数)."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def GetStudentWeakness(self, request, context):
"""学生薄弱知识点mastery_level < 0.6."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def GetLearningTrend(self, request, context):
"""学习趋势(历史成绩曲线)."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def GetTeacherDashboard(self, request, context):
"""教师仪表盘聚合(班级概览 + 待办 + 预警)."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def GetStudentDashboard(self, request, context):
"""学生仪表盘(个人学情 + 排名 + 薄弱点)."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def GetParentDashboard(self, request, context):
"""家长仪表盘(孩子学情概览)."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def GetAdminDashboard(self, request, context):
"""管理员仪表盘(全校统计 + AI 用量)."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def GetWarnings(self, request, context):
"""预警列表查询(按班级/严重度/时间过滤)."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def TriggerWarning(self, request, context):
"""手动触发预警(管理员/教师主动标记关注)."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def GetMasteryDistribution(self, request, context):
"""班级掌握度分布mastered/progressing/weak 三档)."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def GetStudentMastery(self, request, context):
"""学生知识点掌握度明细."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def SubscribeMasteryUpdate(self, request, context):
"""订阅掌握度更新server-streamingP5+ AI 个性化推荐实时推送通道)."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def GetStudentGrowth(self, request, context):
"""===== P6+ v2 扩展 RPC响应上游 parent-bff / student-bff v2 请求) =====
学生成长档案(综合成绩趋势 + 掌握度变化 + 考勤统计,供 parent-bff GrowthArchiveService.
"""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def GetAssignmentAnalysis(self, request, context):
"""作业/考试分析(单次作业/考试维度统计,供 student-bff / parent-bff."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def GetMasterySummary(self, request, context):
"""学生掌握度汇总(轻量级,仅返回总体掌握度 + 三档分布,供 parent-bff MasteryService.GetSummary."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def ListDiagnosticReports(self, request, context):
"""诊断报告列表(占位实现,真实数据需 ai 服务集成,供 parent-bff / student-bff."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def ListErrorBookItems(self, request, context):
"""错题本列表gRPC 版本,供 parent-bff ErrorBookService.List."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def GetErrorBookStats(self, request, context):
"""错题本统计(按知识点聚合,供 parent-bff ErrorBookService.GetStats."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def add_AnalyticsServiceServicer_to_server(servicer, server):
rpc_method_handlers = {
"GetClassPerformance": grpc.unary_unary_rpc_method_handler(
servicer.GetClassPerformance,
request_deserializer=analytics__pb2.GetClassPerformanceRequest.FromString,
response_serializer=analytics__pb2.ClassPerformance.SerializeToString,
),
"GetStudentWeakness": grpc.unary_unary_rpc_method_handler(
servicer.GetStudentWeakness,
request_deserializer=analytics__pb2.GetStudentWeaknessRequest.FromString,
response_serializer=analytics__pb2.StudentWeakness.SerializeToString,
),
"GetLearningTrend": grpc.unary_unary_rpc_method_handler(
servicer.GetLearningTrend,
request_deserializer=analytics__pb2.GetLearningTrendRequest.FromString,
response_serializer=analytics__pb2.LearningTrend.SerializeToString,
),
"GetTeacherDashboard": grpc.unary_unary_rpc_method_handler(
servicer.GetTeacherDashboard,
request_deserializer=analytics__pb2.GetTeacherDashboardRequest.FromString,
response_serializer=analytics__pb2.TeacherDashboard.SerializeToString,
),
"GetStudentDashboard": grpc.unary_unary_rpc_method_handler(
servicer.GetStudentDashboard,
request_deserializer=analytics__pb2.GetStudentDashboardRequest.FromString,
response_serializer=analytics__pb2.StudentDashboard.SerializeToString,
),
"GetParentDashboard": grpc.unary_unary_rpc_method_handler(
servicer.GetParentDashboard,
request_deserializer=analytics__pb2.GetParentDashboardRequest.FromString,
response_serializer=analytics__pb2.ParentDashboard.SerializeToString,
),
"GetAdminDashboard": grpc.unary_unary_rpc_method_handler(
servicer.GetAdminDashboard,
request_deserializer=analytics__pb2.GetAdminDashboardRequest.FromString,
response_serializer=analytics__pb2.AdminDashboard.SerializeToString,
),
"GetWarnings": grpc.unary_unary_rpc_method_handler(
servicer.GetWarnings,
request_deserializer=analytics__pb2.GetWarningsRequest.FromString,
response_serializer=analytics__pb2.WarningList.SerializeToString,
),
"TriggerWarning": grpc.unary_unary_rpc_method_handler(
servicer.TriggerWarning,
request_deserializer=analytics__pb2.TriggerWarningRequest.FromString,
response_serializer=analytics__pb2.TriggerWarningResponse.SerializeToString,
),
"GetMasteryDistribution": grpc.unary_unary_rpc_method_handler(
servicer.GetMasteryDistribution,
request_deserializer=analytics__pb2.GetMasteryDistributionRequest.FromString,
response_serializer=analytics__pb2.MasteryDistribution.SerializeToString,
),
"GetStudentMastery": grpc.unary_unary_rpc_method_handler(
servicer.GetStudentMastery,
request_deserializer=analytics__pb2.GetStudentMasteryRequest.FromString,
response_serializer=analytics__pb2.StudentMastery.SerializeToString,
),
"SubscribeMasteryUpdate": grpc.unary_stream_rpc_method_handler(
servicer.SubscribeMasteryUpdate,
request_deserializer=analytics__pb2.SubscribeMasteryUpdateRequest.FromString,
response_serializer=analytics__pb2.MasteryUpdateEvent.SerializeToString,
),
"GetStudentGrowth": grpc.unary_unary_rpc_method_handler(
servicer.GetStudentGrowth,
request_deserializer=analytics__pb2.GetStudentGrowthRequest.FromString,
response_serializer=analytics__pb2.StudentGrowth.SerializeToString,
),
"GetAssignmentAnalysis": grpc.unary_unary_rpc_method_handler(
servicer.GetAssignmentAnalysis,
request_deserializer=analytics__pb2.GetAssignmentAnalysisRequest.FromString,
response_serializer=analytics__pb2.AssignmentAnalysis.SerializeToString,
),
"GetMasterySummary": grpc.unary_unary_rpc_method_handler(
servicer.GetMasterySummary,
request_deserializer=analytics__pb2.GetMasterySummaryRequest.FromString,
response_serializer=analytics__pb2.MasterySummary.SerializeToString,
),
"ListDiagnosticReports": grpc.unary_unary_rpc_method_handler(
servicer.ListDiagnosticReports,
request_deserializer=analytics__pb2.ListDiagnosticReportsRequest.FromString,
response_serializer=analytics__pb2.DiagnosticReportList.SerializeToString,
),
"ListErrorBookItems": grpc.unary_unary_rpc_method_handler(
servicer.ListErrorBookItems,
request_deserializer=analytics__pb2.ListErrorBookItemsRequest.FromString,
response_serializer=analytics__pb2.ErrorBookList.SerializeToString,
),
"GetErrorBookStats": grpc.unary_unary_rpc_method_handler(
servicer.GetErrorBookStats,
request_deserializer=analytics__pb2.GetErrorBookStatsRequest.FromString,
response_serializer=analytics__pb2.ErrorBookStats.SerializeToString,
),
}
generic_handler = grpc.method_handlers_generic_handler(
"next_edu_cloud.analytics.v1.AnalyticsService", rpc_method_handlers
)
server.add_generic_rpc_handlers((generic_handler,))
server.add_registered_method_handlers(
"next_edu_cloud.analytics.v1.AnalyticsService", rpc_method_handlers
)
# This class is part of an EXPERIMENTAL API.
class AnalyticsService:
"""AnalyticsService 数据分析服务契约D6 智能洞察领域).
P4 启用 gRPC server 端口 50055HTTP 3006 保留作 Gateway 直连降级.
所有 RPC 返回 ActionState 信封success/data/error/details.degraded.
"""
@staticmethod
def GetClassPerformance(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/GetClassPerformance",
analytics__pb2.GetClassPerformanceRequest.SerializeToString,
analytics__pb2.ClassPerformance.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def GetStudentWeakness(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/GetStudentWeakness",
analytics__pb2.GetStudentWeaknessRequest.SerializeToString,
analytics__pb2.StudentWeakness.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def GetLearningTrend(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/GetLearningTrend",
analytics__pb2.GetLearningTrendRequest.SerializeToString,
analytics__pb2.LearningTrend.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def GetTeacherDashboard(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/GetTeacherDashboard",
analytics__pb2.GetTeacherDashboardRequest.SerializeToString,
analytics__pb2.TeacherDashboard.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def GetStudentDashboard(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/GetStudentDashboard",
analytics__pb2.GetStudentDashboardRequest.SerializeToString,
analytics__pb2.StudentDashboard.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def GetParentDashboard(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/GetParentDashboard",
analytics__pb2.GetParentDashboardRequest.SerializeToString,
analytics__pb2.ParentDashboard.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def GetAdminDashboard(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/GetAdminDashboard",
analytics__pb2.GetAdminDashboardRequest.SerializeToString,
analytics__pb2.AdminDashboard.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def GetWarnings(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/GetWarnings",
analytics__pb2.GetWarningsRequest.SerializeToString,
analytics__pb2.WarningList.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def TriggerWarning(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/TriggerWarning",
analytics__pb2.TriggerWarningRequest.SerializeToString,
analytics__pb2.TriggerWarningResponse.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def GetMasteryDistribution(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/GetMasteryDistribution",
analytics__pb2.GetMasteryDistributionRequest.SerializeToString,
analytics__pb2.MasteryDistribution.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def GetStudentMastery(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/GetStudentMastery",
analytics__pb2.GetStudentMasteryRequest.SerializeToString,
analytics__pb2.StudentMastery.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def SubscribeMasteryUpdate(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_stream(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/SubscribeMasteryUpdate",
analytics__pb2.SubscribeMasteryUpdateRequest.SerializeToString,
analytics__pb2.MasteryUpdateEvent.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def GetStudentGrowth(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/GetStudentGrowth",
analytics__pb2.GetStudentGrowthRequest.SerializeToString,
analytics__pb2.StudentGrowth.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def GetAssignmentAnalysis(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/GetAssignmentAnalysis",
analytics__pb2.GetAssignmentAnalysisRequest.SerializeToString,
analytics__pb2.AssignmentAnalysis.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def GetMasterySummary(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/GetMasterySummary",
analytics__pb2.GetMasterySummaryRequest.SerializeToString,
analytics__pb2.MasterySummary.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def ListDiagnosticReports(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/ListDiagnosticReports",
analytics__pb2.ListDiagnosticReportsRequest.SerializeToString,
analytics__pb2.DiagnosticReportList.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def ListErrorBookItems(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/ListErrorBookItems",
analytics__pb2.ListErrorBookItemsRequest.SerializeToString,
analytics__pb2.ErrorBookList.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)
@staticmethod
def GetErrorBookStats(
request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None,
):
return grpc.experimental.unary_unary(
request,
target,
"/next_edu_cloud.analytics.v1.AnalyticsService/GetErrorBookStats",
analytics__pb2.GetErrorBookStatsRequest.SerializeToString,
analytics__pb2.ErrorBookStats.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True,
)