Documentation ¶
Index ¶
- type ConnectionState
- type ConnectionType
- type StatusAPI
- func (api *StatusAPI) AccountManager() common.AccountManager
- func (api *StatusAPI) CallRPC(inputJSON string) string
- func (api *StatusAPI) CompleteTransaction(id common.QueuedTxID, password string) (gethcommon.Hash, error)
- func (api *StatusAPI) CompleteTransactions(ids []common.QueuedTxID, password string) map[common.QueuedTxID]common.TransactionResult
- func (api *StatusAPI) ConnectionChange(typ string, expensive bool)
- func (api *StatusAPI) CreateAccount(password string) (address, pubKey, mnemonic string, err error)
- func (api *StatusAPI) CreateAndInitCell(chatID, js string) string
- func (api *StatusAPI) CreateChildAccount(parentAddress, password string) (address, pubKey string, err error)
- func (api *StatusAPI) DiscardTransaction(id common.QueuedTxID) error
- func (api *StatusAPI) DiscardTransactions(ids []common.QueuedTxID) map[common.QueuedTxID]common.RawDiscardTransactionResult
- func (api *StatusAPI) JailCall(chatID, this, args string) string
- func (api *StatusAPI) JailExecute(chatID, code string) string
- func (api *StatusAPI) JailManager() jail.Manager
- func (api *StatusAPI) JailParse(chatID string, js string) string
- func (api *StatusAPI) Logout() error
- func (api *StatusAPI) NodeManager() common.NodeManager
- func (api *StatusAPI) Notify(token string) string
- func (api *StatusAPI) NotifyUsers(message string, payload fcm.NotificationPayload, tokens ...string) error
- func (api *StatusAPI) RecoverAccount(password, mnemonic string) (address, pubKey string, err error)
- func (api *StatusAPI) ResetChainData() error
- func (api *StatusAPI) ResetChainDataAsync() <-chan error
- func (api *StatusAPI) RestartNode() error
- func (api *StatusAPI) RestartNodeAsync() <-chan error
- func (api *StatusAPI) SelectAccount(address, password string) error
- func (api *StatusAPI) SendTransaction(ctx context.Context, args common.SendTxArgs) (gethcommon.Hash, error)
- func (api *StatusAPI) SetJailBaseJS(js string)
- func (api *StatusAPI) StartNode(config *params.NodeConfig) error
- func (api *StatusAPI) StartNodeAsync(config *params.NodeConfig) <-chan error
- func (api *StatusAPI) StopNode() error
- func (api *StatusAPI) StopNodeAsync() <-chan error
- func (api *StatusAPI) TxQueueManager() *transactions.Manager
- func (api *StatusAPI) VerifyAccountPassword(keyStoreDir, address, password string) (*keystore.Key, error)
- type StatusBackend
- func (b *StatusBackend) AccountManager() common.AccountManager
- func (b *StatusBackend) CallRPC(inputJSON string) string
- func (b *StatusBackend) CompleteTransaction(id common.QueuedTxID, password string) (gethcommon.Hash, error)
- func (b *StatusBackend) CompleteTransactions(ids []common.QueuedTxID, password string) map[common.QueuedTxID]common.TransactionResult
- func (b *StatusBackend) ConnectionChange(state ConnectionState)
- func (b *StatusBackend) DiscardTransaction(id common.QueuedTxID) error
- func (b *StatusBackend) DiscardTransactions(ids []common.QueuedTxID) map[common.QueuedTxID]common.RawDiscardTransactionResult
- func (b *StatusBackend) IsNodeRunning() bool
- func (b *StatusBackend) JailManager() jail.Manager
- func (b *StatusBackend) NodeManager() *node.NodeManager
- func (b *StatusBackend) ResetChainData() error
- func (b *StatusBackend) RestartNode() error
- func (b *StatusBackend) SendTransaction(ctx context.Context, args common.SendTxArgs) (hash gethcommon.Hash, err error)
- func (b *StatusBackend) StartNode(config *params.NodeConfig) error
- func (b *StatusBackend) StopNode() error
- func (b *StatusBackend) TxQueueManager() *transactions.Manager
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ConnectionState ¶
type ConnectionState struct { Offline bool `json:"offline"` Type ConnectionType `json:"type"` Expensive bool `json:"expensive"` }
ConnectionState represents device connection state and type, as reported by mobile framework.
Zero value represents default assumption about network (online and unknown type).
func (ConnectionState) String ¶
func (c ConnectionState) String() string
String formats ConnectionState for logs. Implements Stringer.
type ConnectionType ¶
type ConnectionType byte
ConnectionType represents description of available connection types as reported by React Native (see https://facebook.github.io/react-native/docs/netinfo.html) We're interested mainly in 'wifi' and 'cellular', but other types are also may be used.
const ( ConnectionUnknown ConnectionType = iota ConnectionCellular // cellular, LTE, 4G, 3G, EDGE, etc. ConnectionWifi // WIFI or iOS simulator )
ConnectionType constants
func NewConnectionType ¶
func NewConnectionType(s string) ConnectionType
NewConnectionType creates new ConnectionType from string.
type StatusAPI ¶
type StatusAPI struct {
// contains filtered or unexported fields
}
StatusAPI provides API to access Status related functionality.
func NewStatusAPIWithBackend ¶
func NewStatusAPIWithBackend(b *StatusBackend) *StatusAPI
NewStatusAPIWithBackend creates a new StatusAPI instance using the passed backend.
func (*StatusAPI) AccountManager ¶
func (api *StatusAPI) AccountManager() common.AccountManager
AccountManager returns reference to account manager
func (*StatusAPI) CompleteTransaction ¶
func (api *StatusAPI) CompleteTransaction(id common.QueuedTxID, password string) (gethcommon.Hash, error)
CompleteTransaction instructs backend to complete sending of a given transaction
func (*StatusAPI) CompleteTransactions ¶
func (api *StatusAPI) CompleteTransactions(ids []common.QueuedTxID, password string) map[common.QueuedTxID]common.TransactionResult
CompleteTransactions instructs backend to complete sending of multiple transactions
func (*StatusAPI) ConnectionChange ¶
ConnectionChange handles network state changes logic.
func (*StatusAPI) CreateAccount ¶
CreateAccount creates an internal geth account BIP44-compatible keys are generated: CKD#1 is stored as account key, CKD#2 stored as sub-account root Public key of CKD#1 is returned, with CKD#2 securely encoded into account key file (to be used for sub-account derivations)
func (*StatusAPI) CreateAndInitCell ¶
CreateAndInitCell creates a new jail cell context, with the given chatID as identifier. New context executes provided JavaScript code, right after the initialization.
func (*StatusAPI) CreateChildAccount ¶
func (api *StatusAPI) CreateChildAccount(parentAddress, password string) (address, pubKey string, err error)
CreateChildAccount creates sub-account for an account identified by parent address. CKD#2 is used as root for master accounts (when parentAddress is ""). Otherwise (when parentAddress != ""), child is derived directly from parent.
func (*StatusAPI) DiscardTransaction ¶
func (api *StatusAPI) DiscardTransaction(id common.QueuedTxID) error
DiscardTransaction discards a given transaction from transaction queue
func (*StatusAPI) DiscardTransactions ¶
func (api *StatusAPI) DiscardTransactions(ids []common.QueuedTxID) map[common.QueuedTxID]common.RawDiscardTransactionResult
DiscardTransactions discards given multiple transactions from transaction queue
func (*StatusAPI) JailCall ¶
JailCall executes given JavaScript function w/i a jail cell context identified by the chatID.
func (*StatusAPI) JailExecute ¶
JailExecute allows to run arbitrary JS code within a jail cell.
func (*StatusAPI) JailManager ¶
JailManager returns reference to jail
func (*StatusAPI) JailParse ¶
JailParse creates a new jail cell context, with the given chatID as identifier. New context executes provided JavaScript code, right after the initialization. DEPRECATED in favour of CreateAndInitCell.
func (*StatusAPI) NodeManager ¶
func (api *StatusAPI) NodeManager() common.NodeManager
NodeManager returns reference to node manager
func (*StatusAPI) Notify ¶
Notify sends a push notification to the device with the given token. @deprecated
func (*StatusAPI) NotifyUsers ¶
func (api *StatusAPI) NotifyUsers(message string, payload fcm.NotificationPayload, tokens ...string) error
NotifyUsers send notifications to users.
func (*StatusAPI) RecoverAccount ¶
RecoverAccount re-creates master key using given details. Once master key is re-generated, it is inserted into keystore (if not already there).
func (*StatusAPI) ResetChainData ¶
ResetChainData remove chain data from data directory. Node is stopped, and new node is started, with clean data directory.
func (*StatusAPI) ResetChainDataAsync ¶
ResetChainDataAsync remove chain data from data directory, in async manner
func (*StatusAPI) RestartNode ¶
RestartNode restart running Status node, fails if node is not running
func (*StatusAPI) RestartNodeAsync ¶
RestartNodeAsync restart running Status node, in async manner
func (*StatusAPI) SelectAccount ¶
SelectAccount selects current account, by verifying that address has corresponding account which can be decrypted using provided password. Once verification is done, decrypted key is injected into Whisper (as a single identity, all previous identities are removed).
func (*StatusAPI) SendTransaction ¶
func (api *StatusAPI) SendTransaction(ctx context.Context, args common.SendTxArgs) (gethcommon.Hash, error)
SendTransaction creates a new transaction and waits until it's complete.
func (*StatusAPI) SetJailBaseJS ¶
SetJailBaseJS allows to setup initial JavaScript to be loaded on each jail.CreateAndInitCell().
func (*StatusAPI) StartNode ¶
func (api *StatusAPI) StartNode(config *params.NodeConfig) error
StartNode start Status node, fails if node is already started
func (*StatusAPI) StartNodeAsync ¶
func (api *StatusAPI) StartNodeAsync(config *params.NodeConfig) <-chan error
StartNodeAsync start Status node, fails if node is already started Returns immediately w/o waiting for node to start (see node.ready)
func (*StatusAPI) StopNodeAsync ¶
StopNodeAsync stop Status node. Stopped node cannot be resumed. Returns immediately, w/o waiting for node to stop (see node.stopped)
func (*StatusAPI) TxQueueManager ¶
func (api *StatusAPI) TxQueueManager() *transactions.Manager
TxQueueManager returns reference to account manager
func (*StatusAPI) VerifyAccountPassword ¶
func (api *StatusAPI) VerifyAccountPassword(keyStoreDir, address, password string) (*keystore.Key, error)
VerifyAccountPassword tries to decrypt a given account key file, with a provided password. If no error is returned, then account is considered verified.
type StatusBackend ¶
type StatusBackend struct {
// contains filtered or unexported fields
}
StatusBackend implements Status.im service
func NewStatusBackend ¶
func NewStatusBackend() *StatusBackend
NewStatusBackend create a new NewStatusBackend instance
func (*StatusBackend) AccountManager ¶
func (b *StatusBackend) AccountManager() common.AccountManager
AccountManager returns reference to account manager
func (*StatusBackend) CallRPC ¶
func (b *StatusBackend) CallRPC(inputJSON string) string
CallRPC executes RPC request on node's in-proc RPC server
func (*StatusBackend) CompleteTransaction ¶
func (b *StatusBackend) CompleteTransaction(id common.QueuedTxID, password string) (gethcommon.Hash, error)
CompleteTransaction instructs backend to complete sending of a given transaction
func (*StatusBackend) CompleteTransactions ¶
func (b *StatusBackend) CompleteTransactions(ids []common.QueuedTxID, password string) map[common.QueuedTxID]common.TransactionResult
CompleteTransactions instructs backend to complete sending of multiple transactions
func (*StatusBackend) ConnectionChange ¶
func (b *StatusBackend) ConnectionChange(state ConnectionState)
ConnectionChange handles network state changes logic.
func (*StatusBackend) DiscardTransaction ¶
func (b *StatusBackend) DiscardTransaction(id common.QueuedTxID) error
DiscardTransaction discards a given transaction from transaction queue
func (*StatusBackend) DiscardTransactions ¶
func (b *StatusBackend) DiscardTransactions(ids []common.QueuedTxID) map[common.QueuedTxID]common.RawDiscardTransactionResult
DiscardTransactions discards given multiple transactions from transaction queue
func (*StatusBackend) IsNodeRunning ¶
func (b *StatusBackend) IsNodeRunning() bool
IsNodeRunning confirm that node is running
func (*StatusBackend) JailManager ¶
func (b *StatusBackend) JailManager() jail.Manager
JailManager returns reference to jail
func (*StatusBackend) NodeManager ¶
func (b *StatusBackend) NodeManager() *node.NodeManager
NodeManager returns reference to node manager
func (*StatusBackend) ResetChainData ¶
func (b *StatusBackend) ResetChainData() error
ResetChainData remove chain data from data directory. Node is stopped, and new node is started, with clean data directory.
func (*StatusBackend) RestartNode ¶
func (b *StatusBackend) RestartNode() error
RestartNode restart running Status node, fails if node is not running
func (*StatusBackend) SendTransaction ¶
func (b *StatusBackend) SendTransaction(ctx context.Context, args common.SendTxArgs) (hash gethcommon.Hash, err error)
SendTransaction creates a new transaction and waits until it's complete.
func (*StatusBackend) StartNode ¶
func (b *StatusBackend) StartNode(config *params.NodeConfig) error
StartNode start Status node, fails if node is already started
func (*StatusBackend) StopNode ¶
func (b *StatusBackend) StopNode() error
StopNode stop Status node. Stopped node cannot be resumed.
func (*StatusBackend) TxQueueManager ¶
func (b *StatusBackend) TxQueueManager() *transactions.Manager
TxQueueManager returns reference to transactions manager