mirror of
https://github.com/TeaOSLab/EdgeCommon.git
synced 2025-11-03 20:40:25 +08:00
实现用户系统手机号码绑定和登录(商业版)
This commit is contained in:
@@ -651,6 +651,7 @@ const (
|
||||
User_LogUpdateUserPricePeriod langs.MessageCode = "user@log_update_user_price_period" // 修改计费周期为 %s
|
||||
User_LogUpdateUserPriceType langs.MessageCode = "user@log_update_user_price_type" // 修改计费类型为 %s
|
||||
User_LogUpdateUserProfile langs.MessageCode = "user@log_update_user_profile" // 修改个人资料
|
||||
User_LogUpdateUserSmsSettings langs.MessageCode = "user@log_update_user_sms_settings" // 修改用户短信设置
|
||||
User_LogVerifyUser langs.MessageCode = "user@log_verify_user" // 审核用户:%d 结果:%s
|
||||
UserAccessKey_LogCreateUserAccessKey langs.MessageCode = "user_access_key@log_create_user_access_key" // 创建AccessKey %d
|
||||
UserAccessKey_LogDeleteUserAccessKey langs.MessageCode = "user_access_key@log_delete_user_access_key" // 删除AccessKey %d
|
||||
|
||||
@@ -652,6 +652,7 @@ func init() {
|
||||
"user@log_update_user_price_period": "修改计费周期为 %s",
|
||||
"user@log_update_user_price_type": "修改计费类型为 %s",
|
||||
"user@log_update_user_profile": "修改个人资料",
|
||||
"user@log_update_user_sms_settings": "修改用户短信设置",
|
||||
"user@log_verify_user": "审核用户:%d 结果:%s",
|
||||
"user_access_key@log_create_user_access_key": "创建AccessKey %d",
|
||||
"user_access_key@log_delete_user_access_key": "删除AccessKey %d",
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{
|
||||
"log_update_user_email_settings": "修改用户邮件设置",
|
||||
"log_update_user_sms_settings": "修改用户短信设置",
|
||||
"log_update_user_global_settings": "修改用户设置",
|
||||
"log_create_user": "创建用户 %d",
|
||||
"log_delete_user": "删除用户 %d",
|
||||
|
||||
@@ -25,13 +25,14 @@ type User struct {
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` // 用户ID
|
||||
Username string `protobuf:"bytes,2,opt,name=username,proto3" json:"username,omitempty"` // 用户名
|
||||
Fullname string `protobuf:"bytes,3,opt,name=fullname,proto3" json:"fullname,omitempty"` // 全称
|
||||
Mobile string `protobuf:"bytes,4,opt,name=mobile,proto3" json:"mobile,omitempty"`
|
||||
Tel string `protobuf:"bytes,5,opt,name=tel,proto3" json:"tel,omitempty"`
|
||||
Email string `protobuf:"bytes,6,opt,name=email,proto3" json:"email,omitempty"`
|
||||
VerifiedEmail string `protobuf:"bytes,20,opt,name=verifiedEmail,proto3" json:"verifiedEmail,omitempty"`
|
||||
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` // 用户ID
|
||||
Username string `protobuf:"bytes,2,opt,name=username,proto3" json:"username,omitempty"` // 用户名
|
||||
Fullname string `protobuf:"bytes,3,opt,name=fullname,proto3" json:"fullname,omitempty"` // 全称
|
||||
Mobile string `protobuf:"bytes,4,opt,name=mobile,proto3" json:"mobile,omitempty"` // 手机号码
|
||||
Tel string `protobuf:"bytes,5,opt,name=tel,proto3" json:"tel,omitempty"` // 联系电话
|
||||
Email string `protobuf:"bytes,6,opt,name=email,proto3" json:"email,omitempty"` // 联系邮箱
|
||||
VerifiedEmail string `protobuf:"bytes,20,opt,name=verifiedEmail,proto3" json:"verifiedEmail,omitempty"` // 已验证邮箱
|
||||
VerifiedMobile string `protobuf:"bytes,23,opt,name=verifiedMobile,proto3" json:"verifiedMobile,omitempty"` // 已验证手机号码
|
||||
Remark string `protobuf:"bytes,7,opt,name=remark,proto3" json:"remark,omitempty"`
|
||||
IsOn bool `protobuf:"varint,8,opt,name=isOn,proto3" json:"isOn,omitempty"`
|
||||
CreatedAt int64 `protobuf:"varint,9,opt,name=createdAt,proto3" json:"createdAt,omitempty"`
|
||||
@@ -40,11 +41,11 @@ type User struct {
|
||||
IsRejected bool `protobuf:"varint,14,opt,name=isRejected,proto3" json:"isRejected,omitempty"`
|
||||
RejectReason string `protobuf:"bytes,15,opt,name=rejectReason,proto3" json:"rejectReason,omitempty"`
|
||||
IsDeleted bool `protobuf:"varint,16,opt,name=isDeleted,proto3" json:"isDeleted,omitempty"`
|
||||
IsIndividualIdentified bool `protobuf:"varint,17,opt,name=isIndividualIdentified,proto3" json:"isIndividualIdentified,omitempty"`
|
||||
IsEnterpriseIdentified bool `protobuf:"varint,18,opt,name=isEnterpriseIdentified,proto3" json:"isEnterpriseIdentified,omitempty"`
|
||||
BandwidthAlgo string `protobuf:"bytes,21,opt,name=bandwidthAlgo,proto3" json:"bandwidthAlgo,omitempty"` // 带宽算法
|
||||
Lang string `protobuf:"bytes,22,opt,name=lang,proto3" json:"lang,omitempty"` // 语言代号
|
||||
OtpLogin *Login `protobuf:"bytes,19,opt,name=otpLogin,proto3" json:"otpLogin,omitempty"` // OTP认证
|
||||
IsIndividualIdentified bool `protobuf:"varint,17,opt,name=isIndividualIdentified,proto3" json:"isIndividualIdentified,omitempty"` // 是否已通过个人验证
|
||||
IsEnterpriseIdentified bool `protobuf:"varint,18,opt,name=isEnterpriseIdentified,proto3" json:"isEnterpriseIdentified,omitempty"` // 是否已通过企业验证
|
||||
BandwidthAlgo string `protobuf:"bytes,21,opt,name=bandwidthAlgo,proto3" json:"bandwidthAlgo,omitempty"` // 带宽算法
|
||||
Lang string `protobuf:"bytes,22,opt,name=lang,proto3" json:"lang,omitempty"` // 语言代号
|
||||
OtpLogin *Login `protobuf:"bytes,19,opt,name=otpLogin,proto3" json:"otpLogin,omitempty"` // OTP认证
|
||||
NodeCluster *NodeCluster `protobuf:"bytes,10,opt,name=nodeCluster,proto3" json:"nodeCluster,omitempty"`
|
||||
Features []*UserFeature `protobuf:"bytes,11,rep,name=features,proto3" json:"features,omitempty"`
|
||||
}
|
||||
@@ -130,6 +131,13 @@ func (x *User) GetVerifiedEmail() string {
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *User) GetVerifiedMobile() string {
|
||||
if x != nil {
|
||||
return x.VerifiedMobile
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *User) GetRemark() string {
|
||||
if x != nil {
|
||||
return x.Remark
|
||||
@@ -245,7 +253,7 @@ var file_models_model_user_proto_rawDesc = []byte{
|
||||
0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x75, 0x73, 0x65,
|
||||
0x72, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
|
||||
0x18, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6c, 0x6f,
|
||||
0x67, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xd5, 0x05, 0x0a, 0x04, 0x55, 0x73,
|
||||
0x67, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xfd, 0x05, 0x0a, 0x04, 0x55, 0x73,
|
||||
0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02,
|
||||
0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a,
|
||||
@@ -257,42 +265,44 @@ var file_models_model_user_proto_rawDesc = []byte{
|
||||
0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x24, 0x0a, 0x0d, 0x76, 0x65,
|
||||
0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x14, 0x20, 0x01, 0x28,
|
||||
0x09, 0x52, 0x0d, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c,
|
||||
0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e,
|
||||
0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x12, 0x1c, 0x0a, 0x09,
|
||||
0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52,
|
||||
0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65,
|
||||
0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x65, 0x64, 0x49, 0x50, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x0c, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x65, 0x64, 0x49, 0x50, 0x12, 0x1e,
|
||||
0x0a, 0x0a, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01,
|
||||
0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x1e,
|
||||
0x0a, 0x0a, 0x69, 0x73, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01,
|
||||
0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x22,
|
||||
0x0a, 0x0c, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x0f,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x61, 0x73,
|
||||
0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18,
|
||||
0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64,
|
||||
0x12, 0x36, 0x0a, 0x16, 0x69, 0x73, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c,
|
||||
0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08,
|
||||
0x52, 0x16, 0x69, 0x73, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x49, 0x64,
|
||||
0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x36, 0x0a, 0x16, 0x69, 0x73, 0x45, 0x6e,
|
||||
0x74, 0x65, 0x72, 0x70, 0x72, 0x69, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69,
|
||||
0x65, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x69, 0x73, 0x45, 0x6e, 0x74, 0x65,
|
||||
0x72, 0x70, 0x72, 0x69, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64,
|
||||
0x12, 0x24, 0x0a, 0x0d, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x41, 0x6c, 0x67,
|
||||
0x6f, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64,
|
||||
0x74, 0x68, 0x41, 0x6c, 0x67, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x67, 0x18, 0x16,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x61, 0x6e, 0x67, 0x12, 0x25, 0x0a, 0x08, 0x6f, 0x74,
|
||||
0x70, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x70,
|
||||
0x62, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x08, 0x6f, 0x74, 0x70, 0x4c, 0x6f, 0x67, 0x69,
|
||||
0x6e, 0x12, 0x31, 0x0a, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
|
||||
0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65,
|
||||
0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75,
|
||||
0x73, 0x74, 0x65, 0x72, 0x12, 0x2b, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
|
||||
0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72,
|
||||
0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
|
||||
0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
||||
0x33,
|
||||
0x12, 0x26, 0x0a, 0x0e, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x4d, 0x6f, 0x62, 0x69,
|
||||
0x6c, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69,
|
||||
0x65, 0x64, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61,
|
||||
0x72, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b,
|
||||
0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04,
|
||||
0x69, 0x73, 0x4f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41,
|
||||
0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
|
||||
0x41, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x65, 0x64,
|
||||
0x49, 0x50, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74,
|
||||
0x65, 0x72, 0x65, 0x64, 0x49, 0x50, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69,
|
||||
0x66, 0x69, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x56, 0x65,
|
||||
0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x73, 0x52, 0x65, 0x6a, 0x65,
|
||||
0x63, 0x74, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x52, 0x65,
|
||||
0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74,
|
||||
0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65,
|
||||
0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73,
|
||||
0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69,
|
||||
0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x36, 0x0a, 0x16, 0x69, 0x73, 0x49, 0x6e,
|
||||
0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69,
|
||||
0x65, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x69, 0x73, 0x49, 0x6e, 0x64, 0x69,
|
||||
0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64,
|
||||
0x12, 0x36, 0x0a, 0x16, 0x69, 0x73, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x69, 0x73, 0x65,
|
||||
0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08,
|
||||
0x52, 0x16, 0x69, 0x73, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x69, 0x73, 0x65, 0x49, 0x64,
|
||||
0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x62, 0x61, 0x6e, 0x64,
|
||||
0x77, 0x69, 0x64, 0x74, 0x68, 0x41, 0x6c, 0x67, 0x6f, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||||
0x0d, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x41, 0x6c, 0x67, 0x6f, 0x12, 0x12,
|
||||
0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x67, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x61,
|
||||
0x6e, 0x67, 0x12, 0x25, 0x0a, 0x08, 0x6f, 0x74, 0x70, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x13,
|
||||
0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52,
|
||||
0x08, 0x6f, 0x74, 0x70, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x31, 0x0a, 0x0b, 0x6e, 0x6f, 0x64,
|
||||
0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f,
|
||||
0x2e, 0x70, 0x62, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52,
|
||||
0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x2b, 0x0a, 0x08,
|
||||
0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f,
|
||||
0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52,
|
||||
0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70,
|
||||
0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
||||
212
pkg/rpc/pb/model_user_mobile_verification.pb.go
Normal file
212
pkg/rpc/pb/model_user_mobile_verification.pb.go
Normal file
@@ -0,0 +1,212 @@
|
||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||||
// versions:
|
||||
// protoc-gen-go v1.31.0
|
||||
// protoc v3.19.4
|
||||
// source: models/model_user_mobile_verification.proto
|
||||
|
||||
package pb
|
||||
|
||||
import (
|
||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||
reflect "reflect"
|
||||
sync "sync"
|
||||
)
|
||||
|
||||
const (
|
||||
// Verify that this generated code is sufficiently up-to-date.
|
||||
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
||||
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
||||
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
||||
)
|
||||
|
||||
// 手机号码认证
|
||||
type UserMobileVerification struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` // ID
|
||||
Mobile string `protobuf:"bytes,2,opt,name=mobile,proto3" json:"mobile,omitempty"` // 手机号码
|
||||
UserId int64 `protobuf:"varint,3,opt,name=userId,proto3" json:"userId,omitempty"` // 用户ID
|
||||
Code string `protobuf:"bytes,4,opt,name=code,proto3" json:"code,omitempty"` // 代号
|
||||
CreatedAt int64 `protobuf:"varint,5,opt,name=createdAt,proto3" json:"createdAt,omitempty"` // 创建时间
|
||||
IsSent bool `protobuf:"varint,6,opt,name=isSent,proto3" json:"isSent,omitempty"` // 已发送
|
||||
IsVerified bool `protobuf:"varint,7,opt,name=isVerified,proto3" json:"isVerified,omitempty"` // 已激活
|
||||
ExpiresAt int64 `protobuf:"varint,8,opt,name=expiresAt,proto3" json:"expiresAt,omitempty"` // 过期时间,动态计算而来
|
||||
}
|
||||
|
||||
func (x *UserMobileVerification) Reset() {
|
||||
*x = UserMobileVerification{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_models_model_user_mobile_verification_proto_msgTypes[0]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *UserMobileVerification) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*UserMobileVerification) ProtoMessage() {}
|
||||
|
||||
func (x *UserMobileVerification) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_models_model_user_mobile_verification_proto_msgTypes[0]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use UserMobileVerification.ProtoReflect.Descriptor instead.
|
||||
func (*UserMobileVerification) Descriptor() ([]byte, []int) {
|
||||
return file_models_model_user_mobile_verification_proto_rawDescGZIP(), []int{0}
|
||||
}
|
||||
|
||||
func (x *UserMobileVerification) GetId() int64 {
|
||||
if x != nil {
|
||||
return x.Id
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *UserMobileVerification) GetMobile() string {
|
||||
if x != nil {
|
||||
return x.Mobile
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *UserMobileVerification) GetUserId() int64 {
|
||||
if x != nil {
|
||||
return x.UserId
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *UserMobileVerification) GetCode() string {
|
||||
if x != nil {
|
||||
return x.Code
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *UserMobileVerification) GetCreatedAt() int64 {
|
||||
if x != nil {
|
||||
return x.CreatedAt
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *UserMobileVerification) GetIsSent() bool {
|
||||
if x != nil {
|
||||
return x.IsSent
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (x *UserMobileVerification) GetIsVerified() bool {
|
||||
if x != nil {
|
||||
return x.IsVerified
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (x *UserMobileVerification) GetExpiresAt() int64 {
|
||||
if x != nil {
|
||||
return x.ExpiresAt
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
var File_models_model_user_mobile_verification_proto protoreflect.FileDescriptor
|
||||
|
||||
var file_models_model_user_mobile_verification_proto_rawDesc = []byte{
|
||||
0x0a, 0x2b, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x75,
|
||||
0x73, 0x65, 0x72, 0x5f, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66,
|
||||
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70,
|
||||
0x62, 0x22, 0xe0, 0x01, 0x0a, 0x16, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65,
|
||||
0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02,
|
||||
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06,
|
||||
0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x6f,
|
||||
0x62, 0x69, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03,
|
||||
0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04,
|
||||
0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65,
|
||||
0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x05, 0x20,
|
||||
0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x16,
|
||||
0x0a, 0x06, 0x69, 0x73, 0x53, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06,
|
||||
0x69, 0x73, 0x53, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69,
|
||||
0x66, 0x69, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x56, 0x65,
|
||||
0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65,
|
||||
0x73, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72,
|
||||
0x65, 0x73, 0x41, 0x74, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72,
|
||||
0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
file_models_model_user_mobile_verification_proto_rawDescOnce sync.Once
|
||||
file_models_model_user_mobile_verification_proto_rawDescData = file_models_model_user_mobile_verification_proto_rawDesc
|
||||
)
|
||||
|
||||
func file_models_model_user_mobile_verification_proto_rawDescGZIP() []byte {
|
||||
file_models_model_user_mobile_verification_proto_rawDescOnce.Do(func() {
|
||||
file_models_model_user_mobile_verification_proto_rawDescData = protoimpl.X.CompressGZIP(file_models_model_user_mobile_verification_proto_rawDescData)
|
||||
})
|
||||
return file_models_model_user_mobile_verification_proto_rawDescData
|
||||
}
|
||||
|
||||
var file_models_model_user_mobile_verification_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
|
||||
var file_models_model_user_mobile_verification_proto_goTypes = []interface{}{
|
||||
(*UserMobileVerification)(nil), // 0: pb.UserMobileVerification
|
||||
}
|
||||
var file_models_model_user_mobile_verification_proto_depIdxs = []int32{
|
||||
0, // [0:0] is the sub-list for method output_type
|
||||
0, // [0:0] is the sub-list for method input_type
|
||||
0, // [0:0] is the sub-list for extension type_name
|
||||
0, // [0:0] is the sub-list for extension extendee
|
||||
0, // [0:0] is the sub-list for field type_name
|
||||
}
|
||||
|
||||
func init() { file_models_model_user_mobile_verification_proto_init() }
|
||||
func file_models_model_user_mobile_verification_proto_init() {
|
||||
if File_models_model_user_mobile_verification_proto != nil {
|
||||
return
|
||||
}
|
||||
if !protoimpl.UnsafeEnabled {
|
||||
file_models_model_user_mobile_verification_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*UserMobileVerification); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
}
|
||||
type x struct{}
|
||||
out := protoimpl.TypeBuilder{
|
||||
File: protoimpl.DescBuilder{
|
||||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
||||
RawDescriptor: file_models_model_user_mobile_verification_proto_rawDesc,
|
||||
NumEnums: 0,
|
||||
NumMessages: 1,
|
||||
NumExtensions: 0,
|
||||
NumServices: 0,
|
||||
},
|
||||
GoTypes: file_models_model_user_mobile_verification_proto_goTypes,
|
||||
DependencyIndexes: file_models_model_user_mobile_verification_proto_depIdxs,
|
||||
MessageInfos: file_models_model_user_mobile_verification_proto_msgTypes,
|
||||
}.Build()
|
||||
File_models_model_user_mobile_verification_proto = out.File
|
||||
file_models_model_user_mobile_verification_proto_rawDesc = nil
|
||||
file_models_model_user_mobile_verification_proto_goTypes = nil
|
||||
file_models_model_user_mobile_verification_proto_depIdxs = nil
|
||||
}
|
||||
250
pkg/rpc/pb/service_sms_sender.pb.go
Normal file
250
pkg/rpc/pb/service_sms_sender.pb.go
Normal file
@@ -0,0 +1,250 @@
|
||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||||
// versions:
|
||||
// protoc-gen-go v1.31.0
|
||||
// protoc v3.19.4
|
||||
// source: service_sms_sender.proto
|
||||
|
||||
package pb
|
||||
|
||||
import (
|
||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||
reflect "reflect"
|
||||
sync "sync"
|
||||
)
|
||||
|
||||
const (
|
||||
// Verify that this generated code is sufficiently up-to-date.
|
||||
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
||||
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
||||
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
||||
)
|
||||
|
||||
// 发送短信
|
||||
type SendSMSRequest struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
Mobile string `protobuf:"bytes,1,opt,name=mobile,proto3" json:"mobile,omitempty"` // 手机号
|
||||
Body string `protobuf:"bytes,2,opt,name=body,proto3" json:"body,omitempty"` // 内容
|
||||
Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"` // 渠道类型:webHook ...
|
||||
ParamsJSON []byte `protobuf:"bytes,4,opt,name=paramsJSON,proto3" json:"paramsJSON,omitempty"` // 参数
|
||||
}
|
||||
|
||||
func (x *SendSMSRequest) Reset() {
|
||||
*x = SendSMSRequest{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_sms_sender_proto_msgTypes[0]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *SendSMSRequest) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*SendSMSRequest) ProtoMessage() {}
|
||||
|
||||
func (x *SendSMSRequest) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_sms_sender_proto_msgTypes[0]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use SendSMSRequest.ProtoReflect.Descriptor instead.
|
||||
func (*SendSMSRequest) Descriptor() ([]byte, []int) {
|
||||
return file_service_sms_sender_proto_rawDescGZIP(), []int{0}
|
||||
}
|
||||
|
||||
func (x *SendSMSRequest) GetMobile() string {
|
||||
if x != nil {
|
||||
return x.Mobile
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *SendSMSRequest) GetBody() string {
|
||||
if x != nil {
|
||||
return x.Body
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *SendSMSRequest) GetType() string {
|
||||
if x != nil {
|
||||
return x.Type
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *SendSMSRequest) GetParamsJSON() []byte {
|
||||
if x != nil {
|
||||
return x.ParamsJSON
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
type SendSMSResponse struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
IsOk bool `protobuf:"varint,1,opt,name=isOk,proto3" json:"isOk,omitempty"` // 是否成功
|
||||
Result string `protobuf:"bytes,2,opt,name=result,proto3" json:"result,omitempty"` // 发送返回内容,只有失败时才会有数据
|
||||
}
|
||||
|
||||
func (x *SendSMSResponse) Reset() {
|
||||
*x = SendSMSResponse{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_sms_sender_proto_msgTypes[1]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *SendSMSResponse) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*SendSMSResponse) ProtoMessage() {}
|
||||
|
||||
func (x *SendSMSResponse) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_sms_sender_proto_msgTypes[1]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use SendSMSResponse.ProtoReflect.Descriptor instead.
|
||||
func (*SendSMSResponse) Descriptor() ([]byte, []int) {
|
||||
return file_service_sms_sender_proto_rawDescGZIP(), []int{1}
|
||||
}
|
||||
|
||||
func (x *SendSMSResponse) GetIsOk() bool {
|
||||
if x != nil {
|
||||
return x.IsOk
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (x *SendSMSResponse) GetResult() string {
|
||||
if x != nil {
|
||||
return x.Result
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
var File_service_sms_sender_proto protoreflect.FileDescriptor
|
||||
|
||||
var file_service_sms_sender_proto_rawDesc = []byte{
|
||||
0x0a, 0x18, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x6d, 0x73, 0x5f, 0x73, 0x65,
|
||||
0x6e, 0x64, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x22, 0x70,
|
||||
0x0a, 0x0e, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x4d, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
||||
0x12, 0x16, 0x0a, 0x06, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x06, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79,
|
||||
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x12, 0x0a, 0x04,
|
||||
0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65,
|
||||
0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x04,
|
||||
0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x4a, 0x53, 0x4f, 0x4e,
|
||||
0x22, 0x3d, 0x0a, 0x0f, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x4d, 0x53, 0x52, 0x65, 0x73, 0x70, 0x6f,
|
||||
0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28,
|
||||
0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c,
|
||||
0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x32,
|
||||
0x46, 0x0a, 0x10, 0x53, 0x4d, 0x53, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76,
|
||||
0x69, 0x63, 0x65, 0x12, 0x32, 0x0a, 0x07, 0x73, 0x65, 0x6e, 0x64, 0x53, 0x4d, 0x53, 0x12, 0x12,
|
||||
0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x4d, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65,
|
||||
0x73, 0x74, 0x1a, 0x13, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x4d, 0x53, 0x52,
|
||||
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62,
|
||||
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
file_service_sms_sender_proto_rawDescOnce sync.Once
|
||||
file_service_sms_sender_proto_rawDescData = file_service_sms_sender_proto_rawDesc
|
||||
)
|
||||
|
||||
func file_service_sms_sender_proto_rawDescGZIP() []byte {
|
||||
file_service_sms_sender_proto_rawDescOnce.Do(func() {
|
||||
file_service_sms_sender_proto_rawDescData = protoimpl.X.CompressGZIP(file_service_sms_sender_proto_rawDescData)
|
||||
})
|
||||
return file_service_sms_sender_proto_rawDescData
|
||||
}
|
||||
|
||||
var file_service_sms_sender_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
|
||||
var file_service_sms_sender_proto_goTypes = []interface{}{
|
||||
(*SendSMSRequest)(nil), // 0: pb.SendSMSRequest
|
||||
(*SendSMSResponse)(nil), // 1: pb.SendSMSResponse
|
||||
}
|
||||
var file_service_sms_sender_proto_depIdxs = []int32{
|
||||
0, // 0: pb.SMSSenderService.sendSMS:input_type -> pb.SendSMSRequest
|
||||
1, // 1: pb.SMSSenderService.sendSMS:output_type -> pb.SendSMSResponse
|
||||
1, // [1:2] is the sub-list for method output_type
|
||||
0, // [0:1] is the sub-list for method input_type
|
||||
0, // [0:0] is the sub-list for extension type_name
|
||||
0, // [0:0] is the sub-list for extension extendee
|
||||
0, // [0:0] is the sub-list for field type_name
|
||||
}
|
||||
|
||||
func init() { file_service_sms_sender_proto_init() }
|
||||
func file_service_sms_sender_proto_init() {
|
||||
if File_service_sms_sender_proto != nil {
|
||||
return
|
||||
}
|
||||
if !protoimpl.UnsafeEnabled {
|
||||
file_service_sms_sender_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*SendSMSRequest); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
file_service_sms_sender_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*SendSMSResponse); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
}
|
||||
type x struct{}
|
||||
out := protoimpl.TypeBuilder{
|
||||
File: protoimpl.DescBuilder{
|
||||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
||||
RawDescriptor: file_service_sms_sender_proto_rawDesc,
|
||||
NumEnums: 0,
|
||||
NumMessages: 2,
|
||||
NumExtensions: 0,
|
||||
NumServices: 1,
|
||||
},
|
||||
GoTypes: file_service_sms_sender_proto_goTypes,
|
||||
DependencyIndexes: file_service_sms_sender_proto_depIdxs,
|
||||
MessageInfos: file_service_sms_sender_proto_msgTypes,
|
||||
}.Build()
|
||||
File_service_sms_sender_proto = out.File
|
||||
file_service_sms_sender_proto_rawDesc = nil
|
||||
file_service_sms_sender_proto_goTypes = nil
|
||||
file_service_sms_sender_proto_depIdxs = nil
|
||||
}
|
||||
109
pkg/rpc/pb/service_sms_sender_grpc.pb.go
Normal file
109
pkg/rpc/pb/service_sms_sender_grpc.pb.go
Normal file
@@ -0,0 +1,109 @@
|
||||
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
|
||||
// versions:
|
||||
// - protoc-gen-go-grpc v1.3.0
|
||||
// - protoc v3.19.4
|
||||
// source: service_sms_sender.proto
|
||||
|
||||
package pb
|
||||
|
||||
import (
|
||||
context "context"
|
||||
grpc "google.golang.org/grpc"
|
||||
codes "google.golang.org/grpc/codes"
|
||||
status "google.golang.org/grpc/status"
|
||||
)
|
||||
|
||||
// This is a compile-time assertion to ensure that this generated file
|
||||
// is compatible with the grpc package it is being compiled against.
|
||||
// Requires gRPC-Go v1.32.0 or later.
|
||||
const _ = grpc.SupportPackageIsVersion7
|
||||
|
||||
const (
|
||||
SMSSenderService_SendSMS_FullMethodName = "/pb.SMSSenderService/sendSMS"
|
||||
)
|
||||
|
||||
// SMSSenderServiceClient is the client API for SMSSenderService service.
|
||||
//
|
||||
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
|
||||
type SMSSenderServiceClient interface {
|
||||
// 发送短信
|
||||
SendSMS(ctx context.Context, in *SendSMSRequest, opts ...grpc.CallOption) (*SendSMSResponse, error)
|
||||
}
|
||||
|
||||
type sMSSenderServiceClient struct {
|
||||
cc grpc.ClientConnInterface
|
||||
}
|
||||
|
||||
func NewSMSSenderServiceClient(cc grpc.ClientConnInterface) SMSSenderServiceClient {
|
||||
return &sMSSenderServiceClient{cc}
|
||||
}
|
||||
|
||||
func (c *sMSSenderServiceClient) SendSMS(ctx context.Context, in *SendSMSRequest, opts ...grpc.CallOption) (*SendSMSResponse, error) {
|
||||
out := new(SendSMSResponse)
|
||||
err := c.cc.Invoke(ctx, SMSSenderService_SendSMS_FullMethodName, in, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
// SMSSenderServiceServer is the server API for SMSSenderService service.
|
||||
// All implementations should embed UnimplementedSMSSenderServiceServer
|
||||
// for forward compatibility
|
||||
type SMSSenderServiceServer interface {
|
||||
// 发送短信
|
||||
SendSMS(context.Context, *SendSMSRequest) (*SendSMSResponse, error)
|
||||
}
|
||||
|
||||
// UnimplementedSMSSenderServiceServer should be embedded to have forward compatible implementations.
|
||||
type UnimplementedSMSSenderServiceServer struct {
|
||||
}
|
||||
|
||||
func (UnimplementedSMSSenderServiceServer) SendSMS(context.Context, *SendSMSRequest) (*SendSMSResponse, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method SendSMS not implemented")
|
||||
}
|
||||
|
||||
// UnsafeSMSSenderServiceServer may be embedded to opt out of forward compatibility for this service.
|
||||
// Use of this interface is not recommended, as added methods to SMSSenderServiceServer will
|
||||
// result in compilation errors.
|
||||
type UnsafeSMSSenderServiceServer interface {
|
||||
mustEmbedUnimplementedSMSSenderServiceServer()
|
||||
}
|
||||
|
||||
func RegisterSMSSenderServiceServer(s grpc.ServiceRegistrar, srv SMSSenderServiceServer) {
|
||||
s.RegisterService(&SMSSenderService_ServiceDesc, srv)
|
||||
}
|
||||
|
||||
func _SMSSenderService_SendSMS_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(SendSMSRequest)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if interceptor == nil {
|
||||
return srv.(SMSSenderServiceServer).SendSMS(ctx, in)
|
||||
}
|
||||
info := &grpc.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: SMSSenderService_SendSMS_FullMethodName,
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
return srv.(SMSSenderServiceServer).SendSMS(ctx, req.(*SendSMSRequest))
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
// SMSSenderService_ServiceDesc is the grpc.ServiceDesc for SMSSenderService service.
|
||||
// It's only intended for direct use with grpc.RegisterService,
|
||||
// and not to be introspected or modified (even as a copy)
|
||||
var SMSSenderService_ServiceDesc = grpc.ServiceDesc{
|
||||
ServiceName: "pb.SMSSenderService",
|
||||
HandlerType: (*SMSSenderServiceServer)(nil),
|
||||
Methods: []grpc.MethodDesc{
|
||||
{
|
||||
MethodName: "sendSMS",
|
||||
Handler: _SMSSenderService_SendSMS_Handler,
|
||||
},
|
||||
},
|
||||
Streams: []grpc.StreamDesc{},
|
||||
Metadata: "service_sms_sender.proto",
|
||||
}
|
||||
@@ -2506,6 +2506,101 @@ func (x *CheckUserEmailResponse) GetExists() bool {
|
||||
return false
|
||||
}
|
||||
|
||||
// 检查手机号码是否已被验证
|
||||
type CheckUserMobileRequest struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
Mobile string `protobuf:"bytes,1,opt,name=mobile,proto3" json:"mobile,omitempty"` // 手机号码
|
||||
}
|
||||
|
||||
func (x *CheckUserMobileRequest) Reset() {
|
||||
*x = CheckUserMobileRequest{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_user_proto_msgTypes[42]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *CheckUserMobileRequest) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*CheckUserMobileRequest) ProtoMessage() {}
|
||||
|
||||
func (x *CheckUserMobileRequest) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_user_proto_msgTypes[42]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use CheckUserMobileRequest.ProtoReflect.Descriptor instead.
|
||||
func (*CheckUserMobileRequest) Descriptor() ([]byte, []int) {
|
||||
return file_service_user_proto_rawDescGZIP(), []int{42}
|
||||
}
|
||||
|
||||
func (x *CheckUserMobileRequest) GetMobile() string {
|
||||
if x != nil {
|
||||
return x.Mobile
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type CheckUserMobileResponse struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
Exists bool `protobuf:"varint,1,opt,name=exists,proto3" json:"exists,omitempty"` // 是否已被使用
|
||||
}
|
||||
|
||||
func (x *CheckUserMobileResponse) Reset() {
|
||||
*x = CheckUserMobileResponse{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_user_proto_msgTypes[43]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *CheckUserMobileResponse) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*CheckUserMobileResponse) ProtoMessage() {}
|
||||
|
||||
func (x *CheckUserMobileResponse) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_user_proto_msgTypes[43]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use CheckUserMobileResponse.ProtoReflect.Descriptor instead.
|
||||
func (*CheckUserMobileResponse) Descriptor() ([]byte, []int) {
|
||||
return file_service_user_proto_rawDescGZIP(), []int{43}
|
||||
}
|
||||
|
||||
func (x *CheckUserMobileResponse) GetExists() bool {
|
||||
if x != nil {
|
||||
return x.Exists
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
// 根据用户名查询用户绑定的邮箱
|
||||
type FindUserVerifiedEmailWithUsernameRequest struct {
|
||||
state protoimpl.MessageState
|
||||
@@ -2518,7 +2613,7 @@ type FindUserVerifiedEmailWithUsernameRequest struct {
|
||||
func (x *FindUserVerifiedEmailWithUsernameRequest) Reset() {
|
||||
*x = FindUserVerifiedEmailWithUsernameRequest{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_user_proto_msgTypes[42]
|
||||
mi := &file_service_user_proto_msgTypes[44]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
@@ -2531,7 +2626,7 @@ func (x *FindUserVerifiedEmailWithUsernameRequest) String() string {
|
||||
func (*FindUserVerifiedEmailWithUsernameRequest) ProtoMessage() {}
|
||||
|
||||
func (x *FindUserVerifiedEmailWithUsernameRequest) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_user_proto_msgTypes[42]
|
||||
mi := &file_service_user_proto_msgTypes[44]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
@@ -2544,7 +2639,7 @@ func (x *FindUserVerifiedEmailWithUsernameRequest) ProtoReflect() protoreflect.M
|
||||
|
||||
// Deprecated: Use FindUserVerifiedEmailWithUsernameRequest.ProtoReflect.Descriptor instead.
|
||||
func (*FindUserVerifiedEmailWithUsernameRequest) Descriptor() ([]byte, []int) {
|
||||
return file_service_user_proto_rawDescGZIP(), []int{42}
|
||||
return file_service_user_proto_rawDescGZIP(), []int{44}
|
||||
}
|
||||
|
||||
func (x *FindUserVerifiedEmailWithUsernameRequest) GetUsername() string {
|
||||
@@ -2565,7 +2660,7 @@ type FindUserVerifiedEmailWithUsernameResponse struct {
|
||||
func (x *FindUserVerifiedEmailWithUsernameResponse) Reset() {
|
||||
*x = FindUserVerifiedEmailWithUsernameResponse{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_user_proto_msgTypes[43]
|
||||
mi := &file_service_user_proto_msgTypes[45]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
@@ -2578,7 +2673,7 @@ func (x *FindUserVerifiedEmailWithUsernameResponse) String() string {
|
||||
func (*FindUserVerifiedEmailWithUsernameResponse) ProtoMessage() {}
|
||||
|
||||
func (x *FindUserVerifiedEmailWithUsernameResponse) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_user_proto_msgTypes[43]
|
||||
mi := &file_service_user_proto_msgTypes[45]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
@@ -2591,7 +2686,7 @@ func (x *FindUserVerifiedEmailWithUsernameResponse) ProtoReflect() protoreflect.
|
||||
|
||||
// Deprecated: Use FindUserVerifiedEmailWithUsernameResponse.ProtoReflect.Descriptor instead.
|
||||
func (*FindUserVerifiedEmailWithUsernameResponse) Descriptor() ([]byte, []int) {
|
||||
return file_service_user_proto_rawDescGZIP(), []int{43}
|
||||
return file_service_user_proto_rawDescGZIP(), []int{45}
|
||||
}
|
||||
|
||||
func (x *FindUserVerifiedEmailWithUsernameResponse) GetEmail() string {
|
||||
@@ -2618,7 +2713,7 @@ type ComposeUserDashboardResponse_DailyTrafficStat struct {
|
||||
func (x *ComposeUserDashboardResponse_DailyTrafficStat) Reset() {
|
||||
*x = ComposeUserDashboardResponse_DailyTrafficStat{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_user_proto_msgTypes[44]
|
||||
mi := &file_service_user_proto_msgTypes[46]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
@@ -2631,7 +2726,7 @@ func (x *ComposeUserDashboardResponse_DailyTrafficStat) String() string {
|
||||
func (*ComposeUserDashboardResponse_DailyTrafficStat) ProtoMessage() {}
|
||||
|
||||
func (x *ComposeUserDashboardResponse_DailyTrafficStat) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_user_proto_msgTypes[44]
|
||||
mi := &file_service_user_proto_msgTypes[46]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
@@ -2708,7 +2803,7 @@ type ComposeUserDashboardResponse_DailyPeekBandwidthStat struct {
|
||||
func (x *ComposeUserDashboardResponse_DailyPeekBandwidthStat) Reset() {
|
||||
*x = ComposeUserDashboardResponse_DailyPeekBandwidthStat{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_user_proto_msgTypes[45]
|
||||
mi := &file_service_user_proto_msgTypes[47]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
@@ -2721,7 +2816,7 @@ func (x *ComposeUserDashboardResponse_DailyPeekBandwidthStat) String() string {
|
||||
func (*ComposeUserDashboardResponse_DailyPeekBandwidthStat) ProtoMessage() {}
|
||||
|
||||
func (x *ComposeUserDashboardResponse_DailyPeekBandwidthStat) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_user_proto_msgTypes[45]
|
||||
mi := &file_service_user_proto_msgTypes[47]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
@@ -2763,7 +2858,7 @@ type ComposeUserGlobalBoardResponse_DailyStat struct {
|
||||
func (x *ComposeUserGlobalBoardResponse_DailyStat) Reset() {
|
||||
*x = ComposeUserGlobalBoardResponse_DailyStat{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_user_proto_msgTypes[46]
|
||||
mi := &file_service_user_proto_msgTypes[48]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
@@ -2776,7 +2871,7 @@ func (x *ComposeUserGlobalBoardResponse_DailyStat) String() string {
|
||||
func (*ComposeUserGlobalBoardResponse_DailyStat) ProtoMessage() {}
|
||||
|
||||
func (x *ComposeUserGlobalBoardResponse_DailyStat) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_user_proto_msgTypes[46]
|
||||
mi := &file_service_user_proto_msgTypes[48]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
@@ -2820,7 +2915,7 @@ type ComposeUserGlobalBoardResponse_TrafficStat struct {
|
||||
func (x *ComposeUserGlobalBoardResponse_TrafficStat) Reset() {
|
||||
*x = ComposeUserGlobalBoardResponse_TrafficStat{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_user_proto_msgTypes[47]
|
||||
mi := &file_service_user_proto_msgTypes[49]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
@@ -2833,7 +2928,7 @@ func (x *ComposeUserGlobalBoardResponse_TrafficStat) String() string {
|
||||
func (*ComposeUserGlobalBoardResponse_TrafficStat) ProtoMessage() {}
|
||||
|
||||
func (x *ComposeUserGlobalBoardResponse_TrafficStat) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_user_proto_msgTypes[47]
|
||||
mi := &file_service_user_proto_msgTypes[49]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
@@ -3212,151 +3307,162 @@ var file_service_user_proto_rawDesc = []byte{
|
||||
0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x22, 0x30, 0x0a, 0x16, 0x43, 0x68, 0x65,
|
||||
0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f,
|
||||
0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20,
|
||||
0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x22, 0x46, 0x0a, 0x28, 0x46,
|
||||
0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45,
|
||||
0x6d, 0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65,
|
||||
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e,
|
||||
0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e,
|
||||
0x61, 0x6d, 0x65, 0x22, 0x41, 0x0a, 0x29, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56,
|
||||
0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68,
|
||||
0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
|
||||
0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||||
0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x32, 0xe2, 0x10, 0x0a, 0x0b, 0x55, 0x73, 0x65, 0x72, 0x53,
|
||||
0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
|
||||
0x55, 0x73, 0x65, 0x72, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
|
||||
0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x70, 0x62,
|
||||
0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f,
|
||||
0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0c, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x55,
|
||||
0x73, 0x65, 0x72, 0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65,
|
||||
0x72, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x70,
|
||||
0x62, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
|
||||
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x0a, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79,
|
||||
0x55, 0x73, 0x65, 0x72, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79,
|
||||
0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62,
|
||||
0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x33, 0x0a, 0x0a, 0x75,
|
||||
0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x55,
|
||||
0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
||||
0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73,
|
||||
0x12, 0x33, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x15,
|
||||
0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
|
||||
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75,
|
||||
0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x4d, 0x0a, 0x14, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c,
|
||||
0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x1f, 0x2e,
|
||||
0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c,
|
||||
0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14,
|
||||
0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70,
|
||||
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x10, 0x6c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62,
|
||||
0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69,
|
||||
0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65,
|
||||
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45,
|
||||
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
|
||||
0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0f, 0x66, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c,
|
||||
0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64,
|
||||
0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
|
||||
0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62,
|
||||
0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
|
||||
0x50, 0x0a, 0x11, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72,
|
||||
0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55,
|
||||
0x73, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
|
||||
0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65,
|
||||
0x72, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
|
||||
0x65, 0x12, 0x38, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x12, 0x14,
|
||||
0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71,
|
||||
0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x55,
|
||||
0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0e, 0x75,
|
||||
0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x2e,
|
||||
0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66,
|
||||
0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50,
|
||||
0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x3d, 0x0a, 0x0f, 0x75, 0x70, 0x64, 0x61,
|
||||
0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x1a, 0x2e, 0x70, 0x62,
|
||||
0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, 0x6e,
|
||||
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43,
|
||||
0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x59, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x70, 0x6f,
|
||||
0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x12,
|
||||
0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72,
|
||||
0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
||||
0x1a, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65,
|
||||
0x72, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
|
||||
0x73, 0x65, 0x12, 0x5c, 0x0a, 0x15, 0x66, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f,
|
||||
0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x2e, 0x70, 0x62,
|
||||
0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75,
|
||||
0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e,
|
||||
0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x43,
|
||||
0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
|
||||
0x12, 0x43, 0x0a, 0x12, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65,
|
||||
0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61,
|
||||
0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65,
|
||||
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75,
|
||||
0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x4b, 0x0a, 0x16, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41,
|
||||
0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x73, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12,
|
||||
0x21, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x55, 0x73,
|
||||
0x65, 0x72, 0x73, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
|
||||
0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65,
|
||||
0x73, 0x73, 0x12, 0x4d, 0x0a, 0x10, 0x66, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65,
|
||||
0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64,
|
||||
0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75,
|
||||
0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65,
|
||||
0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
|
||||
0x65, 0x12, 0x74, 0x0a, 0x1d, 0x66, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72,
|
||||
0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f,
|
||||
0x6e, 0x73, 0x12, 0x28, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x55,
|
||||
0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69,
|
||||
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x70,
|
||||
0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61,
|
||||
0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52,
|
||||
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x16, 0x63, 0x6f, 0x6d, 0x70, 0x6f,
|
||||
0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72,
|
||||
0x64, 0x12, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73,
|
||||
0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71,
|
||||
0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73,
|
||||
0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x42, 0x6f, 0x61, 0x72, 0x64,
|
||||
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x18, 0x63, 0x68, 0x65, 0x63,
|
||||
0x6b, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72,
|
||||
0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55,
|
||||
0x73, 0x65, 0x72, 0x4f, 0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61,
|
||||
0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x70, 0x62, 0x2e, 0x43,
|
||||
0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55,
|
||||
0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
|
||||
0x50, 0x0a, 0x11, 0x66, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65,
|
||||
0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73,
|
||||
0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65,
|
||||
0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72,
|
||||
0x50, 0x72, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
|
||||
0x65, 0x12, 0x45, 0x0a, 0x13, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50,
|
||||
0x72, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70,
|
||||
0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70,
|
||||
0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50,
|
||||
0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x49, 0x0a, 0x15, 0x75, 0x70, 0x64, 0x61,
|
||||
0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f,
|
||||
0x64, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65,
|
||||
0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x75,
|
||||
0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63,
|
||||
0x65, 0x73, 0x73, 0x12, 0x5c, 0x0a, 0x15, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72,
|
||||
0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x20, 0x2e, 0x70,
|
||||
0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65,
|
||||
0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21,
|
||||
0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72,
|
||||
0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
|
||||
0x65, 0x12, 0x5c, 0x0a, 0x15, 0x72, 0x65, 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65,
|
||||
0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e,
|
||||
0x52, 0x65, 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73,
|
||||
0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x70,
|
||||
0x62, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65,
|
||||
0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
|
||||
0x47, 0x0a, 0x0e, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x45, 0x6d, 0x61, 0x69,
|
||||
0x6c, 0x12, 0x19, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72,
|
||||
0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x70,
|
||||
0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c,
|
||||
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x80, 0x01, 0x0a, 0x21, 0x66, 0x69, 0x6e,
|
||||
0x64, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x61,
|
||||
0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2c,
|
||||
0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69,
|
||||
0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x22, 0x30, 0x0a, 0x16, 0x43,
|
||||
0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x52, 0x65,
|
||||
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x18,
|
||||
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x22, 0x31, 0x0a,
|
||||
0x17, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65,
|
||||
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x69, 0x73,
|
||||
0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73,
|
||||
0x22, 0x46, 0x0a, 0x28, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69,
|
||||
0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65,
|
||||
0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x70,
|
||||
0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69,
|
||||
0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e,
|
||||
0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e,
|
||||
0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08,
|
||||
0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
|
||||
0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x41, 0x0a, 0x29, 0x46, 0x69, 0x6e, 0x64,
|
||||
0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69,
|
||||
0x6c, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73,
|
||||
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x01,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x32, 0xae, 0x11, 0x0a, 0x0b,
|
||||
0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x63,
|
||||
0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x43,
|
||||
0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
||||
0x1a, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72,
|
||||
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0c, 0x72, 0x65, 0x67, 0x69,
|
||||
0x73, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65,
|
||||
0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
|
||||
0x74, 0x1a, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x55,
|
||||
0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x0a, 0x76,
|
||||
0x65, 0x72, 0x69, 0x66, 0x79, 0x55, 0x73, 0x65, 0x72, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x56,
|
||||
0x65, 0x72, 0x69, 0x66, 0x79, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
||||
0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73,
|
||||
0x12, 0x33, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x15,
|
||||
0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
|
||||
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75,
|
||||
0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x33, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55,
|
||||
0x73, 0x65, 0x72, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55,
|
||||
0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e,
|
||||
0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x4d, 0x0a, 0x14, 0x63, 0x6f,
|
||||
0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65,
|
||||
0x72, 0x73, 0x12, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c,
|
||||
0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75,
|
||||
0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x43, 0x6f, 0x75, 0x6e,
|
||||
0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x10, 0x6c, 0x69, 0x73,
|
||||
0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x2e,
|
||||
0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73,
|
||||
0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x62, 0x2e,
|
||||
0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73,
|
||||
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0f, 0x66, 0x69, 0x6e, 0x64,
|
||||
0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1a, 0x2e, 0x70, 0x62,
|
||||
0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72,
|
||||
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e,
|
||||
0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70,
|
||||
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x11, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65,
|
||||
0x72, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x43,
|
||||
0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65,
|
||||
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65,
|
||||
0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65,
|
||||
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x55,
|
||||
0x73, 0x65, 0x72, 0x12, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x55, 0x73,
|
||||
0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x4c,
|
||||
0x6f, 0x67, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
|
||||
0x12, 0x3b, 0x0a, 0x0e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e,
|
||||
0x66, 0x6f, 0x12, 0x19, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73,
|
||||
0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e,
|
||||
0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x3d, 0x0a,
|
||||
0x0f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, 0x6e,
|
||||
0x12, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72,
|
||||
0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70,
|
||||
0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x59, 0x0a, 0x14,
|
||||
0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x73, 0x68, 0x62,
|
||||
0x6f, 0x61, 0x72, 0x64, 0x12, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73,
|
||||
0x65, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65,
|
||||
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f,
|
||||
0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52,
|
||||
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x15, 0x66, 0x69, 0x6e, 0x64, 0x55,
|
||||
0x73, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64,
|
||||
0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f,
|
||||
0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65,
|
||||
0x73, 0x74, 0x1a, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72,
|
||||
0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x73,
|
||||
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x12, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55,
|
||||
0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x1d, 0x2e, 0x70, 0x62,
|
||||
0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75,
|
||||
0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e,
|
||||
0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x4b, 0x0a, 0x16, 0x75, 0x70,
|
||||
0x64, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x73, 0x46, 0x65, 0x61, 0x74,
|
||||
0x75, 0x72, 0x65, 0x73, 0x12, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
|
||||
0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x73, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
|
||||
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43,
|
||||
0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x4d, 0x0a, 0x10, 0x66, 0x69, 0x6e, 0x64, 0x55,
|
||||
0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x1b, 0x2e, 0x70, 0x62,
|
||||
0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
|
||||
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69,
|
||||
0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65,
|
||||
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x1d, 0x66, 0x69, 0x6e, 0x64, 0x41, 0x6c,
|
||||
0x6c, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x66, 0x69,
|
||||
0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x28, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e,
|
||||
0x64, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x44,
|
||||
0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
|
||||
0x74, 0x1a, 0x29, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x55, 0x73,
|
||||
0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74,
|
||||
0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x16,
|
||||
0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62, 0x61,
|
||||
0x6c, 0x42, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70,
|
||||
0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x42, 0x6f, 0x61,
|
||||
0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x62, 0x2e, 0x43,
|
||||
0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c,
|
||||
0x42, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a,
|
||||
0x18, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x54, 0x50, 0x57, 0x69, 0x74,
|
||||
0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x2e, 0x70, 0x62, 0x2e, 0x43,
|
||||
0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x54, 0x50, 0x57, 0x69, 0x74, 0x68, 0x55,
|
||||
0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24,
|
||||
0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x54, 0x50,
|
||||
0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70,
|
||||
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x11, 0x66, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72,
|
||||
0x50, 0x72, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x46,
|
||||
0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f,
|
||||
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e,
|
||||
0x64, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65,
|
||||
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x13, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
|
||||
0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x2e,
|
||||
0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69,
|
||||
0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e,
|
||||
0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x49, 0x0a,
|
||||
0x15, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65,
|
||||
0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61,
|
||||
0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f,
|
||||
0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50,
|
||||
0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x5c, 0x0a, 0x15, 0x63, 0x68, 0x65, 0x63,
|
||||
0x6b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74,
|
||||
0x65, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72,
|
||||
0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75,
|
||||
0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73,
|
||||
0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65,
|
||||
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x15, 0x72, 0x65, 0x6e, 0x65, 0x77, 0x55,
|
||||
0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12,
|
||||
0x20, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65,
|
||||
0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
|
||||
0x74, 0x1a, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72,
|
||||
0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70,
|
||||
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x0e, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65,
|
||||
0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x19, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63,
|
||||
0x6b, 0x55, 0x73, 0x65, 0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
|
||||
0x74, 0x1a, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72,
|
||||
0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a,
|
||||
0x0f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65,
|
||||
0x12, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4d,
|
||||
0x6f, 0x62, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x70,
|
||||
0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c,
|
||||
0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x80, 0x01, 0x0a, 0x21, 0x66, 0x69,
|
||||
0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d,
|
||||
0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12,
|
||||
0x2c, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72,
|
||||
0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73,
|
||||
0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e,
|
||||
0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66,
|
||||
0x69, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72,
|
||||
0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a, 0x04,
|
||||
0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
@@ -3371,7 +3477,7 @@ func file_service_user_proto_rawDescGZIP() []byte {
|
||||
return file_service_user_proto_rawDescData
|
||||
}
|
||||
|
||||
var file_service_user_proto_msgTypes = make([]protoimpl.MessageInfo, 48)
|
||||
var file_service_user_proto_msgTypes = make([]protoimpl.MessageInfo, 50)
|
||||
var file_service_user_proto_goTypes = []interface{}{
|
||||
(*CreateUserRequest)(nil), // 0: pb.CreateUserRequest
|
||||
(*CreateUserResponse)(nil), // 1: pb.CreateUserResponse
|
||||
@@ -3415,30 +3521,32 @@ var file_service_user_proto_goTypes = []interface{}{
|
||||
(*RenewUserServersStateResponse)(nil), // 39: pb.RenewUserServersStateResponse
|
||||
(*CheckUserEmailRequest)(nil), // 40: pb.CheckUserEmailRequest
|
||||
(*CheckUserEmailResponse)(nil), // 41: pb.CheckUserEmailResponse
|
||||
(*FindUserVerifiedEmailWithUsernameRequest)(nil), // 42: pb.FindUserVerifiedEmailWithUsernameRequest
|
||||
(*FindUserVerifiedEmailWithUsernameResponse)(nil), // 43: pb.FindUserVerifiedEmailWithUsernameResponse
|
||||
(*ComposeUserDashboardResponse_DailyTrafficStat)(nil), // 44: pb.ComposeUserDashboardResponse.DailyTrafficStat
|
||||
(*ComposeUserDashboardResponse_DailyPeekBandwidthStat)(nil), // 45: pb.ComposeUserDashboardResponse.DailyPeekBandwidthStat
|
||||
(*ComposeUserGlobalBoardResponse_DailyStat)(nil), // 46: pb.ComposeUserGlobalBoardResponse.DailyStat
|
||||
(*ComposeUserGlobalBoardResponse_TrafficStat)(nil), // 47: pb.ComposeUserGlobalBoardResponse.TrafficStat
|
||||
(*User)(nil), // 48: pb.User
|
||||
(*UserFeature)(nil), // 49: pb.UserFeature
|
||||
(*NodeValue)(nil), // 50: pb.NodeValue
|
||||
(*RPCSuccess)(nil), // 51: pb.RPCSuccess
|
||||
(*RPCCountResponse)(nil), // 52: pb.RPCCountResponse
|
||||
(*CheckUserMobileRequest)(nil), // 42: pb.CheckUserMobileRequest
|
||||
(*CheckUserMobileResponse)(nil), // 43: pb.CheckUserMobileResponse
|
||||
(*FindUserVerifiedEmailWithUsernameRequest)(nil), // 44: pb.FindUserVerifiedEmailWithUsernameRequest
|
||||
(*FindUserVerifiedEmailWithUsernameResponse)(nil), // 45: pb.FindUserVerifiedEmailWithUsernameResponse
|
||||
(*ComposeUserDashboardResponse_DailyTrafficStat)(nil), // 46: pb.ComposeUserDashboardResponse.DailyTrafficStat
|
||||
(*ComposeUserDashboardResponse_DailyPeekBandwidthStat)(nil), // 47: pb.ComposeUserDashboardResponse.DailyPeekBandwidthStat
|
||||
(*ComposeUserGlobalBoardResponse_DailyStat)(nil), // 48: pb.ComposeUserGlobalBoardResponse.DailyStat
|
||||
(*ComposeUserGlobalBoardResponse_TrafficStat)(nil), // 49: pb.ComposeUserGlobalBoardResponse.TrafficStat
|
||||
(*User)(nil), // 50: pb.User
|
||||
(*UserFeature)(nil), // 51: pb.UserFeature
|
||||
(*NodeValue)(nil), // 52: pb.NodeValue
|
||||
(*RPCSuccess)(nil), // 53: pb.RPCSuccess
|
||||
(*RPCCountResponse)(nil), // 54: pb.RPCCountResponse
|
||||
}
|
||||
var file_service_user_proto_depIdxs = []int32{
|
||||
48, // 0: pb.ListEnabledUsersResponse.users:type_name -> pb.User
|
||||
48, // 1: pb.FindEnabledUserResponse.user:type_name -> pb.User
|
||||
44, // 2: pb.ComposeUserDashboardResponse.dailyTrafficStats:type_name -> pb.ComposeUserDashboardResponse.DailyTrafficStat
|
||||
45, // 3: pb.ComposeUserDashboardResponse.dailyPeekBandwidthStats:type_name -> pb.ComposeUserDashboardResponse.DailyPeekBandwidthStat
|
||||
49, // 4: pb.FindUserFeaturesResponse.features:type_name -> pb.UserFeature
|
||||
49, // 5: pb.FindAllUserFeatureDefinitionsResponse.features:type_name -> pb.UserFeature
|
||||
46, // 6: pb.ComposeUserGlobalBoardResponse.dailyStats:type_name -> pb.ComposeUserGlobalBoardResponse.DailyStat
|
||||
50, // 7: pb.ComposeUserGlobalBoardResponse.cpuNodeValues:type_name -> pb.NodeValue
|
||||
50, // 8: pb.ComposeUserGlobalBoardResponse.memoryNodeValues:type_name -> pb.NodeValue
|
||||
50, // 9: pb.ComposeUserGlobalBoardResponse.loadNodeValues:type_name -> pb.NodeValue
|
||||
47, // 10: pb.ComposeUserGlobalBoardResponse.topTrafficStats:type_name -> pb.ComposeUserGlobalBoardResponse.TrafficStat
|
||||
50, // 0: pb.ListEnabledUsersResponse.users:type_name -> pb.User
|
||||
50, // 1: pb.FindEnabledUserResponse.user:type_name -> pb.User
|
||||
46, // 2: pb.ComposeUserDashboardResponse.dailyTrafficStats:type_name -> pb.ComposeUserDashboardResponse.DailyTrafficStat
|
||||
47, // 3: pb.ComposeUserDashboardResponse.dailyPeekBandwidthStats:type_name -> pb.ComposeUserDashboardResponse.DailyPeekBandwidthStat
|
||||
51, // 4: pb.FindUserFeaturesResponse.features:type_name -> pb.UserFeature
|
||||
51, // 5: pb.FindAllUserFeatureDefinitionsResponse.features:type_name -> pb.UserFeature
|
||||
48, // 6: pb.ComposeUserGlobalBoardResponse.dailyStats:type_name -> pb.ComposeUserGlobalBoardResponse.DailyStat
|
||||
52, // 7: pb.ComposeUserGlobalBoardResponse.cpuNodeValues:type_name -> pb.NodeValue
|
||||
52, // 8: pb.ComposeUserGlobalBoardResponse.memoryNodeValues:type_name -> pb.NodeValue
|
||||
52, // 9: pb.ComposeUserGlobalBoardResponse.loadNodeValues:type_name -> pb.NodeValue
|
||||
49, // 10: pb.ComposeUserGlobalBoardResponse.topTrafficStats:type_name -> pb.ComposeUserGlobalBoardResponse.TrafficStat
|
||||
0, // 11: pb.UserService.createUser:input_type -> pb.CreateUserRequest
|
||||
2, // 12: pb.UserService.registerUser:input_type -> pb.RegisterUserRequest
|
||||
4, // 13: pb.UserService.verifyUser:input_type -> pb.VerifyUserRequest
|
||||
@@ -3465,36 +3573,38 @@ var file_service_user_proto_depIdxs = []int32{
|
||||
36, // 34: pb.UserService.checkUserServersState:input_type -> pb.CheckUserServersStateRequest
|
||||
38, // 35: pb.UserService.renewUserServersState:input_type -> pb.RenewUserServersStateRequest
|
||||
40, // 36: pb.UserService.checkUserEmail:input_type -> pb.CheckUserEmailRequest
|
||||
42, // 37: pb.UserService.findUserVerifiedEmailWithUsername:input_type -> pb.FindUserVerifiedEmailWithUsernameRequest
|
||||
1, // 38: pb.UserService.createUser:output_type -> pb.CreateUserResponse
|
||||
3, // 39: pb.UserService.registerUser:output_type -> pb.RegisterUserResponse
|
||||
51, // 40: pb.UserService.verifyUser:output_type -> pb.RPCSuccess
|
||||
51, // 41: pb.UserService.updateUser:output_type -> pb.RPCSuccess
|
||||
51, // 42: pb.UserService.deleteUser:output_type -> pb.RPCSuccess
|
||||
52, // 43: pb.UserService.countAllEnabledUsers:output_type -> pb.RPCCountResponse
|
||||
9, // 44: pb.UserService.listEnabledUsers:output_type -> pb.ListEnabledUsersResponse
|
||||
11, // 45: pb.UserService.findEnabledUser:output_type -> pb.FindEnabledUserResponse
|
||||
13, // 46: pb.UserService.checkUserUsername:output_type -> pb.CheckUserUsernameResponse
|
||||
15, // 47: pb.UserService.loginUser:output_type -> pb.LoginUserResponse
|
||||
51, // 48: pb.UserService.updateUserInfo:output_type -> pb.RPCSuccess
|
||||
51, // 49: pb.UserService.updateUserLogin:output_type -> pb.RPCSuccess
|
||||
19, // 50: pb.UserService.composeUserDashboard:output_type -> pb.ComposeUserDashboardResponse
|
||||
21, // 51: pb.UserService.findUserNodeClusterId:output_type -> pb.FindUserNodeClusterIdResponse
|
||||
51, // 52: pb.UserService.updateUserFeatures:output_type -> pb.RPCSuccess
|
||||
51, // 53: pb.UserService.updateAllUsersFeatures:output_type -> pb.RPCSuccess
|
||||
25, // 54: pb.UserService.findUserFeatures:output_type -> pb.FindUserFeaturesResponse
|
||||
27, // 55: pb.UserService.findAllUserFeatureDefinitions:output_type -> pb.FindAllUserFeatureDefinitionsResponse
|
||||
29, // 56: pb.UserService.composeUserGlobalBoard:output_type -> pb.ComposeUserGlobalBoardResponse
|
||||
31, // 57: pb.UserService.checkUserOTPWithUsername:output_type -> pb.CheckUserOTPWithUsernameResponse
|
||||
33, // 58: pb.UserService.findUserPriceInfo:output_type -> pb.FindUserPriceInfoResponse
|
||||
51, // 59: pb.UserService.updateUserPriceType:output_type -> pb.RPCSuccess
|
||||
51, // 60: pb.UserService.updateUserPricePeriod:output_type -> pb.RPCSuccess
|
||||
37, // 61: pb.UserService.checkUserServersState:output_type -> pb.CheckUserServersStateResponse
|
||||
39, // 62: pb.UserService.renewUserServersState:output_type -> pb.RenewUserServersStateResponse
|
||||
41, // 63: pb.UserService.checkUserEmail:output_type -> pb.CheckUserEmailResponse
|
||||
43, // 64: pb.UserService.findUserVerifiedEmailWithUsername:output_type -> pb.FindUserVerifiedEmailWithUsernameResponse
|
||||
38, // [38:65] is the sub-list for method output_type
|
||||
11, // [11:38] is the sub-list for method input_type
|
||||
42, // 37: pb.UserService.checkUserMobile:input_type -> pb.CheckUserMobileRequest
|
||||
44, // 38: pb.UserService.findUserVerifiedEmailWithUsername:input_type -> pb.FindUserVerifiedEmailWithUsernameRequest
|
||||
1, // 39: pb.UserService.createUser:output_type -> pb.CreateUserResponse
|
||||
3, // 40: pb.UserService.registerUser:output_type -> pb.RegisterUserResponse
|
||||
53, // 41: pb.UserService.verifyUser:output_type -> pb.RPCSuccess
|
||||
53, // 42: pb.UserService.updateUser:output_type -> pb.RPCSuccess
|
||||
53, // 43: pb.UserService.deleteUser:output_type -> pb.RPCSuccess
|
||||
54, // 44: pb.UserService.countAllEnabledUsers:output_type -> pb.RPCCountResponse
|
||||
9, // 45: pb.UserService.listEnabledUsers:output_type -> pb.ListEnabledUsersResponse
|
||||
11, // 46: pb.UserService.findEnabledUser:output_type -> pb.FindEnabledUserResponse
|
||||
13, // 47: pb.UserService.checkUserUsername:output_type -> pb.CheckUserUsernameResponse
|
||||
15, // 48: pb.UserService.loginUser:output_type -> pb.LoginUserResponse
|
||||
53, // 49: pb.UserService.updateUserInfo:output_type -> pb.RPCSuccess
|
||||
53, // 50: pb.UserService.updateUserLogin:output_type -> pb.RPCSuccess
|
||||
19, // 51: pb.UserService.composeUserDashboard:output_type -> pb.ComposeUserDashboardResponse
|
||||
21, // 52: pb.UserService.findUserNodeClusterId:output_type -> pb.FindUserNodeClusterIdResponse
|
||||
53, // 53: pb.UserService.updateUserFeatures:output_type -> pb.RPCSuccess
|
||||
53, // 54: pb.UserService.updateAllUsersFeatures:output_type -> pb.RPCSuccess
|
||||
25, // 55: pb.UserService.findUserFeatures:output_type -> pb.FindUserFeaturesResponse
|
||||
27, // 56: pb.UserService.findAllUserFeatureDefinitions:output_type -> pb.FindAllUserFeatureDefinitionsResponse
|
||||
29, // 57: pb.UserService.composeUserGlobalBoard:output_type -> pb.ComposeUserGlobalBoardResponse
|
||||
31, // 58: pb.UserService.checkUserOTPWithUsername:output_type -> pb.CheckUserOTPWithUsernameResponse
|
||||
33, // 59: pb.UserService.findUserPriceInfo:output_type -> pb.FindUserPriceInfoResponse
|
||||
53, // 60: pb.UserService.updateUserPriceType:output_type -> pb.RPCSuccess
|
||||
53, // 61: pb.UserService.updateUserPricePeriod:output_type -> pb.RPCSuccess
|
||||
37, // 62: pb.UserService.checkUserServersState:output_type -> pb.CheckUserServersStateResponse
|
||||
39, // 63: pb.UserService.renewUserServersState:output_type -> pb.RenewUserServersStateResponse
|
||||
41, // 64: pb.UserService.checkUserEmail:output_type -> pb.CheckUserEmailResponse
|
||||
43, // 65: pb.UserService.checkUserMobile:output_type -> pb.CheckUserMobileResponse
|
||||
45, // 66: pb.UserService.findUserVerifiedEmailWithUsername:output_type -> pb.FindUserVerifiedEmailWithUsernameResponse
|
||||
39, // [39:67] is the sub-list for method output_type
|
||||
11, // [11:39] is the sub-list for method input_type
|
||||
11, // [11:11] is the sub-list for extension type_name
|
||||
11, // [11:11] is the sub-list for extension extendee
|
||||
0, // [0:11] is the sub-list for field type_name
|
||||
@@ -4015,7 +4125,7 @@ func file_service_user_proto_init() {
|
||||
}
|
||||
}
|
||||
file_service_user_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*FindUserVerifiedEmailWithUsernameRequest); i {
|
||||
switch v := v.(*CheckUserMobileRequest); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
@@ -4027,7 +4137,7 @@ func file_service_user_proto_init() {
|
||||
}
|
||||
}
|
||||
file_service_user_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*FindUserVerifiedEmailWithUsernameResponse); i {
|
||||
switch v := v.(*CheckUserMobileResponse); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
@@ -4039,7 +4149,7 @@ func file_service_user_proto_init() {
|
||||
}
|
||||
}
|
||||
file_service_user_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*ComposeUserDashboardResponse_DailyTrafficStat); i {
|
||||
switch v := v.(*FindUserVerifiedEmailWithUsernameRequest); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
@@ -4051,7 +4161,7 @@ func file_service_user_proto_init() {
|
||||
}
|
||||
}
|
||||
file_service_user_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*ComposeUserDashboardResponse_DailyPeekBandwidthStat); i {
|
||||
switch v := v.(*FindUserVerifiedEmailWithUsernameResponse); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
@@ -4063,7 +4173,7 @@ func file_service_user_proto_init() {
|
||||
}
|
||||
}
|
||||
file_service_user_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*ComposeUserGlobalBoardResponse_DailyStat); i {
|
||||
switch v := v.(*ComposeUserDashboardResponse_DailyTrafficStat); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
@@ -4075,6 +4185,30 @@ func file_service_user_proto_init() {
|
||||
}
|
||||
}
|
||||
file_service_user_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*ComposeUserDashboardResponse_DailyPeekBandwidthStat); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
file_service_user_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*ComposeUserGlobalBoardResponse_DailyStat); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
file_service_user_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*ComposeUserGlobalBoardResponse_TrafficStat); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
@@ -4093,7 +4227,7 @@ func file_service_user_proto_init() {
|
||||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
||||
RawDescriptor: file_service_user_proto_rawDesc,
|
||||
NumEnums: 0,
|
||||
NumMessages: 48,
|
||||
NumMessages: 50,
|
||||
NumExtensions: 0,
|
||||
NumServices: 1,
|
||||
},
|
||||
|
||||
@@ -45,6 +45,7 @@ const (
|
||||
UserService_CheckUserServersState_FullMethodName = "/pb.UserService/checkUserServersState"
|
||||
UserService_RenewUserServersState_FullMethodName = "/pb.UserService/renewUserServersState"
|
||||
UserService_CheckUserEmail_FullMethodName = "/pb.UserService/checkUserEmail"
|
||||
UserService_CheckUserMobile_FullMethodName = "/pb.UserService/checkUserMobile"
|
||||
UserService_FindUserVerifiedEmailWithUsername_FullMethodName = "/pb.UserService/findUserVerifiedEmailWithUsername"
|
||||
)
|
||||
|
||||
@@ -104,6 +105,8 @@ type UserServiceClient interface {
|
||||
RenewUserServersState(ctx context.Context, in *RenewUserServersStateRequest, opts ...grpc.CallOption) (*RenewUserServersStateResponse, error)
|
||||
// 检查邮箱是否已被使用
|
||||
CheckUserEmail(ctx context.Context, in *CheckUserEmailRequest, opts ...grpc.CallOption) (*CheckUserEmailResponse, error)
|
||||
// 检查手机号码是否已被使用
|
||||
CheckUserMobile(ctx context.Context, in *CheckUserMobileRequest, opts ...grpc.CallOption) (*CheckUserMobileResponse, error)
|
||||
// 根据用户名查询用户绑定的邮箱
|
||||
FindUserVerifiedEmailWithUsername(ctx context.Context, in *FindUserVerifiedEmailWithUsernameRequest, opts ...grpc.CallOption) (*FindUserVerifiedEmailWithUsernameResponse, error)
|
||||
}
|
||||
@@ -350,6 +353,15 @@ func (c *userServiceClient) CheckUserEmail(ctx context.Context, in *CheckUserEma
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *userServiceClient) CheckUserMobile(ctx context.Context, in *CheckUserMobileRequest, opts ...grpc.CallOption) (*CheckUserMobileResponse, error) {
|
||||
out := new(CheckUserMobileResponse)
|
||||
err := c.cc.Invoke(ctx, UserService_CheckUserMobile_FullMethodName, in, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *userServiceClient) FindUserVerifiedEmailWithUsername(ctx context.Context, in *FindUserVerifiedEmailWithUsernameRequest, opts ...grpc.CallOption) (*FindUserVerifiedEmailWithUsernameResponse, error) {
|
||||
out := new(FindUserVerifiedEmailWithUsernameResponse)
|
||||
err := c.cc.Invoke(ctx, UserService_FindUserVerifiedEmailWithUsername_FullMethodName, in, out, opts...)
|
||||
@@ -415,6 +427,8 @@ type UserServiceServer interface {
|
||||
RenewUserServersState(context.Context, *RenewUserServersStateRequest) (*RenewUserServersStateResponse, error)
|
||||
// 检查邮箱是否已被使用
|
||||
CheckUserEmail(context.Context, *CheckUserEmailRequest) (*CheckUserEmailResponse, error)
|
||||
// 检查手机号码是否已被使用
|
||||
CheckUserMobile(context.Context, *CheckUserMobileRequest) (*CheckUserMobileResponse, error)
|
||||
// 根据用户名查询用户绑定的邮箱
|
||||
FindUserVerifiedEmailWithUsername(context.Context, *FindUserVerifiedEmailWithUsernameRequest) (*FindUserVerifiedEmailWithUsernameResponse, error)
|
||||
}
|
||||
@@ -501,6 +515,9 @@ func (UnimplementedUserServiceServer) RenewUserServersState(context.Context, *Re
|
||||
func (UnimplementedUserServiceServer) CheckUserEmail(context.Context, *CheckUserEmailRequest) (*CheckUserEmailResponse, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method CheckUserEmail not implemented")
|
||||
}
|
||||
func (UnimplementedUserServiceServer) CheckUserMobile(context.Context, *CheckUserMobileRequest) (*CheckUserMobileResponse, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method CheckUserMobile not implemented")
|
||||
}
|
||||
func (UnimplementedUserServiceServer) FindUserVerifiedEmailWithUsername(context.Context, *FindUserVerifiedEmailWithUsernameRequest) (*FindUserVerifiedEmailWithUsernameResponse, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method FindUserVerifiedEmailWithUsername not implemented")
|
||||
}
|
||||
@@ -984,6 +1001,24 @@ func _UserService_CheckUserEmail_Handler(srv interface{}, ctx context.Context, d
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _UserService_CheckUserMobile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(CheckUserMobileRequest)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if interceptor == nil {
|
||||
return srv.(UserServiceServer).CheckUserMobile(ctx, in)
|
||||
}
|
||||
info := &grpc.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: UserService_CheckUserMobile_FullMethodName,
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
return srv.(UserServiceServer).CheckUserMobile(ctx, req.(*CheckUserMobileRequest))
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _UserService_FindUserVerifiedEmailWithUsername_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(FindUserVerifiedEmailWithUsernameRequest)
|
||||
if err := dec(in); err != nil {
|
||||
@@ -1113,6 +1148,10 @@ var UserService_ServiceDesc = grpc.ServiceDesc{
|
||||
MethodName: "checkUserEmail",
|
||||
Handler: _UserService_CheckUserEmail_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "checkUserMobile",
|
||||
Handler: _UserService_CheckUserMobile_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "findUserVerifiedEmailWithUsername",
|
||||
Handler: _UserService_FindUserVerifiedEmailWithUsername_Handler,
|
||||
|
||||
541
pkg/rpc/pb/service_user_mobile_verification.pb.go
Normal file
541
pkg/rpc/pb/service_user_mobile_verification.pb.go
Normal file
@@ -0,0 +1,541 @@
|
||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||||
// versions:
|
||||
// protoc-gen-go v1.31.0
|
||||
// protoc v3.19.4
|
||||
// source: service_user_mobile_verification.proto
|
||||
|
||||
package pb
|
||||
|
||||
import (
|
||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||
reflect "reflect"
|
||||
sync "sync"
|
||||
)
|
||||
|
||||
const (
|
||||
// Verify that this generated code is sufficiently up-to-date.
|
||||
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
||||
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
||||
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
||||
)
|
||||
|
||||
// 认证手机号码
|
||||
type VerifyUserMobileRequest struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
Mobile string `protobuf:"bytes,1,opt,name=mobile,proto3" json:"mobile,omitempty"` // 手机号
|
||||
Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"` // 激活码
|
||||
}
|
||||
|
||||
func (x *VerifyUserMobileRequest) Reset() {
|
||||
*x = VerifyUserMobileRequest{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_user_mobile_verification_proto_msgTypes[0]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *VerifyUserMobileRequest) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*VerifyUserMobileRequest) ProtoMessage() {}
|
||||
|
||||
func (x *VerifyUserMobileRequest) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_user_mobile_verification_proto_msgTypes[0]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use VerifyUserMobileRequest.ProtoReflect.Descriptor instead.
|
||||
func (*VerifyUserMobileRequest) Descriptor() ([]byte, []int) {
|
||||
return file_service_user_mobile_verification_proto_rawDescGZIP(), []int{0}
|
||||
}
|
||||
|
||||
func (x *VerifyUserMobileRequest) GetMobile() string {
|
||||
if x != nil {
|
||||
return x.Mobile
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *VerifyUserMobileRequest) GetCode() string {
|
||||
if x != nil {
|
||||
return x.Code
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type VerifyUserMobileResponse struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
UserId int64 `protobuf:"varint,1,opt,name=userId,proto3" json:"userId,omitempty"` // 手机号码对应的用户ID
|
||||
Mobile string `protobuf:"bytes,2,opt,name=mobile,proto3" json:"mobile,omitempty"` // 手机号码
|
||||
ErrorCode string `protobuf:"bytes,3,opt,name=errorCode,proto3" json:"errorCode,omitempty"` // 错误代号,如果为空,说明没有错误
|
||||
ErrorMessage string `protobuf:"bytes,4,opt,name=errorMessage,proto3" json:"errorMessage,omitempty"` // 错误信息
|
||||
}
|
||||
|
||||
func (x *VerifyUserMobileResponse) Reset() {
|
||||
*x = VerifyUserMobileResponse{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_user_mobile_verification_proto_msgTypes[1]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *VerifyUserMobileResponse) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*VerifyUserMobileResponse) ProtoMessage() {}
|
||||
|
||||
func (x *VerifyUserMobileResponse) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_user_mobile_verification_proto_msgTypes[1]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use VerifyUserMobileResponse.ProtoReflect.Descriptor instead.
|
||||
func (*VerifyUserMobileResponse) Descriptor() ([]byte, []int) {
|
||||
return file_service_user_mobile_verification_proto_rawDescGZIP(), []int{1}
|
||||
}
|
||||
|
||||
func (x *VerifyUserMobileResponse) GetUserId() int64 {
|
||||
if x != nil {
|
||||
return x.UserId
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *VerifyUserMobileResponse) GetMobile() string {
|
||||
if x != nil {
|
||||
return x.Mobile
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *VerifyUserMobileResponse) GetErrorCode() string {
|
||||
if x != nil {
|
||||
return x.ErrorCode
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *VerifyUserMobileResponse) GetErrorMessage() string {
|
||||
if x != nil {
|
||||
return x.ErrorMessage
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
// 发送手机号码认证
|
||||
type SendUserMobileVerificationRequest struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
Mobile string `protobuf:"bytes,1,opt,name=mobile,proto3" json:"mobile,omitempty"` // 待验证手机号码
|
||||
}
|
||||
|
||||
func (x *SendUserMobileVerificationRequest) Reset() {
|
||||
*x = SendUserMobileVerificationRequest{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_user_mobile_verification_proto_msgTypes[2]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *SendUserMobileVerificationRequest) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*SendUserMobileVerificationRequest) ProtoMessage() {}
|
||||
|
||||
func (x *SendUserMobileVerificationRequest) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_user_mobile_verification_proto_msgTypes[2]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use SendUserMobileVerificationRequest.ProtoReflect.Descriptor instead.
|
||||
func (*SendUserMobileVerificationRequest) Descriptor() ([]byte, []int) {
|
||||
return file_service_user_mobile_verification_proto_rawDescGZIP(), []int{2}
|
||||
}
|
||||
|
||||
func (x *SendUserMobileVerificationRequest) GetMobile() string {
|
||||
if x != nil {
|
||||
return x.Mobile
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type SendUserMobileVerificationResponse struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
IsOk bool `protobuf:"varint,1,opt,name=isOk,proto3" json:"isOk,omitempty"` // 是否发送成功
|
||||
ErrorCode string `protobuf:"bytes,2,opt,name=errorCode,proto3" json:"errorCode,omitempty"` // 错误代号
|
||||
}
|
||||
|
||||
func (x *SendUserMobileVerificationResponse) Reset() {
|
||||
*x = SendUserMobileVerificationResponse{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_user_mobile_verification_proto_msgTypes[3]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *SendUserMobileVerificationResponse) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*SendUserMobileVerificationResponse) ProtoMessage() {}
|
||||
|
||||
func (x *SendUserMobileVerificationResponse) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_user_mobile_verification_proto_msgTypes[3]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use SendUserMobileVerificationResponse.ProtoReflect.Descriptor instead.
|
||||
func (*SendUserMobileVerificationResponse) Descriptor() ([]byte, []int) {
|
||||
return file_service_user_mobile_verification_proto_rawDescGZIP(), []int{3}
|
||||
}
|
||||
|
||||
func (x *SendUserMobileVerificationResponse) GetIsOk() bool {
|
||||
if x != nil {
|
||||
return x.IsOk
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (x *SendUserMobileVerificationResponse) GetErrorCode() string {
|
||||
if x != nil {
|
||||
return x.ErrorCode
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
// 查找用户正在等待激活的认证
|
||||
type FindLatestUserMobileVerificationRequest struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
}
|
||||
|
||||
func (x *FindLatestUserMobileVerificationRequest) Reset() {
|
||||
*x = FindLatestUserMobileVerificationRequest{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_user_mobile_verification_proto_msgTypes[4]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *FindLatestUserMobileVerificationRequest) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*FindLatestUserMobileVerificationRequest) ProtoMessage() {}
|
||||
|
||||
func (x *FindLatestUserMobileVerificationRequest) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_user_mobile_verification_proto_msgTypes[4]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use FindLatestUserMobileVerificationRequest.ProtoReflect.Descriptor instead.
|
||||
func (*FindLatestUserMobileVerificationRequest) Descriptor() ([]byte, []int) {
|
||||
return file_service_user_mobile_verification_proto_rawDescGZIP(), []int{4}
|
||||
}
|
||||
|
||||
type FindLatestUserMobileVerificationResponse struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
UserMobileVerification *UserMobileVerification `protobuf:"bytes,1,opt,name=userMobileVerification,proto3" json:"userMobileVerification,omitempty"`
|
||||
}
|
||||
|
||||
func (x *FindLatestUserMobileVerificationResponse) Reset() {
|
||||
*x = FindLatestUserMobileVerificationResponse{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_service_user_mobile_verification_proto_msgTypes[5]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *FindLatestUserMobileVerificationResponse) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*FindLatestUserMobileVerificationResponse) ProtoMessage() {}
|
||||
|
||||
func (x *FindLatestUserMobileVerificationResponse) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_service_user_mobile_verification_proto_msgTypes[5]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use FindLatestUserMobileVerificationResponse.ProtoReflect.Descriptor instead.
|
||||
func (*FindLatestUserMobileVerificationResponse) Descriptor() ([]byte, []int) {
|
||||
return file_service_user_mobile_verification_proto_rawDescGZIP(), []int{5}
|
||||
}
|
||||
|
||||
func (x *FindLatestUserMobileVerificationResponse) GetUserMobileVerification() *UserMobileVerification {
|
||||
if x != nil {
|
||||
return x.UserMobileVerification
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
var File_service_user_mobile_verification_proto protoreflect.FileDescriptor
|
||||
|
||||
var file_service_user_mobile_verification_proto_rawDesc = []byte{
|
||||
0x0a, 0x26, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6d,
|
||||
0x6f, 0x62, 0x69, 0x6c, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
|
||||
0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x1a, 0x2b, 0x6d, 0x6f,
|
||||
0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f,
|
||||
0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
|
||||
0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x45, 0x0a, 0x17, 0x56, 0x65, 0x72,
|
||||
0x69, 0x66, 0x79, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71,
|
||||
0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x18, 0x01,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04,
|
||||
0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65,
|
||||
0x22, 0x8c, 0x01, 0x0a, 0x18, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x55, 0x73, 0x65, 0x72, 0x4d,
|
||||
0x6f, 0x62, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a,
|
||||
0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75,
|
||||
0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x18,
|
||||
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x12, 0x1c, 0x0a,
|
||||
0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x65,
|
||||
0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
|
||||
0x09, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22,
|
||||
0x3b, 0x0a, 0x21, 0x53, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c,
|
||||
0x65, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71,
|
||||
0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x18, 0x01,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x22, 0x56, 0x0a, 0x22,
|
||||
0x53, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x56, 0x65,
|
||||
0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
|
||||
0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08,
|
||||
0x52, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43,
|
||||
0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72,
|
||||
0x43, 0x6f, 0x64, 0x65, 0x22, 0x29, 0x0a, 0x27, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x61, 0x74, 0x65,
|
||||
0x73, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x69,
|
||||
0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22,
|
||||
0x7e, 0x0a, 0x28, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x55, 0x73, 0x65,
|
||||
0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
|
||||
0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x52, 0x0a, 0x16, 0x75,
|
||||
0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63,
|
||||
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x62,
|
||||
0x2e, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x69, 0x66,
|
||||
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x16, 0x75, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62,
|
||||
0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x32,
|
||||
0xda, 0x02, 0x0a, 0x1d, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x56, 0x65,
|
||||
0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
|
||||
0x65, 0x12, 0x4d, 0x0a, 0x10, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x55, 0x73, 0x65, 0x72, 0x4d,
|
||||
0x6f, 0x62, 0x69, 0x6c, 0x65, 0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66,
|
||||
0x79, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
|
||||
0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x55, 0x73,
|
||||
0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
|
||||
0x12, 0x6b, 0x0a, 0x1a, 0x73, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69,
|
||||
0x6c, 0x65, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25,
|
||||
0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69,
|
||||
0x6c, 0x65, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
|
||||
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x55,
|
||||
0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63,
|
||||
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a,
|
||||
0x20, 0x66, 0x69, 0x6e, 0x64, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4d,
|
||||
0x6f, 0x62, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
|
||||
0x6e, 0x12, 0x2b, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x61, 0x74, 0x65, 0x73,
|
||||
0x74, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x69, 0x66,
|
||||
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c,
|
||||
0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x55, 0x73,
|
||||
0x65, 0x72, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61,
|
||||
0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a, 0x04,
|
||||
0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
file_service_user_mobile_verification_proto_rawDescOnce sync.Once
|
||||
file_service_user_mobile_verification_proto_rawDescData = file_service_user_mobile_verification_proto_rawDesc
|
||||
)
|
||||
|
||||
func file_service_user_mobile_verification_proto_rawDescGZIP() []byte {
|
||||
file_service_user_mobile_verification_proto_rawDescOnce.Do(func() {
|
||||
file_service_user_mobile_verification_proto_rawDescData = protoimpl.X.CompressGZIP(file_service_user_mobile_verification_proto_rawDescData)
|
||||
})
|
||||
return file_service_user_mobile_verification_proto_rawDescData
|
||||
}
|
||||
|
||||
var file_service_user_mobile_verification_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
|
||||
var file_service_user_mobile_verification_proto_goTypes = []interface{}{
|
||||
(*VerifyUserMobileRequest)(nil), // 0: pb.VerifyUserMobileRequest
|
||||
(*VerifyUserMobileResponse)(nil), // 1: pb.VerifyUserMobileResponse
|
||||
(*SendUserMobileVerificationRequest)(nil), // 2: pb.SendUserMobileVerificationRequest
|
||||
(*SendUserMobileVerificationResponse)(nil), // 3: pb.SendUserMobileVerificationResponse
|
||||
(*FindLatestUserMobileVerificationRequest)(nil), // 4: pb.FindLatestUserMobileVerificationRequest
|
||||
(*FindLatestUserMobileVerificationResponse)(nil), // 5: pb.FindLatestUserMobileVerificationResponse
|
||||
(*UserMobileVerification)(nil), // 6: pb.UserMobileVerification
|
||||
}
|
||||
var file_service_user_mobile_verification_proto_depIdxs = []int32{
|
||||
6, // 0: pb.FindLatestUserMobileVerificationResponse.userMobileVerification:type_name -> pb.UserMobileVerification
|
||||
0, // 1: pb.UserMobileVerificationService.verifyUserMobile:input_type -> pb.VerifyUserMobileRequest
|
||||
2, // 2: pb.UserMobileVerificationService.sendUserMobileVerification:input_type -> pb.SendUserMobileVerificationRequest
|
||||
4, // 3: pb.UserMobileVerificationService.findLatestUserMobileVerification:input_type -> pb.FindLatestUserMobileVerificationRequest
|
||||
1, // 4: pb.UserMobileVerificationService.verifyUserMobile:output_type -> pb.VerifyUserMobileResponse
|
||||
3, // 5: pb.UserMobileVerificationService.sendUserMobileVerification:output_type -> pb.SendUserMobileVerificationResponse
|
||||
5, // 6: pb.UserMobileVerificationService.findLatestUserMobileVerification:output_type -> pb.FindLatestUserMobileVerificationResponse
|
||||
4, // [4:7] is the sub-list for method output_type
|
||||
1, // [1:4] is the sub-list for method input_type
|
||||
1, // [1:1] is the sub-list for extension type_name
|
||||
1, // [1:1] is the sub-list for extension extendee
|
||||
0, // [0:1] is the sub-list for field type_name
|
||||
}
|
||||
|
||||
func init() { file_service_user_mobile_verification_proto_init() }
|
||||
func file_service_user_mobile_verification_proto_init() {
|
||||
if File_service_user_mobile_verification_proto != nil {
|
||||
return
|
||||
}
|
||||
file_models_model_user_mobile_verification_proto_init()
|
||||
if !protoimpl.UnsafeEnabled {
|
||||
file_service_user_mobile_verification_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*VerifyUserMobileRequest); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
file_service_user_mobile_verification_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*VerifyUserMobileResponse); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
file_service_user_mobile_verification_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*SendUserMobileVerificationRequest); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
file_service_user_mobile_verification_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*SendUserMobileVerificationResponse); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
file_service_user_mobile_verification_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*FindLatestUserMobileVerificationRequest); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
file_service_user_mobile_verification_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*FindLatestUserMobileVerificationResponse); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
}
|
||||
type x struct{}
|
||||
out := protoimpl.TypeBuilder{
|
||||
File: protoimpl.DescBuilder{
|
||||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
||||
RawDescriptor: file_service_user_mobile_verification_proto_rawDesc,
|
||||
NumEnums: 0,
|
||||
NumMessages: 6,
|
||||
NumExtensions: 0,
|
||||
NumServices: 1,
|
||||
},
|
||||
GoTypes: file_service_user_mobile_verification_proto_goTypes,
|
||||
DependencyIndexes: file_service_user_mobile_verification_proto_depIdxs,
|
||||
MessageInfos: file_service_user_mobile_verification_proto_msgTypes,
|
||||
}.Build()
|
||||
File_service_user_mobile_verification_proto = out.File
|
||||
file_service_user_mobile_verification_proto_rawDesc = nil
|
||||
file_service_user_mobile_verification_proto_goTypes = nil
|
||||
file_service_user_mobile_verification_proto_depIdxs = nil
|
||||
}
|
||||
187
pkg/rpc/pb/service_user_mobile_verification_grpc.pb.go
Normal file
187
pkg/rpc/pb/service_user_mobile_verification_grpc.pb.go
Normal file
@@ -0,0 +1,187 @@
|
||||
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
|
||||
// versions:
|
||||
// - protoc-gen-go-grpc v1.3.0
|
||||
// - protoc v3.19.4
|
||||
// source: service_user_mobile_verification.proto
|
||||
|
||||
package pb
|
||||
|
||||
import (
|
||||
context "context"
|
||||
grpc "google.golang.org/grpc"
|
||||
codes "google.golang.org/grpc/codes"
|
||||
status "google.golang.org/grpc/status"
|
||||
)
|
||||
|
||||
// This is a compile-time assertion to ensure that this generated file
|
||||
// is compatible with the grpc package it is being compiled against.
|
||||
// Requires gRPC-Go v1.32.0 or later.
|
||||
const _ = grpc.SupportPackageIsVersion7
|
||||
|
||||
const (
|
||||
UserMobileVerificationService_VerifyUserMobile_FullMethodName = "/pb.UserMobileVerificationService/verifyUserMobile"
|
||||
UserMobileVerificationService_SendUserMobileVerification_FullMethodName = "/pb.UserMobileVerificationService/sendUserMobileVerification"
|
||||
UserMobileVerificationService_FindLatestUserMobileVerification_FullMethodName = "/pb.UserMobileVerificationService/findLatestUserMobileVerification"
|
||||
)
|
||||
|
||||
// UserMobileVerificationServiceClient is the client API for UserMobileVerificationService service.
|
||||
//
|
||||
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
|
||||
type UserMobileVerificationServiceClient interface {
|
||||
// 认证手机号码
|
||||
VerifyUserMobile(ctx context.Context, in *VerifyUserMobileRequest, opts ...grpc.CallOption) (*VerifyUserMobileResponse, error)
|
||||
// 发送手机号码认证
|
||||
SendUserMobileVerification(ctx context.Context, in *SendUserMobileVerificationRequest, opts ...grpc.CallOption) (*SendUserMobileVerificationResponse, error)
|
||||
// 查找用户正在等待激活的认证
|
||||
FindLatestUserMobileVerification(ctx context.Context, in *FindLatestUserMobileVerificationRequest, opts ...grpc.CallOption) (*FindLatestUserMobileVerificationResponse, error)
|
||||
}
|
||||
|
||||
type userMobileVerificationServiceClient struct {
|
||||
cc grpc.ClientConnInterface
|
||||
}
|
||||
|
||||
func NewUserMobileVerificationServiceClient(cc grpc.ClientConnInterface) UserMobileVerificationServiceClient {
|
||||
return &userMobileVerificationServiceClient{cc}
|
||||
}
|
||||
|
||||
func (c *userMobileVerificationServiceClient) VerifyUserMobile(ctx context.Context, in *VerifyUserMobileRequest, opts ...grpc.CallOption) (*VerifyUserMobileResponse, error) {
|
||||
out := new(VerifyUserMobileResponse)
|
||||
err := c.cc.Invoke(ctx, UserMobileVerificationService_VerifyUserMobile_FullMethodName, in, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *userMobileVerificationServiceClient) SendUserMobileVerification(ctx context.Context, in *SendUserMobileVerificationRequest, opts ...grpc.CallOption) (*SendUserMobileVerificationResponse, error) {
|
||||
out := new(SendUserMobileVerificationResponse)
|
||||
err := c.cc.Invoke(ctx, UserMobileVerificationService_SendUserMobileVerification_FullMethodName, in, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *userMobileVerificationServiceClient) FindLatestUserMobileVerification(ctx context.Context, in *FindLatestUserMobileVerificationRequest, opts ...grpc.CallOption) (*FindLatestUserMobileVerificationResponse, error) {
|
||||
out := new(FindLatestUserMobileVerificationResponse)
|
||||
err := c.cc.Invoke(ctx, UserMobileVerificationService_FindLatestUserMobileVerification_FullMethodName, in, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
// UserMobileVerificationServiceServer is the server API for UserMobileVerificationService service.
|
||||
// All implementations should embed UnimplementedUserMobileVerificationServiceServer
|
||||
// for forward compatibility
|
||||
type UserMobileVerificationServiceServer interface {
|
||||
// 认证手机号码
|
||||
VerifyUserMobile(context.Context, *VerifyUserMobileRequest) (*VerifyUserMobileResponse, error)
|
||||
// 发送手机号码认证
|
||||
SendUserMobileVerification(context.Context, *SendUserMobileVerificationRequest) (*SendUserMobileVerificationResponse, error)
|
||||
// 查找用户正在等待激活的认证
|
||||
FindLatestUserMobileVerification(context.Context, *FindLatestUserMobileVerificationRequest) (*FindLatestUserMobileVerificationResponse, error)
|
||||
}
|
||||
|
||||
// UnimplementedUserMobileVerificationServiceServer should be embedded to have forward compatible implementations.
|
||||
type UnimplementedUserMobileVerificationServiceServer struct {
|
||||
}
|
||||
|
||||
func (UnimplementedUserMobileVerificationServiceServer) VerifyUserMobile(context.Context, *VerifyUserMobileRequest) (*VerifyUserMobileResponse, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method VerifyUserMobile not implemented")
|
||||
}
|
||||
func (UnimplementedUserMobileVerificationServiceServer) SendUserMobileVerification(context.Context, *SendUserMobileVerificationRequest) (*SendUserMobileVerificationResponse, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method SendUserMobileVerification not implemented")
|
||||
}
|
||||
func (UnimplementedUserMobileVerificationServiceServer) FindLatestUserMobileVerification(context.Context, *FindLatestUserMobileVerificationRequest) (*FindLatestUserMobileVerificationResponse, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method FindLatestUserMobileVerification not implemented")
|
||||
}
|
||||
|
||||
// UnsafeUserMobileVerificationServiceServer may be embedded to opt out of forward compatibility for this service.
|
||||
// Use of this interface is not recommended, as added methods to UserMobileVerificationServiceServer will
|
||||
// result in compilation errors.
|
||||
type UnsafeUserMobileVerificationServiceServer interface {
|
||||
mustEmbedUnimplementedUserMobileVerificationServiceServer()
|
||||
}
|
||||
|
||||
func RegisterUserMobileVerificationServiceServer(s grpc.ServiceRegistrar, srv UserMobileVerificationServiceServer) {
|
||||
s.RegisterService(&UserMobileVerificationService_ServiceDesc, srv)
|
||||
}
|
||||
|
||||
func _UserMobileVerificationService_VerifyUserMobile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(VerifyUserMobileRequest)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if interceptor == nil {
|
||||
return srv.(UserMobileVerificationServiceServer).VerifyUserMobile(ctx, in)
|
||||
}
|
||||
info := &grpc.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: UserMobileVerificationService_VerifyUserMobile_FullMethodName,
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
return srv.(UserMobileVerificationServiceServer).VerifyUserMobile(ctx, req.(*VerifyUserMobileRequest))
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _UserMobileVerificationService_SendUserMobileVerification_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(SendUserMobileVerificationRequest)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if interceptor == nil {
|
||||
return srv.(UserMobileVerificationServiceServer).SendUserMobileVerification(ctx, in)
|
||||
}
|
||||
info := &grpc.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: UserMobileVerificationService_SendUserMobileVerification_FullMethodName,
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
return srv.(UserMobileVerificationServiceServer).SendUserMobileVerification(ctx, req.(*SendUserMobileVerificationRequest))
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _UserMobileVerificationService_FindLatestUserMobileVerification_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(FindLatestUserMobileVerificationRequest)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if interceptor == nil {
|
||||
return srv.(UserMobileVerificationServiceServer).FindLatestUserMobileVerification(ctx, in)
|
||||
}
|
||||
info := &grpc.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: UserMobileVerificationService_FindLatestUserMobileVerification_FullMethodName,
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
return srv.(UserMobileVerificationServiceServer).FindLatestUserMobileVerification(ctx, req.(*FindLatestUserMobileVerificationRequest))
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
// UserMobileVerificationService_ServiceDesc is the grpc.ServiceDesc for UserMobileVerificationService service.
|
||||
// It's only intended for direct use with grpc.RegisterService,
|
||||
// and not to be introspected or modified (even as a copy)
|
||||
var UserMobileVerificationService_ServiceDesc = grpc.ServiceDesc{
|
||||
ServiceName: "pb.UserMobileVerificationService",
|
||||
HandlerType: (*UserMobileVerificationServiceServer)(nil),
|
||||
Methods: []grpc.MethodDesc{
|
||||
{
|
||||
MethodName: "verifyUserMobile",
|
||||
Handler: _UserMobileVerificationService_VerifyUserMobile_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "sendUserMobileVerification",
|
||||
Handler: _UserMobileVerificationService_SendUserMobileVerification_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "findLatestUserMobileVerification",
|
||||
Handler: _UserMobileVerificationService_FindLatestUserMobileVerification_Handler,
|
||||
},
|
||||
},
|
||||
Streams: []grpc.StreamDesc{},
|
||||
Metadata: "service_user_mobile_verification.proto",
|
||||
}
|
||||
@@ -11,10 +11,11 @@ message User {
|
||||
int64 id = 1; // 用户ID
|
||||
string username = 2; // 用户名
|
||||
string fullname = 3; // 全称
|
||||
string mobile = 4;
|
||||
string tel = 5;
|
||||
string email = 6;
|
||||
string verifiedEmail = 20;
|
||||
string mobile = 4; // 手机号码
|
||||
string tel = 5; // 联系电话
|
||||
string email = 6; // 联系邮箱
|
||||
string verifiedEmail = 20; // 已验证邮箱
|
||||
string verifiedMobile = 23; // 已验证手机号码
|
||||
string remark = 7;
|
||||
bool isOn = 8;
|
||||
int64 createdAt = 9;
|
||||
@@ -23,8 +24,8 @@ message User {
|
||||
bool isRejected = 14;
|
||||
string rejectReason = 15;
|
||||
bool isDeleted = 16;
|
||||
bool isIndividualIdentified = 17;
|
||||
bool isEnterpriseIdentified = 18;
|
||||
bool isIndividualIdentified = 17; // 是否已通过个人验证
|
||||
bool isEnterpriseIdentified = 18; // 是否已通过企业验证
|
||||
string bandwidthAlgo = 21; // 带宽算法
|
||||
string lang = 22; // 语言代号
|
||||
|
||||
|
||||
16
pkg/rpc/protos/models/model_user_mobile_verification.proto
Normal file
16
pkg/rpc/protos/models/model_user_mobile_verification.proto
Normal file
@@ -0,0 +1,16 @@
|
||||
syntax = "proto3";
|
||||
option go_package = "./pb";
|
||||
|
||||
package pb;
|
||||
|
||||
// 手机号码认证
|
||||
message UserMobileVerification {
|
||||
int64 id = 1; // ID
|
||||
string mobile = 2; // 手机号码
|
||||
int64 userId = 3; // 用户ID
|
||||
string code = 4; // 代号
|
||||
int64 createdAt = 5; // 创建时间
|
||||
bool isSent = 6; // 已发送
|
||||
bool isVerified = 7; // 已激活
|
||||
int64 expiresAt = 8; // 过期时间,动态计算而来
|
||||
}
|
||||
23
pkg/rpc/protos/service_sms_sender.proto
Normal file
23
pkg/rpc/protos/service_sms_sender.proto
Normal file
@@ -0,0 +1,23 @@
|
||||
syntax = "proto3";
|
||||
option go_package = "./pb";
|
||||
|
||||
package pb;
|
||||
|
||||
// 短信发送服务
|
||||
service SMSSenderService {
|
||||
// 发送短信
|
||||
rpc sendSMS(SendSMSRequest) returns (SendSMSResponse);
|
||||
}
|
||||
|
||||
// 发送短信
|
||||
message SendSMSRequest {
|
||||
string mobile = 1; // 手机号
|
||||
string body = 2; // 内容
|
||||
string type = 3; // 渠道类型:webHook ...
|
||||
bytes paramsJSON = 4; // 参数
|
||||
}
|
||||
|
||||
message SendSMSResponse {
|
||||
bool isOk = 1; // 是否成功
|
||||
string result = 2; // 发送返回内容,只有失败时才会有数据
|
||||
}
|
||||
@@ -88,6 +88,9 @@ service UserService {
|
||||
// 检查邮箱是否已被使用
|
||||
rpc checkUserEmail(CheckUserEmailRequest) returns (CheckUserEmailResponse);
|
||||
|
||||
// 检查手机号码是否已被使用
|
||||
rpc checkUserMobile(CheckUserMobileRequest) returns (CheckUserMobileResponse);
|
||||
|
||||
// 根据用户名查询用户绑定的邮箱
|
||||
rpc findUserVerifiedEmailWithUsername(FindUserVerifiedEmailWithUsernameRequest) returns (FindUserVerifiedEmailWithUsernameResponse);
|
||||
}
|
||||
@@ -378,6 +381,15 @@ message CheckUserEmailResponse {
|
||||
bool exists = 1; // 是否已被使用
|
||||
}
|
||||
|
||||
// 检查手机号码是否已被验证
|
||||
message CheckUserMobileRequest {
|
||||
string mobile = 1; // 手机号码
|
||||
}
|
||||
|
||||
message CheckUserMobileResponse {
|
||||
bool exists = 1; // 是否已被使用
|
||||
}
|
||||
|
||||
// 根据用户名查询用户绑定的邮箱
|
||||
message FindUserVerifiedEmailWithUsernameRequest {
|
||||
string username = 1; // 用户名
|
||||
|
||||
50
pkg/rpc/protos/service_user_mobile_verification.proto
Normal file
50
pkg/rpc/protos/service_user_mobile_verification.proto
Normal file
@@ -0,0 +1,50 @@
|
||||
syntax = "proto3";
|
||||
option go_package = "./pb";
|
||||
|
||||
package pb;
|
||||
|
||||
import "models/model_user_mobile_verification.proto";
|
||||
|
||||
// 用户手机号码认证服务
|
||||
service UserMobileVerificationService {
|
||||
// 认证手机号码
|
||||
rpc verifyUserMobile(VerifyUserMobileRequest) returns (VerifyUserMobileResponse);
|
||||
|
||||
// 发送手机号码认证
|
||||
rpc sendUserMobileVerification(SendUserMobileVerificationRequest) returns (SendUserMobileVerificationResponse);
|
||||
|
||||
// 查找用户正在等待激活的认证
|
||||
rpc findLatestUserMobileVerification(FindLatestUserMobileVerificationRequest) returns (FindLatestUserMobileVerificationResponse);
|
||||
}
|
||||
|
||||
// 认证手机号码
|
||||
message VerifyUserMobileRequest {
|
||||
string mobile = 1; // 手机号
|
||||
string code = 2; // 激活码
|
||||
}
|
||||
|
||||
message VerifyUserMobileResponse {
|
||||
int64 userId = 1; // 手机号码对应的用户ID
|
||||
string mobile = 2; // 手机号码
|
||||
string errorCode = 3; // 错误代号,如果为空,说明没有错误
|
||||
string errorMessage = 4; // 错误信息
|
||||
}
|
||||
|
||||
// 发送手机号码认证
|
||||
message SendUserMobileVerificationRequest {
|
||||
string mobile = 1; // 待验证手机号码
|
||||
}
|
||||
|
||||
message SendUserMobileVerificationResponse {
|
||||
bool isOk = 1; // 是否发送成功
|
||||
string errorCode = 2; // 错误代号
|
||||
}
|
||||
|
||||
// 查找用户正在等待激活的认证
|
||||
message FindLatestUserMobileVerificationRequest {
|
||||
|
||||
}
|
||||
|
||||
message FindLatestUserMobileVerificationResponse {
|
||||
UserMobileVerification userMobileVerification = 1;
|
||||
}
|
||||
@@ -5,6 +5,9 @@ package userconfigs
|
||||
const (
|
||||
EmailVerificationDefaultLife = 86400 * 2 // 2 days
|
||||
EmailResetPasswordDefaultLife = 3600 // 1 hour
|
||||
|
||||
MobileVerificationDefaultLife = 1800 // 30 minutes
|
||||
MobileResetPasswordDefaultLife = 1800 // 30 minutes
|
||||
)
|
||||
|
||||
type UserRegisterConfig struct {
|
||||
@@ -32,6 +35,15 @@ type UserRegisterConfig struct {
|
||||
Life int32 `yaml:"life" json:"life"` // 有效期
|
||||
} `yaml:"emailResetPassword" json:"emailResetPassword"`
|
||||
|
||||
// 手机号码激活设置
|
||||
MobileVerification struct {
|
||||
IsOn bool `yaml:"isOn" json:"isOn"` // 是否启用
|
||||
ShowNotice bool `yaml:"showNotice" json:"showNotice"` // 提示用户未绑定
|
||||
CanLogin bool `yaml:"canLogin" json:"canLogin"` // 是否可以使用激活的邮箱登录
|
||||
Body string `yaml:"body" json:"body"` // 内容
|
||||
Life int32 `yaml:"life" json:"life"` // 有效期
|
||||
} `yaml:"mobileVerification" json:"mobileVerification"`
|
||||
|
||||
// CDN
|
||||
CDNIsOn bool `json:"cdnIsOn"` // 是否开启CDN服务
|
||||
ClusterId int64 `yaml:"clusterId" json:"clusterId"` // 用户创建服务集群
|
||||
@@ -81,6 +93,8 @@ func DefaultUserRegisterConfig() *UserRegisterConfig {
|
||||
<p>${product.name} 管理团队</p>
|
||||
<p><a href="${url.home}" target="_blank">${url.home}</a></p>
|
||||
`
|
||||
// 短信验证码
|
||||
config.MobileVerification.Body = "你的短信验证码${code}"
|
||||
|
||||
return config
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user