2020-12-03 15:07:03 +08:00
|
|
|
from nonebot.exception import AdapterException, ActionFailed, ApiNotAvailable
|
2020-12-03 00:59:32 +08:00
|
|
|
|
|
|
|
|
|
|
|
class DingAdapterException(AdapterException):
|
2020-12-03 12:08:04 +08:00
|
|
|
"""
|
|
|
|
:说明:
|
|
|
|
|
|
|
|
钉钉 Adapter 错误基类
|
|
|
|
|
|
|
|
"""
|
2020-12-03 00:59:32 +08:00
|
|
|
|
|
|
|
def __init__(self) -> None:
|
2020-12-03 15:07:03 +08:00
|
|
|
super().__init__("ding")
|
2020-12-03 00:59:32 +08:00
|
|
|
|
|
|
|
|
2020-12-03 15:07:03 +08:00
|
|
|
class ApiError(DingAdapterException, ActionFailed):
|
2020-12-03 00:59:32 +08:00
|
|
|
"""
|
|
|
|
:说明:
|
|
|
|
|
2020-12-03 12:08:04 +08:00
|
|
|
API 请求返回错误信息。
|
2020-12-03 00:59:32 +08:00
|
|
|
|
|
|
|
"""
|
|
|
|
|
|
|
|
def __init__(self, errcode: int, errmsg: str):
|
2020-12-03 12:22:39 +08:00
|
|
|
super().__init__()
|
2020-12-03 00:59:32 +08:00
|
|
|
self.errcode = errcode
|
|
|
|
self.errmsg = errmsg
|
|
|
|
|
|
|
|
def __repr__(self):
|
|
|
|
return f"<ApiError errcode={self.errcode} errmsg={self.errmsg}>"
|
|
|
|
|
|
|
|
|
2020-12-03 15:07:03 +08:00
|
|
|
class SessionExpired(DingAdapterException, ApiNotAvailable):
|
2020-12-03 12:08:04 +08:00
|
|
|
"""
|
|
|
|
:说明:
|
|
|
|
|
|
|
|
发消息的 session 已经过期。
|
|
|
|
|
|
|
|
"""
|
2020-12-03 00:59:32 +08:00
|
|
|
|
|
|
|
def __repr__(self) -> str:
|
2020-12-03 15:07:03 +08:00
|
|
|
return f"<Session Webhook is Expired>"
|