parent
107f4c950b
commit
f8ad35a6f7
@ -1,31 +1,18 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"OpenIM/internal/msggateway"
|
"OpenIM/pkg/common/cmd"
|
||||||
"OpenIM/pkg/common/config"
|
|
||||||
"OpenIM/pkg/common/constant"
|
|
||||||
"OpenIM/pkg/common/log"
|
|
||||||
"flag"
|
|
||||||
"fmt"
|
"fmt"
|
||||||
"sync"
|
"os"
|
||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
if err := config.InitConfig(""); err != nil {
|
msgGatewayCmd := cmd.NewMsgGatewayCmd()
|
||||||
panic(err.Error())
|
msgGatewayCmd.AddPortFlag()
|
||||||
|
msgGatewayCmd.AddPrometheusPortFlag()
|
||||||
|
msgGatewayCmd.AddWsPortFlag()
|
||||||
|
if err := msgGatewayCmd.Exec(); err != nil {
|
||||||
|
fmt.Println(err.Error())
|
||||||
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
log.NewPrivateLog(constant.LogFileName)
|
|
||||||
defaultRpcPorts := config.Config.RpcPort.OpenImMessageGatewayPort
|
|
||||||
defaultWsPorts := config.Config.LongConnSvr.WebsocketPort
|
|
||||||
defaultPromePorts := config.Config.Prometheus.MessageGatewayPrometheusPort
|
|
||||||
rpcPort := flag.Int("rpc_port", defaultRpcPorts[0], "rpc listening port")
|
|
||||||
wsPort := flag.Int("ws_port", defaultWsPorts[0], "ws listening port")
|
|
||||||
prometheusPort := flag.Int("prometheus_port", defaultPromePorts[0], "PushrometheusPort default listen port")
|
|
||||||
flag.Parse()
|
|
||||||
var wg sync.WaitGroup
|
|
||||||
wg.Add(1)
|
|
||||||
fmt.Println("start rpc/msg_gateway server, port: ", *rpcPort, *wsPort, *prometheusPort, ", OpenIM version: ", constant.CurrentVersion, "\n")
|
|
||||||
msggateway.Init(*rpcPort, *wsPort)
|
|
||||||
msggateway.Run(*prometheusPort)
|
|
||||||
wg.Wait()
|
|
||||||
}
|
}
|
||||||
|
@ -1,24 +1,16 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"OpenIM/internal/msgtransfer"
|
"OpenIM/pkg/common/cmd"
|
||||||
"OpenIM/pkg/common/config"
|
"fmt"
|
||||||
"OpenIM/pkg/common/constant"
|
"os"
|
||||||
"OpenIM/pkg/common/log"
|
|
||||||
"flag"
|
|
||||||
"sync"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
if err := config.InitConfig(""); err != nil {
|
msgTransferCmd := cmd.NewMsgTransferCmd()
|
||||||
panic(err.Error())
|
msgTransferCmd.AddPrometheusPortFlag()
|
||||||
|
if err := msgTransferCmd.Exec(); err != nil {
|
||||||
|
fmt.Println(err.Error())
|
||||||
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
var wg sync.WaitGroup
|
|
||||||
wg.Add(1)
|
|
||||||
prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.MessageTransferPrometheusPort[0], "MessageTransferPrometheusPort default listen port")
|
|
||||||
log.NewPrivateLog(constant.LogFileName)
|
|
||||||
if err := msgtransfer.StartTransfer(*prometheusPort); err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
wg.Wait()
|
|
||||||
}
|
}
|
||||||
|
@ -1,19 +1,18 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"OpenIM/internal/push"
|
"OpenIM/pkg/common/cmd"
|
||||||
"OpenIM/internal/startrpc"
|
"fmt"
|
||||||
"OpenIM/pkg/common/config"
|
"os"
|
||||||
"OpenIM/pkg/common/constant"
|
|
||||||
"OpenIM/pkg/common/log"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
if err := config.InitConfig(); err != nil {
|
pushCmd := cmd.NewPushCmd()
|
||||||
panic(err.Error())
|
pushCmd.AddPortFlag()
|
||||||
}
|
pushCmd.AddPrometheusPortFlag()
|
||||||
log.NewPrivateLog(constant.LogFileName)
|
pushCmd.AddPush()
|
||||||
if err := startrpc.Start(config.Config.RpcPort.OpenImAuthPort[0], config.Config.RpcRegisterName.OpenImAuthName, config.Config.Prometheus.AuthPrometheusPort[0], push.Start); err != nil {
|
if err := pushCmd.Execute(); err != nil {
|
||||||
panic(err.Error())
|
fmt.Println(err.Error())
|
||||||
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,16 +1,19 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"OpenIM/internal/rpc/group"
|
"OpenIM/internal/rpc/friend"
|
||||||
"OpenIM/internal/startrpc"
|
"OpenIM/pkg/common/cmd"
|
||||||
"OpenIM/pkg/common/config"
|
"OpenIM/pkg/common/config"
|
||||||
|
"fmt"
|
||||||
|
"os"
|
||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
if err := config.InitConfig(""); err != nil {
|
rpcCmd := cmd.NewRpcCmd(config.Config.RpcRegisterName.OpenImGroupName)
|
||||||
panic(err.Error())
|
rpcCmd.AddPortFlag()
|
||||||
}
|
rpcCmd.AddPrometheusPortFlag()
|
||||||
if err := startrpc.Start(config.Config.RpcPort.OpenImGroupPort[0], config.Config.RpcRegisterName.OpenImGroupName, config.Config.Prometheus.GroupPrometheusPort[0], group.Start); err != nil {
|
if err := rpcCmd.Exec(friend.Start); err != nil {
|
||||||
panic(err.Error())
|
fmt.Println(err.Error())
|
||||||
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1 +1,36 @@
|
|||||||
package cmd
|
package cmd
|
||||||
|
|
||||||
|
import (
|
||||||
|
"OpenIM/internal/msggateway"
|
||||||
|
"OpenIM/pkg/common/constant"
|
||||||
|
"github.com/spf13/cobra"
|
||||||
|
)
|
||||||
|
|
||||||
|
type MsgGatewayCmd struct {
|
||||||
|
*RootCmd
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewMsgGatewayCmd() MsgGatewayCmd {
|
||||||
|
return MsgGatewayCmd{NewRootCmd()}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *MsgGatewayCmd) AddWsPortFlag() {
|
||||||
|
m.Command.Flags().IntP(constant.FlagWsPort, "w", 0, "ws server listen port")
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *MsgGatewayCmd) getWsPortFlag(cmd *cobra.Command) int {
|
||||||
|
port, _ := cmd.Flags().GetInt(constant.FlagWsPort)
|
||||||
|
return port
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *MsgGatewayCmd) addRun() {
|
||||||
|
m.Command.Run = func(cmd *cobra.Command, args []string) {
|
||||||
|
msggateway.Init(m.getPortFlag(cmd), m.getWsPortFlag(cmd))
|
||||||
|
msggateway.Run(m.getPrometheusPortFlag(cmd))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *MsgGatewayCmd) Exec() error {
|
||||||
|
m.addRun()
|
||||||
|
return m.Execute()
|
||||||
|
}
|
||||||
|
@ -0,0 +1,25 @@
|
|||||||
|
package cmd
|
||||||
|
|
||||||
|
import (
|
||||||
|
"OpenIM/internal/msgtransfer"
|
||||||
|
"github.com/spf13/cobra"
|
||||||
|
)
|
||||||
|
|
||||||
|
type MsgTransferCmd struct {
|
||||||
|
*RootCmd
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewMsgTransferCmd() MsgTransferCmd {
|
||||||
|
return MsgTransferCmd{NewRootCmd()}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *MsgTransferCmd) addRunE() {
|
||||||
|
m.Command.RunE = func(cmd *cobra.Command, args []string) error {
|
||||||
|
return msgtransfer.StartTransfer(m.getPrometheusPortFlag(cmd))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *MsgTransferCmd) Exec() error {
|
||||||
|
m.addRunE()
|
||||||
|
return m.Execute()
|
||||||
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
package cmd
|
||||||
|
|
||||||
|
import (
|
||||||
|
"OpenIM/internal/push"
|
||||||
|
"OpenIM/internal/startrpc"
|
||||||
|
"OpenIM/pkg/common/config"
|
||||||
|
"github.com/spf13/cobra"
|
||||||
|
)
|
||||||
|
|
||||||
|
type PushCmd struct {
|
||||||
|
*RpcCmd
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewPushCmd() *PushCmd {
|
||||||
|
return &PushCmd{NewRpcCmd(config.Config.RpcRegisterName.OpenImPushName)}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (r *RpcCmd) AddPush() {
|
||||||
|
r.Command.RunE = func(cmd *cobra.Command, args []string) error {
|
||||||
|
return startrpc.Start(r.getPortFlag(cmd), r.rpcRegisterName, r.getPrometheusPortFlag(cmd), push.Start)
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue