mirror of
https://github.com/openimsdk/open-im-server.git
synced 2026-01-11 06:56:59 +08:00
Merge branch 'OpenIMSDK:main' into main
This commit is contained in:
commit
e019040fc9
@ -40,7 +40,17 @@ func (s *ZkClient) watch() {
|
|||||||
event := <-s.eventChan
|
event := <-s.eventChan
|
||||||
switch event.Type {
|
switch event.Type {
|
||||||
case zk.EventSession:
|
case zk.EventSession:
|
||||||
|
if event.State == zk.StateHasSession && s.isRegistered {
|
||||||
|
s.logger.Printf("zk session event stateHasSession: %+v, client prepare to create new temp node", event)
|
||||||
|
node, err := s.CreateTempNode(s.rpcRegisterName, s.rpcRegisterAddr)
|
||||||
|
if err != nil {
|
||||||
|
s.logger.Printf("zk session event stateHasSession: %+v, create temp node error: %v", event, err)
|
||||||
|
} else {
|
||||||
|
s.node = node
|
||||||
|
}
|
||||||
|
} else {
|
||||||
s.logger.Printf("zk session event: %+v", event)
|
s.logger.Printf("zk session event: %+v", event)
|
||||||
|
}
|
||||||
case zk.EventNodeChildrenChanged:
|
case zk.EventNodeChildrenChanged:
|
||||||
s.logger.Printf("zk event: %s", event.Path)
|
s.logger.Printf("zk event: %s", event.Path)
|
||||||
l := strings.Split(event.Path, "/")
|
l := strings.Split(event.Path, "/")
|
||||||
|
|||||||
@ -30,6 +30,14 @@ func (s *ZkClient) CreateRpcRootNodes(serviceNames []string) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *ZkClient) CreateTempNode(rpcRegisterName, addr string) (node string, err error) {
|
||||||
|
return s.conn.CreateProtectedEphemeralSequential(
|
||||||
|
s.getPath(rpcRegisterName)+"/"+addr+"_",
|
||||||
|
[]byte(addr),
|
||||||
|
zk.WorldACL(zk.PermAll),
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
func (s *ZkClient) Register(rpcRegisterName, host string, port int, opts ...grpc.DialOption) error {
|
func (s *ZkClient) Register(rpcRegisterName, host string, port int, opts ...grpc.DialOption) error {
|
||||||
if err := s.ensureName(rpcRegisterName); err != nil {
|
if err := s.ensureName(rpcRegisterName); err != nil {
|
||||||
return err
|
return err
|
||||||
@ -39,15 +47,14 @@ func (s *ZkClient) Register(rpcRegisterName, host string, port int, opts ...grpc
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
node, err := s.conn.CreateProtectedEphemeralSequential(
|
node, err := s.CreateTempNode(rpcRegisterName, addr)
|
||||||
s.getPath(rpcRegisterName)+"/"+addr+"_",
|
|
||||||
[]byte(addr),
|
|
||||||
zk.WorldACL(zk.PermAll),
|
|
||||||
)
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
s.rpcRegisterName = rpcRegisterName
|
||||||
|
s.rpcRegisterAddr = addr
|
||||||
s.node = node
|
s.node = node
|
||||||
|
s.isRegistered = true
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -60,6 +67,9 @@ func (s *ZkClient) UnRegister() error {
|
|||||||
}
|
}
|
||||||
time.Sleep(time.Second)
|
time.Sleep(time.Second)
|
||||||
s.node = ""
|
s.node = ""
|
||||||
|
s.rpcRegisterName = ""
|
||||||
|
s.rpcRegisterAddr = ""
|
||||||
|
s.isRegistered = false
|
||||||
s.localConns = make(map[string][]grpc.ClientConnInterface)
|
s.localConns = make(map[string][]grpc.ClientConnInterface)
|
||||||
s.resolvers = make(map[string]*Resolver)
|
s.resolvers = make(map[string]*Resolver)
|
||||||
return nil
|
return nil
|
||||||
|
|||||||
@ -73,7 +73,11 @@ func (s *ZkClient) Build(
|
|||||||
opts resolver.BuildOptions,
|
opts resolver.BuildOptions,
|
||||||
) (resolver.Resolver, error) {
|
) (resolver.Resolver, error) {
|
||||||
s.logger.Printf("build resolver: %+v, cc: %+v", target, cc.UpdateState)
|
s.logger.Printf("build resolver: %+v, cc: %+v", target, cc.UpdateState)
|
||||||
// log.ZDebug(context.Background(), "build resolver start", "target", target, "cc", cc.UpdateState)
|
serviceName := strings.TrimLeft(target.URL.Path, "/")
|
||||||
|
if oldResolver, ok := s.resolvers[serviceName]; ok {
|
||||||
|
s.logger.Printf("rpc resolver exist: %+v, cc: %+v, key: %s", target, cc.UpdateState, serviceName)
|
||||||
|
return oldResolver, nil
|
||||||
|
}
|
||||||
r := &Resolver{}
|
r := &Resolver{}
|
||||||
r.target = target
|
r.target = target
|
||||||
r.cc = cc
|
r.cc = cc
|
||||||
@ -81,11 +85,8 @@ func (s *ZkClient) Build(
|
|||||||
r.ResolveNowZK(resolver.ResolveNowOptions{})
|
r.ResolveNowZK(resolver.ResolveNowOptions{})
|
||||||
s.lock.Lock()
|
s.lock.Lock()
|
||||||
defer s.lock.Unlock()
|
defer s.lock.Unlock()
|
||||||
serviceName := strings.TrimLeft(target.URL.Path, "/")
|
|
||||||
s.resolvers[serviceName] = r
|
s.resolvers[serviceName] = r
|
||||||
s.logger.Printf("build resolver finished: %+v, cc: %+v, key: %s", target, cc.UpdateState, serviceName)
|
s.logger.Printf("build resolver finished: %+v, cc: %+v, key: %s", target, cc.UpdateState, serviceName)
|
||||||
// log.ZDebug(context.Background(), "build resolver finished", "target", target, "cc", cc.UpdateState,
|
|
||||||
// "serviceName", serviceName)
|
|
||||||
return r, nil
|
return r, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -40,6 +40,9 @@ type ZkClient struct {
|
|||||||
userName string
|
userName string
|
||||||
password string
|
password string
|
||||||
|
|
||||||
|
rpcRegisterName string
|
||||||
|
rpcRegisterAddr string
|
||||||
|
isRegistered bool
|
||||||
scheme string
|
scheme string
|
||||||
|
|
||||||
timeout int
|
timeout int
|
||||||
@ -136,6 +139,7 @@ func NewClient(zkServers []string, zkRoot string, options ...ZkOption) (*ZkClien
|
|||||||
resolver.Register(client)
|
resolver.Register(client)
|
||||||
go client.refresh()
|
go client.refresh()
|
||||||
go client.watch()
|
go client.watch()
|
||||||
|
time.Sleep(time.Millisecond * 50)
|
||||||
return client, nil
|
return client, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -14,13 +14,16 @@
|
|||||||
|
|
||||||
package auth
|
package auth
|
||||||
|
|
||||||
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
import (
|
||||||
|
"github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant"
|
||||||
|
"github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
||||||
|
)
|
||||||
|
|
||||||
func (x *UserTokenReq) Check() error {
|
func (x *UserTokenReq) Check() error {
|
||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
}
|
}
|
||||||
if x.PlatformID > 9 || x.PlatformID < 1 {
|
if x.PlatformID > constant.AdminPlatformID || x.PlatformID < constant.IOSPlatformID {
|
||||||
return errs.ErrArgs.Wrap("platform is invalidate")
|
return errs.ErrArgs.Wrap("platform is invalidate")
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
@ -30,7 +33,7 @@ func (x *ForceLogoutReq) Check() error {
|
|||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
}
|
}
|
||||||
if x.PlatformID > 9 || x.PlatformID < 1 {
|
if x.PlatformID > constant.AdminPlatformID || x.PlatformID < constant.IOSPlatformID {
|
||||||
return errs.ErrArgs.Wrap("platformID is invalidate")
|
return errs.ErrArgs.Wrap("platformID is invalidate")
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
|
|||||||
@ -22,14 +22,13 @@ package auth
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
context "context"
|
context "context"
|
||||||
reflect "reflect"
|
|
||||||
sync "sync"
|
|
||||||
|
|
||||||
grpc "google.golang.org/grpc"
|
grpc "google.golang.org/grpc"
|
||||||
codes "google.golang.org/grpc/codes"
|
codes "google.golang.org/grpc/codes"
|
||||||
status "google.golang.org/grpc/status"
|
status "google.golang.org/grpc/status"
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||||
|
reflect "reflect"
|
||||||
|
sync "sync"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|||||||
@ -22,16 +22,14 @@ package conversation
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
context "context"
|
context "context"
|
||||||
reflect "reflect"
|
wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb"
|
||||||
sync "sync"
|
|
||||||
|
|
||||||
grpc "google.golang.org/grpc"
|
grpc "google.golang.org/grpc"
|
||||||
codes "google.golang.org/grpc/codes"
|
codes "google.golang.org/grpc/codes"
|
||||||
status "google.golang.org/grpc/status"
|
status "google.golang.org/grpc/status"
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||||
|
reflect "reflect"
|
||||||
wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb"
|
sync "sync"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|||||||
@ -21,11 +21,10 @@
|
|||||||
package errinfo
|
package errinfo
|
||||||
|
|
||||||
import (
|
import (
|
||||||
reflect "reflect"
|
|
||||||
sync "sync"
|
|
||||||
|
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||||
|
reflect "reflect"
|
||||||
|
sync "sync"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|||||||
@ -152,9 +152,6 @@ func (x *SetFriendRemarkReq) Check() error {
|
|||||||
if x.FriendUserID == "" {
|
if x.FriendUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("fromUserID is empty")
|
return errs.ErrArgs.Wrap("fromUserID is empty")
|
||||||
}
|
}
|
||||||
if x.Remark == "" {
|
|
||||||
return errs.ErrArgs.Wrap("remark is empty")
|
|
||||||
}
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -22,16 +22,14 @@ package friend
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
context "context"
|
context "context"
|
||||||
reflect "reflect"
|
sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"
|
||||||
sync "sync"
|
|
||||||
|
|
||||||
grpc "google.golang.org/grpc"
|
grpc "google.golang.org/grpc"
|
||||||
codes "google.golang.org/grpc/codes"
|
codes "google.golang.org/grpc/codes"
|
||||||
status "google.golang.org/grpc/status"
|
status "google.golang.org/grpc/status"
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||||
|
reflect "reflect"
|
||||||
sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"
|
sync "sync"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|||||||
@ -22,17 +22,15 @@ package group
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
context "context"
|
context "context"
|
||||||
reflect "reflect"
|
sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"
|
||||||
sync "sync"
|
wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb"
|
||||||
|
|
||||||
grpc "google.golang.org/grpc"
|
grpc "google.golang.org/grpc"
|
||||||
codes "google.golang.org/grpc/codes"
|
codes "google.golang.org/grpc/codes"
|
||||||
status "google.golang.org/grpc/status"
|
status "google.golang.org/grpc/status"
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||||
|
reflect "reflect"
|
||||||
sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"
|
sync "sync"
|
||||||
wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|||||||
@ -22,16 +22,14 @@ package msg
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
context "context"
|
context "context"
|
||||||
reflect "reflect"
|
sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"
|
||||||
sync "sync"
|
|
||||||
|
|
||||||
grpc "google.golang.org/grpc"
|
grpc "google.golang.org/grpc"
|
||||||
codes "google.golang.org/grpc/codes"
|
codes "google.golang.org/grpc/codes"
|
||||||
status "google.golang.org/grpc/status"
|
status "google.golang.org/grpc/status"
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||||
|
reflect "reflect"
|
||||||
sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"
|
sync "sync"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|||||||
@ -22,16 +22,14 @@ package msggateway
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
context "context"
|
context "context"
|
||||||
reflect "reflect"
|
sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"
|
||||||
sync "sync"
|
|
||||||
|
|
||||||
grpc "google.golang.org/grpc"
|
grpc "google.golang.org/grpc"
|
||||||
codes "google.golang.org/grpc/codes"
|
codes "google.golang.org/grpc/codes"
|
||||||
status "google.golang.org/grpc/status"
|
status "google.golang.org/grpc/status"
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||||
|
reflect "reflect"
|
||||||
sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"
|
sync "sync"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|||||||
@ -22,16 +22,14 @@ package push
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
context "context"
|
context "context"
|
||||||
reflect "reflect"
|
sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"
|
||||||
sync "sync"
|
|
||||||
|
|
||||||
grpc "google.golang.org/grpc"
|
grpc "google.golang.org/grpc"
|
||||||
codes "google.golang.org/grpc/codes"
|
codes "google.golang.org/grpc/codes"
|
||||||
status "google.golang.org/grpc/status"
|
status "google.golang.org/grpc/status"
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||||
|
reflect "reflect"
|
||||||
sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"
|
sync "sync"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|||||||
@ -21,13 +21,11 @@
|
|||||||
package sdkws
|
package sdkws
|
||||||
|
|
||||||
import (
|
import (
|
||||||
reflect "reflect"
|
wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb"
|
||||||
sync "sync"
|
|
||||||
|
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||||
|
reflect "reflect"
|
||||||
wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb"
|
sync "sync"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|||||||
@ -21,10 +21,9 @@
|
|||||||
package statistics
|
package statistics
|
||||||
|
|
||||||
import (
|
import (
|
||||||
reflect "reflect"
|
|
||||||
|
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||||
|
reflect "reflect"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|||||||
@ -22,14 +22,13 @@ package third
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
context "context"
|
context "context"
|
||||||
reflect "reflect"
|
|
||||||
sync "sync"
|
|
||||||
|
|
||||||
grpc "google.golang.org/grpc"
|
grpc "google.golang.org/grpc"
|
||||||
codes "google.golang.org/grpc/codes"
|
codes "google.golang.org/grpc/codes"
|
||||||
status "google.golang.org/grpc/status"
|
status "google.golang.org/grpc/status"
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||||
|
reflect "reflect"
|
||||||
|
sync "sync"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|||||||
@ -137,9 +137,6 @@ func (x *GetPaginationUsersReq) Check() error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (x *UserRegisterReq) Check() error {
|
func (x *UserRegisterReq) Check() error {
|
||||||
if x.Secret == "" {
|
|
||||||
return errs.ErrArgs.Wrap("Secret is empty")
|
|
||||||
}
|
|
||||||
if x.Users == nil {
|
if x.Users == nil {
|
||||||
return errs.ErrArgs.Wrap("Users is empty")
|
return errs.ErrArgs.Wrap("Users is empty")
|
||||||
}
|
}
|
||||||
|
|||||||
@ -22,17 +22,15 @@ package user
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
context "context"
|
context "context"
|
||||||
reflect "reflect"
|
conversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation"
|
||||||
sync "sync"
|
sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"
|
||||||
|
|
||||||
grpc "google.golang.org/grpc"
|
grpc "google.golang.org/grpc"
|
||||||
codes "google.golang.org/grpc/codes"
|
codes "google.golang.org/grpc/codes"
|
||||||
status "google.golang.org/grpc/status"
|
status "google.golang.org/grpc/status"
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||||
|
reflect "reflect"
|
||||||
conversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation"
|
sync "sync"
|
||||||
sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|||||||
@ -21,11 +21,10 @@
|
|||||||
package wrapperspb
|
package wrapperspb
|
||||||
|
|
||||||
import (
|
import (
|
||||||
reflect "reflect"
|
|
||||||
sync "sync"
|
|
||||||
|
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||||
|
reflect "reflect"
|
||||||
|
sync "sync"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|||||||
11
scripts/build.cmd
Normal file
11
scripts/build.cmd
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
go build -o api.exe ../cmd/openim-api/main.go
|
||||||
|
go build -o auth.exe ../cmd/openim-rpc/openim-rpc-auth/main.go
|
||||||
|
go build -o conversation.exe ../cmd/openim-rpc/openim-rpc-conversation/main.go
|
||||||
|
go build -o friend.exe ../cmd/openim-rpc/openim-rpc-friend/main.go
|
||||||
|
go build -o group.exe ../cmd/openim-rpc/openim-rpc-group/main.go
|
||||||
|
go build -o msg.exe ../cmd/openim-rpc/openim-rpc-msg/main.go
|
||||||
|
go build -o third.exe ../cmd/openim-rpc/openim-rpc-third/main.go
|
||||||
|
go build -o user.exe ../cmd/openim-rpc/openim-rpc-user/main.go
|
||||||
|
go build -o push.exe ../cmd/openim-push/main.go
|
||||||
|
go build -o msgtransfer.exe ../cmd/openim-msgtransfer/main.go
|
||||||
|
go build -o msggateway.exe ../cmd/openim-msggateway/main.go
|
||||||
Loading…
x
Reference in New Issue
Block a user