enter.go 812 B

12345678910111213141516171819202122232425262728293031323334353637
  1. package service
  2. import (
  3. "context"
  4. "fmt"
  5. "google.golang.org/grpc"
  6. "iot_manager_service/util/websocket"
  7. "net"
  8. "strconv"
  9. )
  10. type server struct {
  11. UnimplementedSendMessageServer
  12. }
  13. func (s server) Distribution(ctx context.Context, req *DistributionRequest) (*DistributionResponse, error) {
  14. for _, user := range req.Users {
  15. websocket.SendMessage(strconv.FormatInt(user, 10), "您有新的文件,请注意查收!")
  16. }
  17. return &DistributionResponse{Code: 200}, nil
  18. }
  19. func InitGrpcServer() {
  20. //开启端口监听
  21. listen, _ := net.Listen("tcp", "127.0.0.1:9090")
  22. //创建grpc服务
  23. grpcServer := grpc.NewServer()
  24. //注册服务
  25. RegisterSendMessageServer(grpcServer, &server{})
  26. //启动服务
  27. err := grpcServer.Serve(listen)
  28. if err != nil {
  29. fmt.Printf("failed to serve: %v", err)
  30. return
  31. }
  32. }