Documentation ¶
Index ¶
- Variables
- type InternalServer
- type InternalTemplateData
- type PublicServer
- func (s *PublicServer) Close() error
- func (s *PublicServer) ConnectFullPublicInterface()
- func (s *PublicServer) OnNewBlock(hash string, height uint32)
- func (s *PublicServer) OnNewFiatRatesTicker(ticker *common.CurrencyRatesTicker)
- func (s *PublicServer) OnNewTx(tx *bchain.MempoolTx)
- func (s *PublicServer) OnNewTxAddr(tx *bchain.Tx, desc bchain.AddressDescriptor)
- func (s *PublicServer) Run() error
- func (s *PublicServer) Shutdown(ctx context.Context) error
- type SocketIoServer
- type TemplateData
- type WebsocketServer
- func (s *WebsocketServer) GetHandler() http.Handler
- func (s *WebsocketServer) OnNewBlock(hash string, height uint32)
- func (s *WebsocketServer) OnNewFiatRatesTicker(ticker *common.CurrencyRatesTicker)
- func (s *WebsocketServer) OnNewTx(tx *bchain.MempoolTx)
- func (s *WebsocketServer) ServeHTTP(w http.ResponseWriter, r *http.Request)
- type WsAccountInfoReq
- type WsAccountUtxoReq
- type WsBackendInfo
- type WsBalanceHistoryReq
- type WsBlockHashReq
- type WsBlockHashRes
- type WsBlockReq
- type WsCurrentFiatRatesReq
- type WsEstimateFeeReq
- type WsEstimateFeeRes
- type WsFiatRatesForTimestampsReq
- type WsFiatRatesTickersListReq
- type WsInfoRes
- type WsMempoolFiltersReq
- type WsReq
- type WsRes
- type WsSendTransactionReq
- type WsSubscribeAddressesReq
- type WsSubscribeFiatRatesReq
- type WsTransactionReq
- type WsTransactionSpecificReq
Constants ¶
This section is empty.
Variables ¶
var ( // ErrorMethodNotAllowed is returned when client tries to upgrade method other than GET ErrorMethodNotAllowed = errors.New("Method not allowed") )
Functions ¶
This section is empty.
Types ¶
type InternalServer ¶
type InternalServer struct {
// contains filtered or unexported fields
}
InternalServer is handle to internal http server
func NewInternalServer ¶
func NewInternalServer(binding, certFiles string, db *db.RocksDB, chain bchain.BlockChain, mempool bchain.Mempool, txCache *db.TxCache, metrics *common.Metrics, is *common.InternalState, fiatRates *fiat.FiatRates) (*InternalServer, error)
NewInternalServer creates new internal http interface to blockbook and returns its handle
type InternalTemplateData ¶
type InternalTemplateData struct { CoinName string CoinShortcut string CoinLabel string ChainType bchain.ChainType Error *api.APIError InternalDataErrors []db.BlockInternalDataError RefetchingInternalData bool }
InternalTemplateData is used to transfer data to the templates
type PublicServer ¶
type PublicServer struct {
// contains filtered or unexported fields
}
PublicServer provides public http server functionality
func NewPublicServer ¶
func NewPublicServer(binding string, certFiles string, db *db.RocksDB, chain bchain.BlockChain, mempool bchain.Mempool, txCache *db.TxCache, explorerURL string, metrics *common.Metrics, is *common.InternalState, fiatRates *fiat.FiatRates, debugMode bool) (*PublicServer, error)
NewPublicServer creates new public server http interface to blockbook and returns its handle only basic functionality is mapped, to map all functions, call
func (*PublicServer) ConnectFullPublicInterface ¶
func (s *PublicServer) ConnectFullPublicInterface()
ConnectFullPublicInterface enables complete public functionality
func (*PublicServer) OnNewBlock ¶
func (s *PublicServer) OnNewBlock(hash string, height uint32)
OnNewBlock notifies users subscribed to bitcoind/hashblock about new block
func (*PublicServer) OnNewFiatRatesTicker ¶
func (s *PublicServer) OnNewFiatRatesTicker(ticker *common.CurrencyRatesTicker)
OnNewFiatRatesTicker notifies users subscribed to bitcoind/fiatrates about new ticker
func (*PublicServer) OnNewTx ¶
func (s *PublicServer) OnNewTx(tx *bchain.MempoolTx)
OnNewTx notifies users subscribed to notification about new tx
func (*PublicServer) OnNewTxAddr ¶
func (s *PublicServer) OnNewTxAddr(tx *bchain.Tx, desc bchain.AddressDescriptor)
OnNewTxAddr notifies users subscribed to notification about new tx
type SocketIoServer ¶
type SocketIoServer struct {
// contains filtered or unexported fields
}
SocketIoServer is handle to SocketIoServer
func NewSocketIoServer ¶
func NewSocketIoServer(db *db.RocksDB, chain bchain.BlockChain, mempool bchain.Mempool, txCache *db.TxCache, metrics *common.Metrics, is *common.InternalState, fiatRates *fiat.FiatRates) (*SocketIoServer, error)
NewSocketIoServer creates new SocketIo interface to blockbook and returns its handle
func (*SocketIoServer) GetHandler ¶
func (s *SocketIoServer) GetHandler() http.Handler
GetHandler returns socket.io http handler
func (*SocketIoServer) OnNewBlockHash ¶
func (s *SocketIoServer) OnNewBlockHash(hash string)
OnNewBlockHash notifies users subscribed to bitcoind/hashblock about new block
func (*SocketIoServer) OnNewTxAddr ¶
func (s *SocketIoServer) OnNewTxAddr(txid string, desc bchain.AddressDescriptor)
OnNewTxAddr notifies users subscribed to bitcoind/addresstxid about new block
type TemplateData ¶
type TemplateData struct { CoinName string CoinShortcut string CoinLabel string InternalExplorer bool ChainType bchain.ChainType FungibleTokenName bchain.TokenTypeName NonFungibleTokenName bchain.TokenTypeName MultiTokenName bchain.TokenTypeName Address *api.Address AddrStr string Tx *api.Tx Error *api.APIError Blocks *api.Blocks Block *api.Block Info *api.SystemInfo MempoolTxids *api.MempoolTxids Page int PrevPage int NextPage int PagingRange []int PageParams template.URL Minified string TOSLink string SendTxHex string Status string NonZeroBalanceTokens bool TokenId string URI string ContractInfo *bchain.ContractInfo SecondaryCoin string UseSecondaryCoin bool CurrentSecondaryCoinRate float64 CurrentTicker *common.CurrencyRatesTicker SecondaryCurrencies []string TxDate string TxSecondaryCoinRate float64 TxTicker *common.CurrencyRatesTicker }
TemplateData is used to transfer data to the templates
type WebsocketServer ¶
type WebsocketServer struct {
// contains filtered or unexported fields
}
WebsocketServer is a handle to websocket server
func NewWebsocketServer ¶
func NewWebsocketServer(db *db.RocksDB, chain bchain.BlockChain, mempool bchain.Mempool, txCache *db.TxCache, metrics *common.Metrics, is *common.InternalState, fiatRates *fiat.FiatRates) (*WebsocketServer, error)
NewWebsocketServer creates new websocket interface to blockbook and returns its handle
func (*WebsocketServer) GetHandler ¶
func (s *WebsocketServer) GetHandler() http.Handler
GetHandler returns http handler
func (*WebsocketServer) OnNewBlock ¶
func (s *WebsocketServer) OnNewBlock(hash string, height uint32)
OnNewBlock is a callback that broadcasts info about new block to subscribed clients
func (*WebsocketServer) OnNewFiatRatesTicker ¶
func (s *WebsocketServer) OnNewFiatRatesTicker(ticker *common.CurrencyRatesTicker)
OnNewFiatRatesTicker is a callback that broadcasts info about fiat rates affecting subscribed currency
func (*WebsocketServer) OnNewTx ¶
func (s *WebsocketServer) OnNewTx(tx *bchain.MempoolTx)
OnNewTx is a callback that broadcasts info about a tx affecting subscribed address
func (*WebsocketServer) ServeHTTP ¶
func (s *WebsocketServer) ServeHTTP(w http.ResponseWriter, r *http.Request)
ServeHTTP sets up handler of websocket channel
type WsAccountInfoReq ¶
type WsAccountInfoReq struct { Descriptor string `json:"descriptor"` Details string `json:"details,omitempty" ts_type:"'basic' | 'tokens' | 'tokenBalances' | 'txids' | 'txslight' | 'txs'"` Tokens string `json:"tokens,omitempty" ts_type:"'derived' | 'used' | 'nonzero'"` PageSize int `json:"pageSize,omitempty"` Page int `json:"page,omitempty"` FromHeight int `json:"from,omitempty"` ToHeight int `json:"to,omitempty"` ContractFilter string `json:"contractFilter,omitempty"` SecondaryCurrency string `json:"secondaryCurrency,omitempty"` Gap int `json:"gap,omitempty"` }
type WsAccountUtxoReq ¶
type WsAccountUtxoReq struct {
Descriptor string `json:"descriptor"`
}
type WsBackendInfo ¶
type WsBalanceHistoryReq ¶
type WsBlockHashReq ¶
type WsBlockHashReq struct {
Height int `json:"height"`
}
type WsBlockHashRes ¶
type WsBlockHashRes struct {
Hash string `json:"hash"`
}
type WsBlockReq ¶
type WsCurrentFiatRatesReq ¶
type WsEstimateFeeReq ¶
type WsEstimateFeeRes ¶
type WsInfoRes ¶
type WsInfoRes struct { Name string `json:"name"` Shortcut string `json:"shortcut"` Decimals int `json:"decimals"` Version string `json:"version"` BestHeight int `json:"bestHeight"` BestHash string `json:"bestHash"` Block0Hash string `json:"block0Hash"` Testnet bool `json:"testnet"` Backend WsBackendInfo `json:"backend"` }
type WsMempoolFiltersReq ¶
type WsReq ¶
type WsReq struct { ID string `json:"id"` Method string `` /* 517-byte string literal not displayed */ Params json.RawMessage `json:"params" ts_type:"any"` }
type WsSendTransactionReq ¶
type WsSendTransactionReq struct {
Hex string `json:"hex"`
}
type WsSubscribeAddressesReq ¶
type WsSubscribeAddressesReq struct {
Addresses []string `json:"addresses"`
}
type WsSubscribeFiatRatesReq ¶
type WsTransactionReq ¶
type WsTransactionReq struct {
Txid string `json:"txid"`
}
type WsTransactionSpecificReq ¶
type WsTransactionSpecificReq struct {
Txid string `json:"txid"`
}