rts-sim-testing-service/grpcproto/client.go

45 lines
976 B
Go
Raw Normal View History

package apiproto
2023-07-26 17:51:32 +08:00
import (
context "context"
"log"
2023-07-26 17:51:32 +08:00
grpc "google.golang.org/grpc"
"joylink.club/bj-rtsts-server/config"
)
// Centrifugo 实时消息传递客户端
var client CentrifugoApiClient
2023-07-26 17:51:32 +08:00
// Centrifugo 客户端初始化
func InitClient() {
2023-07-26 17:51:32 +08:00
conn, err := grpc.Dial(config.Config.Messaging.Centrifugo.Address, grpc.WithInsecure())
if err != nil {
panic(err)
}
client = NewCentrifugoApiClient(conn)
}
2023-07-26 17:51:32 +08:00
// 返回 Centrifugo 客户端
func Cli() CentrifugoApiClient {
return client
}
2023-07-26 17:51:32 +08:00
// 发布消息
func PublishMsg(channalName string, data []byte) {
resp, err := client.Publish(context.Background(), &PublishRequest{
Channel: channalName,
Data: data,
})
if err != nil {
log.Fatalf("Transport level error: %v \n", err)
} else {
if resp.GetError() != nil {
respError := resp.GetError()
log.Fatalf("Publish msg[%s] error %d(%s)\n", channalName, respError.Code, respError.Message)
} else {
log.Println("Successfully published")
}
}
}