Documentation
¶
Index ¶
- func SendFlipcashCurrencyReceivedFromDepositPush(ctx context.Context, pusher Pusher, user *commonpb.UserId, currencyName string, ...) error
- func SendFlipcashCurrencyReceivedFromSwapPush(ctx context.Context, pusher Pusher, user *commonpb.UserId, currencyName string, ...) error
- func SendLostBettingPoolPushes(ctx context.Context, pusher Pusher, poolName string, ...) error
- func SendTieBettingPoolPushes(ctx context.Context, pusher Pusher, poolName string, ...) error
- func SendUsdcReceivedFromDepositPush(ctx context.Context, pusher Pusher, user *commonpb.UserId, ...) error
- func SendUsdcReceivedFromSwapPush(ctx context.Context, pusher Pusher, user *commonpb.UserId, ...) error
- func SendWinBettingPoolPushes(ctx context.Context, pusher Pusher, poolName string, ...) error
- type FCMClient
- type FCMPusher
- type NoOpPusher
- type Pusher
- type Server
- type Token
- type TokenStore
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func SendFlipcashCurrencyReceivedFromDepositPush ¶ added in v1.13.28
func SendFlipcashCurrencyReceivedFromSwapPush ¶ added in v1.13.28
func SendLostBettingPoolPushes ¶ added in v1.8.20
func SendTieBettingPoolPushes ¶ added in v1.10.3
func SendUsdcReceivedFromDepositPush ¶ added in v1.13.28
func SendUsdcReceivedFromSwapPush ¶ added in v1.13.28
Types ¶
type FCMClient ¶ added in v1.5.0
type FCMClient interface {
SendEachForMulticast(ctx context.Context, message *messaging.MulticastMessage) (*messaging.BatchResponse, error)
}
type FCMPusher ¶ added in v1.5.0
type FCMPusher struct {
// contains filtered or unexported fields
}
func NewFCMPusher ¶ added in v1.5.0
func NewFCMPusher(log *zap.Logger, tokens TokenStore, client FCMClient) *FCMPusher
type NoOpPusher ¶ added in v1.5.0
type NoOpPusher struct{}
func (*NoOpPusher) SendBasicPushes ¶ added in v1.5.0
type Pusher ¶ added in v1.5.0
type Pusher interface {
SendBasicPushes(ctx context.Context, title, body string, users ...*commonpb.UserId) error
}
func NewNoOpPusher ¶ added in v1.8.20
func NewNoOpPusher() Pusher
type Server ¶
type Server struct {
pushpb.UnimplementedPushServer
// contains filtered or unexported fields
}
func NewServer ¶
func NewServer(log *zap.Logger, authz auth.Authorizer, tokens TokenStore) *Server
func (*Server) AddToken ¶
func (s *Server) AddToken(ctx context.Context, req *pushpb.AddTokenRequest) (*pushpb.AddTokenResponse, error)
func (*Server) DeleteTokens ¶
func (s *Server) DeleteTokens(ctx context.Context, req *pushpb.DeleteTokensRequest) (*pushpb.DeleteTokensResponse, error)
type Token ¶
Token represents a push notification token.
Tokens are bound to a (user, device) pair, identified by the AppInstallID.
type TokenStore ¶
type TokenStore interface {
// GetTokens returns all tokens for a user.
GetTokens(ctx context.Context, userID *commonpb.UserId) ([]Token, error)
// GetTokensBatch returns all tokens for a batch of users.
GetTokensBatch(ctx context.Context, userIDs ...*commonpb.UserId) ([]Token, error)
// AddToken adds a token for a user.
//
// If the token already exists for the same user and device, it will be updated.
AddToken(ctx context.Context, userID *commonpb.UserId, appInstallID *commonpb.AppInstallId, tokenType pushpb.TokenType, token string) error
// DeleteToken deletes a token for a user.
DeleteToken(ctx context.Context, tokenType pushpb.TokenType, token string) error
}
Click to show internal directories.
Click to hide internal directories.