tp-eosjs v1.7.0
tp-eosjs
- TokenPocket 已经兼容 Scatter,直接在钱包内 Dapp浏览器 内输入URL即可使用。(本项目只支持移动端TokenPocket)
TokenPocket is already compatible with Scatter. You can input your URL in the Dapp browser inside the TP Wallet. (mobile only)
在这里查看TokenPocket支持的其他区块链底层 JS API:
Check other blockchain js api here:
Javascript SDK for TokenPocket EOS Dapp

- We also have an Android&iOS SDK
Usage
请在TokenPocket中使用该SDK。 请在发现 -> DApp浏览器中 开发调试
Open your site in TokenPocket as a Dapp. Develope and test in Discover -> DappBrowser.
Npm
var tp = require('tp-eosjs')
console.log(tp.isConnected());Browser
<script src="./dist/tp.js"></script>
<script>
console.log(tp.isConnected());
</script>- Usage 1.EOS 1.1 tp.eosTokenTransfer 1.2 tp.pushEosAction 1.3 tp.getEosBalance 1.4 tp.getEosTableRows 1.5 tp.getEosAccountInfo 1.6 tp.getEosTransactionRecord 1.7 tp.eosAuthSign 2. COMMON 2.1 tp.getAppInfo 2.2 tp.getWalletList (Deprecated) 2.3 tp.getDeviceId 2.4 tp.shareNewsToSNS 2.5 tp.invokeQRScanner 2.6 tp.getCurrentWallet (Recommended) 2.7 tp.getWallets (Deprecated) 2.8 tp.sign 2.9 tp.back 2.10 tp.close 2.11 tp.fullScreen 2.12 tp.importWallet 2.13 tp.setMenubar 2.14 tp.startChat 2.15 tp.saveImage 2.16 tp.rollHorizontal 2.17 tp.popGestureRecognizerEnable 3 EOS sidechain 3.1 tp.tokenTransfer 3.2 tp.pushAction 3.3 tp.getBalance 3.4 tp.getTableRows 3.5 tp.getAccountInfo 3.6 tp.getTransactionRecord 3.7 tp.authSign
1.EOS
1.1 tp.eosTokenTransfer
tp.eosTokenTransfer(params)Parameters
params- Object:
from:Stringto:Stringamount:String|NumbertokenName:Stringprecision:Number|Stringcontract:Stringmemo:String- (optional),address:String- public key for current account
Returns
Object:
result:Booleandata:ObjecttransactionId:Stirng
Example
tp.eosTokenTransfer({
from: 'abcabcabcabc',
to: 'itokenpocket',
amount: '0.0100',
tokenName: 'EOS',
precision: 4,
contract: 'eosio.token',
memo: 'test',
address: 'EOS7ds9A9FGDsKrdymQ4ynKbMgbCVaaaaaaaaaaa'
}).then(console.log)
> {
result: true,
data: {transactionId: 'b428357c7xxxxxxxxxxxxxx'}
}1.2 tp.pushEosAction
tp.pushEosAction(params)Parameters
params- Object:
actions:Array- Standard eos actionsaccount:String- current accountaddress:String- public key for current account
Returns
Object:
result:Booleandata:ObjecttransactionId:Stirng
Example
tp.pushEosAction({
actions: [
{
account: 'eosio.token',
name: 'transfer',
authorization: [{
actor: 'aaaabbbbcccc',
permission: 'active'
}],
data: {
from: 'aaaabbbbcccc',
to: 'itokenpocket',
quantity: '1.3000 EOS',
memo: 'something to say'
}
},
{
account: "eosio",
name: "delegatebw",
authorization: [
{
actor: 'aaaabbbbcccc',
permission: "active"
}
],
data: {
from: 'aaaabbbbcccc',
receiver: 'itokenpocket',
stake_net_quantity: "0.0100 EOS",
stake_cpu_quantity: "0.0100 EOS",
transfer: 0
}
}
],
address: 'EOS7ds9A9FGDsKrdymQ4ynKbMgbCVaaaaaaaaaaa',
account: 'aaaabbbbcccc'
}).then(console.log)
> {
result: true,
data: {transactionId: 'b428357c7xxxxxxxxxxxxxx'}
}1.3 tp.getEosBalance
tp.getEosBalance(params)Parameters
params- Object:
account:Stringcontract:Stringsymbol:String
Returns
Object:
result:Booleandata:Objectsymbol:Stringbalance:Stringcontract:Stringaccount:String
msg:String
Example
tp.getEosBalance({
account: 'itokenpocket',
contract: 'eosio.token',
symbol: 'EOS'
}).then(console.log)
> {
result: true,
data:{"symbol":"EOS","balance":"["142.2648 EOS"]","contract":"eosio.token","account":"itokenpocket"},
msg: 'success'
}1.4 tp.getEosTableRows
获取合约内table数据
tp.getEosTableRows(params)Parameters
params- Object:
json:Booleancode:Stringscope:Stringtable:Stringtable_key:Stirnglower_bound:Stringupper_bound:Stringlimit:Number
Returns
Object:
result:Booleandata:Objectrows:Arraymore:boolean
msg:String
Example
tp.getEosTableRows({
json: true,
code: 'abcabcabcabc',
scope: 'abcabcabcabc',
table: 'table1',
lower_bound: '10',
limit: 20
}).then(console.log)
> {
result: true,
data:{
rows: [{a: 1, b: 'name' }, ...],
more: true
},
msg: 'success'
}1.5 tp.getEosAccountInfo
tp.getEosAccountInfo(params)Parameters
params- Object:
account:String
Returns
Object:
result:Booleandata:Object- Standard account objectmsg:String
Example
tp.getEosAccountInfo({
account: 'itokenpocket'
}).then(console.log)
> {
result: true,
data:{"account_name":"itokenpocket",..., "is_proxy":0}},
msg: 'success'
}1.6 tp.getEosTransactionRecord
tp.getEosTransactionRecord(params)Parameters
params- Object:
account:Stringstart:Number- default: 0count:Number- default: 10sort:String- 'desc | asc' default: desctoken:String- optionalcontract:String- optional
Returns
Object:
result:Booleandata:Object- Standard account objectmsg:String
Example
tp.getEosTransactionRecord({
start: 10,
count: 20,
account: 'itokenpocket',
token: 'EOS',
sort: 'desc',
contract: 'eosio.token'
}).then(console.log)
> {
result: true,
data: [{
"title": "",
"comment": "",
"hid": "4bd63a191a1e3e00f13fe6df55d0c08803800a5e7cd0d0b15c92d52b3c42285e",
"producer": "bp4",
"timestamp": 1531578890,
"action_index": 2,
"account": "eosio",
"name": "delegatebw",
"from": "tokenpocket1",
"to": "clementtes43",
"blockNum": 4390980,
"quantity": "0.2000000000 EOS",
"count": "0.2000000000",
"symbol": "EOS",
"memo": "",
"maximum_upply": "",
"ram_price": "",
"bytes": "",
"status": 1,
"data": "",
real_value:"0.2000000000"
}, ...],
msg: 'success'
}1.7 tp.eosAuthSign
tp.eosAuthSign(params)Parameters
params- Object:
from:String- eos account namepublicKey:Stringsigndata:String
Returns
- Verify the
timestamp+wallet+signdata+refstring. - 按照 timestamp+wallet+signdata+ref的顺序拼接字符串校验签名
Object:
result:Booleandata:Objectsignature:Stringref:String- 'TokenPocket'signdata:Stringtimestamp:Stringwallet:String- eos account name
msg:String
Example
tp.eosAuthSign({
from: 'itokenpocket',
publicKey: 'EOS13we3sbereewwwwww',
signdata: 'something to sign'
}).then(console.log)
> {
result: true,
data: {
signature: 'SIG_EBEFWA-AFEBEf-eeee-aaaaa-eeeeea23d',
timestamp: '1534735280',
ref: 'TokenPocket',
signdata: 'something to sign',
wallet: 'itokenpocket'
},
msg: 'success'
}2. COMMON
2.1 tp.getAppInfo
tp.getAppInfo()Returns
Object:
result:Booleandata:Objectname:Stringsystem:Stringversion:Stringsys_version:String
msg:String
Example
tp.getAppInfo().then(console.log)
> {
result: true,
data: {
name: 'TokenPocket',
system: 'android',
version: '0.3.4',
sys_version: '26'
},
msg: 'success'
}2.2 tp.getWalletList (Deprecated)
tp.getWalletList(params)Parameters
params- String|Number - eth|1 for ETH, jingtum|2 for Jingtum, moac|3 for MOAC, eos|4 for EOS , enu|5 for ENU
Returns
Object:
wallets:Objecteos|eth|moac|jingtum:Array- Wallet info
Example
tp.getWalletList('eth').then(console.log)
> {
wallets: {
'eth': [{
name: 'pk-1',
address: '0xaaaaaaa',
tokens: {'eth': 1000},
...
},
...
]
}
}2.3 tp.getDeviceId
tp.getDeviceId()Returns
Object:
device_id:String
Example
tp.getDeviceId().then(console.log)
> {
device_id: 'dexa23333'
}2.4 tp.shareNewsToSNS
分享 share to SNS
tp.shareNewsToSNS(params)Parameters
params- Object:
title:Stringdesc:Stringurl:StringpreviewImage:String
Example
tp.shareNewsToSNS({
title: 'TokenPocket',
desc: 'Your Universal Wallet',
url: 'https://www.mytokenpocket.vip/',
previewImage: 'https://www.mytokenpocket.vip/images/index/logo.png'
})2.5 tp.invokeQRScanner
扫码 Scan the QRcode
tp.invokeQRScanner()Returns
String
Example
tp.invokeQRScanner().then(console.log)
> "abcdefg"2.6 tp.getCurrentWallet (Recommended)
获取用户当前钱包
1 for ETH, 2 for Jingtum, 3 for MOAC, 4 for EOS , 5 for ENU, 6 for BOS, 7 for IOST , 8 for COSMOS , 9for binance 10 for TRON
tp.getCurrentWallet()Returns
Object:
result:Booleandata:Objectname:Stringaddress:Stringblockchain_id:Numberpermissions:Array
msg:String
Example
tp.getCurrentWallet().then(console.log)
> {
result: true,
data: {
name: 'itokenpocket',
address: 'EOSaaaaaaaaabbbbbbbb',
blockchain_id: 4,
permissions: ['active']
},
msg: 'success'
}2.7 tp.getWallets (Deprecated)
获取用户钱包列表 Get user's wallet list
1 for ETH, 2 for Jingtum, 3 for MOAC, 4 for EOS , 5 for ENU
tp.getWallets()Returns
Object:
result:Booleandata:Arrayaddress:Stringname:Stringblockchain_id:Number
msg:String
Example
tp.getWallets().then(console.log)
> {
result: true,
data: [
{
name: 'itokenpocket',
address: 'EOSaaaaaaaaabbbbbbbb',
blockchain_id: 4
},
{
name: 'ethwallet11',
address: '0x40e5A542087FA4b966209707177b103d158Fd3A4',
blockchain_id: 1
}
],
msg: 'success'
}2.8 tp.sign
tp.sign(params)Parameters
params- Object:
appid:String
Returns
Object:
result:Booleandata:ObjectdeviceId:Stirngappid:Stringtimestamp:Numbersign:String
msg:String
Example
tp.sign({
appid: 'swEmwEQ666'
}).then(console.log)
> {
result: true,
data: {
deviceId: 'EBEFWA-AFEBEf-eeee-aaaaa-eeeeea23d',
appid: 'swEmwEQ666',
timestamp: 1534735280,
sign: '713efewwfegwohvnqooyge38h4n421ll3fwzib9e3q00'
},
msg: 'success'
}2.9 tp.back
页面后退一页 back forward
tp.back()Example
tp.back()2.10 tp.close
关闭当前Dapp页面 close the dapp
tp.close()Example
tp.close()2.11 tp.fullScreen
全屏应用 fullScreen the dapp
tp.fullScreen(params)Parameters
params- Object:
fullScreen:Number1 - fullScreen, 0 - cancel
Example
tp.fullScreen({
fullScreen: 0
})2.12 tp.importWallet
钱包导入界面
Invoke the wallet importing window
tp.importWallet(blockchain)Parameters
blockchain- String: 'eos' | 'eth' | 'enu' | 'moac'
Example
tp.importWallet('eos');2.13 tp.setMenubar
全屏时 设置dapp浏览器导航条可见性
When the fullscreen is on, set the dapp browser's navbar visiblity
tp.setMenubar(params)Parameters
params- Object:
flag:Number1 - open, 0 - close(default)
Example
tp.setMenubar({
flag: 1
});2.14 tp.startChat
跳到TP聊天
Open TP IM
tp.startChat(params)Parameters
params- Object:
sessionType:Number私聊是0 群聊是1account:String私聊是目标用户的账号(eos,iost等)或地址(eth,moac等), 群聊是群的idblockChainId:Number只有私聊需要填, 私聊时目标用户的底层 1 for ETH, 2 for Jingtum, 3 MOAC, 4 for EOS , 5 for ENU, 6 for BOS, 7 for IOST
Example
tp.startChat({
account: 'itokenpocket',
sessionType: 0,
blockChainId: 4
});2.15 tp.saveImage
保存图片
Save image
tp.saveImage(params)Parameters
params- Object:
url:Stringimage's url
Example
tp.saveImage({
url: 'https://dapp.mytokenpocket.vip/tokenpocket_logo.png'
});2.16 tp.rollHorizontal
横屏
rotate the screen horizontal
tp.rollHorizontal(params)Parameters
params- Object:
horizontal:Boolean
Example
tp.rollHorizontal({
horizontal: true
});2.17 tp.popGestureRecognizerEnable
禁止iOS自带的左滑手势返回,对安卓无影响
Disable iOS's left-sliding gesture to return. There is no effect on Android
tp.popGestureRecognizerEnable(params)Parameters
params- Object:
enable:Boolean- default:true
Example
tp.popGestureRecognizerEnable({
enable: false
});2.18 tp.forwardNavigationGesturesEnable
禁止webview自带的左滑手势触发goback, 对安卓无影响
Disable the left sliding gesture by WebView to trigger goback. There is no effect on Android
tp.forwardNavigationGesturesEnable(params)Parameters
params- Object:
enable:Boolean- default:true
Example
tp.forwardNavigationGesturesEnable({
enable: false
});3 EOS sidechain
3.1 tp.tokenTransfer
tp.tokenTransfer(params)Parameters
params- Object:
blockchain:String- 'eos' | 'bos'from:Stringto:Stringamount:String|NumbertokenName:Stringprecision:Number|Stringcontract:Stringmemo:String- (optional),address:String- public key for current account
Returns
Object:
result:Booleandata:ObjecttransactionId:Stirng
Example
tp.tokenTransfer({
blockchain: 'eos',
from: 'abcabcabcabc',
to: 'itokenpocket',
amount: '0.0100',
tokenName: 'EOS',
precision: 4,
contract: 'eosio.token',
memo: 'test',
address: 'EOS7ds9A9FGDsKrdymQ4ynKbMgbCVaaaaaaaaaaa'
}).then(console.log)
> {
result: true,
data: {transactionId: 'b428357c7xxxxxxxxxxxxxx'}
}3.2 tp.pushAction
tp.pushAction(params)Parameters
params- Object:
blockchain:String- 'eos' | 'bos'actions:Array- Standard eos actionsaccount:String- current accountaddress:String- public key for current account
Returns
Object:
result:Booleandata:ObjecttransactionId:Stirng
Example
tp.pushAction({
blockchain: 'eos',
actions: [
{
account: 'eosio.token',
name: 'transfer',
authorization: [{
actor: 'aaaabbbbcccc',
permission: 'active'
}],
data: {
from: 'aaaabbbbcccc',
to: 'itokenpocket',
quantity: '1.3000 EOS',
memo: 'something to say'
}
},
{
account: "eosio",
name: "delegatebw",
authorization: [
{
actor: 'aaaabbbbcccc',
permission: "active"
}
],
data: {
from: 'aaaabbbbcccc',
receiver: 'itokenpocket',
stake_net_quantity: "0.0100 EOS",
stake_cpu_quantity: "0.0100 EOS",
transfer: 0
}
}
],
address: 'EOS7ds9A9FGDsKrdymQ4ynKbMgbCVaaaaaaaaaaa',
account: 'aaaabbbbcccc'
}).then(console.log)
> {
result: true,
data: {transactionId: 'b428357c7xxxxxxxxxxxxxx'}
}3.3 tp.getBalance
tp.getBalance(params)Parameters
params- Object
blockchain:String- 'eos' | 'bos'account:Stringcontract:Stringsymbol:String
Returns
Object:
result:Booleandata:Objectsymbol:Stringbalance:Stringcontract:Stringaccount:String
msg:String
Example
tp.getBalance({
blockchain: 'eos',
account: 'itokenpocket',
contract: 'eosio.token',
symbol: 'EOS'
}).then(console.log)
> {
result: true,
data:{"symbol":"EOS","balance":"["142.2648 EOS"]","contract":"eosio.token","account":"itokenpocket"},
msg: 'success'
}3.4 tp.getTableRows
获取合约内table数据
tp.getTableRows(params)Parameters
params- Object:
blockchain:String- 'eos' | 'bos'json:Booleancode:Stringscope:Stringtable:Stringtable_key:Stirnglower_bound:Stringupper_bound:Stringlimit:Number
Returns
Object:
result:Booleandata:Objectrows:Arraymore:boolean
msg:String
Example
tp.getTableRows({
blockchain: 'eos',
json: true,
code: 'abcabcabcabc',
scope: 'abcabcabcabc',
table: 'table1',
lower_bound: '10',
limit: 20
}).then(console.log)
> {
result: true,
data:{
rows: [{a: 1, b: 'name' }, ...],
more: true
},
msg: 'success'
}3.5 tp.getAccountInfo
tp.getAccountInfo(params)Parameters
params- Object:
account:Stringblockchain:String- 'eos' | 'bos'
Returns
Object:
result:Booleandata:Object- Standard account objectmsg:String
Example
tp.getEosAccountInfo({
account: 'itokenpocket',
blockchain: 'eos'
}).then(console.log)
> {
result: true,
data:{"account_name":"itokenpocket",..., "is_proxy":0}},
msg: 'success'
}3.6 tp.getTransactionRecord
tp.getTransactionRecord(params)Parameters
params- Object:
blockchain:String- 'eos' | 'bos'account:Stringstart:Number- default: 0count:Number- default: 10sort:String- 'desc | asc' default: desctoken:String- optionalcontract:String- optional
Returns
Object:
result:Booleandata:Object- Standard account objectmsg:String
Example
tp.getEosTransactionRecord({
blockchain: 'eos',
start: 10,
count: 20,
account: 'itokenpocket',
token: 'EOS',
sort: 'desc',
contract: 'eosio.token'
}).then(console.log)
> {
result: true,
data: [{
"title": "",
"comment": "",
"hid": "4bd63a191a1e3e00f13fe6df55d0c08803800a5e7cd0d0b15c92d52b3c42285e",
"producer": "bp4",
"timestamp": 1531578890,
"action_index": 2,
"account": "eosio",
"name": "delegatebw",
"from": "tokenpocket1",
"to": "clementtes43",
"blockNum": 4390980,
"quantity": "0.2000000000 EOS",
"count": "0.2000000000",
"symbol": "EOS",
"memo": "",
"maximum_upply": "",
"ram_price": "",
"bytes": "",
"status": 1,
"data": "",
real_value:"0.2000000000"
}, ...],
msg: 'success'
}3.7 tp.authSign
tp.authSign(params)Parameters
params- Object:
blockchain:String- 'eos' | 'bos'from:String- account namepublicKey:Stringsigndata:String
Returns
Object:
result:Booleandata:Objectsignature:Stringref:String- 'TokenPocket'signdata:Stringtimestamp:Stringwallet:String- eos account name
msg:String
Example
tp.authSign({
blockchain: 'bos',
from: 'itokenpocket',
publicKey: 'EOS13we3sbereewwwwww',
signdata: 'something to sign'
}).then(console.log)
> {
result: true,
data: {
signature: 'SIG_EBEFWA-AFEBEf-eeee-aaaaa-eeeeea23d',
timestamp: '1534735280',
ref: 'TokenPocket',
signdata: 'something to sign',
wallet: 'itokenpocket'
},
msg: 'success'
}5 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago