1
0
mirror of https://github.com/silenceper/wechat.git synced 2026-02-13 17:22:26 +08:00

feat: 完善微信客服常用的错误类型 (#486)

* feat:微信客服支持向客户发送欢迎语

* chore: go fmt file

* feat:移除空白文件

* doc:完善菜单消息内的注释文档

* feat: 完善微信客服常用的错误类型

* refactor: 优化SDK错误生成函数
This commit is contained in:
Afeyer
2021-09-26 10:38:52 +08:00
committed by GitHub
parent 1e2f909f34
commit 8621e06a01

View File

@@ -17,6 +17,8 @@ const (
SDKUnknownError Error = "未知错误" SDKUnknownError Error = "未知错误"
// SDKInvalidCredential 错误码40001 // SDKInvalidCredential 错误码40001
SDKInvalidCredential Error = "不合法的secret参数" SDKInvalidCredential Error = "不合法的secret参数"
// SDKInvalidImageSize 错误码40009
SDKInvalidImageSize Error = "无效的图片大小"
// SDKInvalidCorpID 错误码40013 // SDKInvalidCorpID 错误码40013
SDKInvalidCorpID Error = "无效的 CorpID" SDKInvalidCorpID Error = "无效的 CorpID"
// SDKAccessTokenInvalid 错误码40014 // SDKAccessTokenInvalid 错误码40014
@@ -25,6 +27,10 @@ const (
SDKValidateSignatureFailed Error = "校验签名错误" SDKValidateSignatureFailed Error = "校验签名错误"
// SDKDecryptMSGFailed 错误码40016 // SDKDecryptMSGFailed 错误码40016
SDKDecryptMSGFailed Error = "消息解密失败" SDKDecryptMSGFailed Error = "消息解密失败"
// SDKMediaIDExceedMinLength 错误码40058
SDKMediaIDExceedMinLength Error = "media_id 小于最小长度 1"
// SDKContentContainsSensitiveInformation 错误码40201
SDKContentContainsSensitiveInformation Error = "当前客服账号由于涉及敏感信息,已被封禁,请联系企业微信客服处理"
// SDKAccessTokenMissing 错误码41001 // SDKAccessTokenMissing 错误码41001
SDKAccessTokenMissing Error = "缺少AccessToken参数" SDKAccessTokenMissing Error = "缺少AccessToken参数"
// SDKAccessTokenExpired 错误码42001 // SDKAccessTokenExpired 错误码42001
@@ -50,46 +56,38 @@ func (r Error) Error() string {
return reflect.ValueOf(r).String() return reflect.ValueOf(r).String()
} }
// NewSDKErr 初始化SDK实例错误信息 var codeDic = map[int64]error{
func NewSDKErr(code int64, msgList ...string) Error { 50001: SDKInitFailed,
switch code { 50002: SDKCacheUnavailable,
case 50001: 50003: SDKUnknownError,
return SDKInitFailed 40001: SDKInvalidCredential,
case 50002: 40009: SDKInvalidImageSize,
return SDKCacheUnavailable 40013: SDKInvalidCorpID,
case 40001: 40014: SDKAccessTokenInvalid,
return SDKInvalidCredential 40015: SDKValidateSignatureFailed,
case 41001: 40016: SDKDecryptMSGFailed,
return SDKAccessTokenMissing 40058: SDKMediaIDExceedMinLength,
case 42001: 40201: SDKContentContainsSensitiveInformation,
return SDKAccessTokenExpired 41001: SDKAccessTokenMissing,
case 40013: 42001: SDKAccessTokenExpired,
return SDKInvalidCorpID 45009: SDKApiFreqOutOfLimit,
case 40014: 48002: SDKApiForbidden,
return SDKAccessTokenInvalid 95000: SDKInvalidOpenKFID,
case 40015: 95004: SDKOpenKFIDNotExist,
return SDKValidateSignatureFailed 95011: SDKWeWorkAlready,
case 40016: 95012: SDKNotUseInWeCom,
return SDKDecryptMSGFailed 95017: SDKApiNotOpen,
case 45009: }
return SDKApiFreqOutOfLimit
case 48002: // NewSDKErr 初始化SDK实例错误信息
return SDKApiForbidden func NewSDKErr(code int64, msgList ...string) error {
case 95000: if err := codeDic[code]; err != nil {
return SDKInvalidOpenKFID return err
case 95004: }
return SDKOpenKFIDNotExist
case 95011: //返回未知的自定义错误
return SDKWeWorkAlready if len(msgList) > 0 {
case 95012: return Error(strings.Join(msgList, ","))
return SDKNotUseInWeCom }
case 95017: return SDKUnknownError
return SDKApiNotOpen
default:
//返回未知的自定义错误
if len(msgList) > 0 {
return Error(strings.Join(msgList, ","))
}
return SDKUnknownError
}
} }