Documentation
¶
Index ¶
- func CheckIfBucketExistsOrCreateIt(db *bolt.DB, bucket []byte) error
- func GetSOLPrice() (float64, error)
- func GetUserKey(ctx tele.Context) []byte
- func Join(ctx context.Context, client *telegram.Client)
- type ApiResponse
- type Client
- func (client *Client) CheckIfWalletIsDuplicate(walletAddress string, userKey string) (bool, error)
- func (client *Client) CheckInCache(publicKey string, tokenAddr string) (bool, uint64, uint64, error)
- func (client *Client) CheckUsersWallets(buckets [][]byte)
- func (client *Client) CheckWallet(next tele.HandlerFunc) tele.HandlerFunc
- func (client *Client) GetSOLBalance(publicKey string) (uint64, error)
- func (client *Client) GetSolanaAndTokenBalance(publicKey string, tokenAddr string) (uint64, uint64, error)
- func (client *Client) GetTokenInformationFromDexScreener(token string) ([]Pair, error)
- func (client *Client) GetTokenMetadata(tokenAddress string) (*TokenMetadata, error)
- func (client *Client) GetURIFromCache(address string) (string, error)
- func (client *Client) OnData(ctx tele.Context, ...) error
- func (client *Client) RedirectToProfile(ctx tele.Context) error
- func (client Client) Run(mainMenu tele.HandlerFunc)
- func (client *Client) SendMessageToEachSubscribedMemberOfBucket(bucket []byte, meta *TokenMetadata, reply *tele.ReplyMarkup, caption string) error
- func (client *Client) ShowIt(ctx tele.Context, wallet Wallet) error
- func (client *Client) ShowProfile(ctx tele.Context) error
- func (client *Client) SolanaRPCRateLimiter()
- func (client *Client) StartSubscribingForBucket(bucket []byte, ctx tele.Context, message string) error
- func (client *Client) StopSubscribingToBucket(ctx tele.Context, bucket []byte, msg string) error
- type DSNewPair
- type Entity
- type Info
- type Liquidity
- type NewRaydiumPool
- type NewTokenEvent
- type Pair
- type Price
- type PriceChange
- type Social
- type Token
- type TokenMetadata
- type TokensResponse
- type Tx
- type Txns
- type UserWallet
- type Volume
- type Wallet
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetSOLPrice ¶
func GetUserKey ¶
Types ¶
type ApiResponse ¶
type ApiResponse struct {
Data []Price `json:"data"`
}
type Client ¶
type Client struct {
*tele.Bot
Database *bolt.DB
Solana *solana.Client
Http *resty.Client
RPC chan func() error
MainMenu tele.HandlerFunc
TokenAddress string
TokenSymbol string
HoldingAmount uint
Logo string
}
func (*Client) CheckIfWalletIsDuplicate ¶
func (*Client) CheckInCache ¶
func (*Client) CheckUsersWallets ¶
func (*Client) CheckWallet ¶
func (client *Client) CheckWallet(next tele.HandlerFunc) tele.HandlerFunc
func (*Client) GetSOLBalance ¶
func (*Client) GetSolanaAndTokenBalance ¶
func (*Client) GetTokenInformationFromDexScreener ¶
func (*Client) GetTokenMetadata ¶
func (client *Client) GetTokenMetadata(tokenAddress string) (*TokenMetadata, error)
func (*Client) GetURIFromCache ¶
func (Client) Run ¶
func (client Client) Run(mainMenu tele.HandlerFunc)
func (*Client) SendMessageToEachSubscribedMemberOfBucket ¶
func (client *Client) SendMessageToEachSubscribedMemberOfBucket(bucket []byte, meta *TokenMetadata, reply *tele.ReplyMarkup, caption string) error
func (*Client) SolanaRPCRateLimiter ¶
func (client *Client) SolanaRPCRateLimiter()
func (*Client) StartSubscribingForBucket ¶
type DSNewPair ¶
type NewRaydiumPool ¶
type NewTokenEvent ¶
type Pair ¶
type Pair struct {
ChainID string `json:"chainID"`
DexID string `json:"dexId"`
URL string `json:"url"`
PairAddress string `json:"pairAddress"`
BaseToken Token `json:"baseToken"`
QuoteToken Token `json:"quoteToken"`
PriceNative string `json:"priceNative"`
PriceUsd string `json:"priceUsd"`
Txns Txns `json:"txns"`
DexVolume Volume `json:"volume"`
PriceChange PriceChange `json:"priceChange"`
DexLiquidity Liquidity `json:"liquidity"`
PairCreatedAt int `json:"pairCreatedAt"`
DexFDV int64 `json:"fdv"`
}
type PriceChange ¶
type TokenMetadata ¶
type TokenMetadata struct {
Name string `json:"string"`
Symbol string `json:"symbol"`
Description string `json:"description"`
Image string `json:"image"`
ShowName bool `json:"showName"`
CreatedOn string `json:"createdOn"`
Twitter string `json:"twitter"`
Telegram string `json:"telegram"`
Website string `json:"website"`
}
type TokensResponse ¶
type UserWallet ¶
func GetUsersAddressesInBucket ¶
func GetUsersAddressesInBucket(b *bolt.Bucket) (*UserWallet, error)
Click to show internal directories.
Click to hide internal directories.