コード例 #1
0
ファイル: console.py プロジェクト: xolentum/xolentum
  # check for open port
  s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  s.settimeout(1)
  if s.connect_ex((host, port)) != 0:
    raise Exception('No wallet or daemon RPC on port ' + str(port))
  s.close()

  # both wallet and daemon have a get_version JSON RPC
  rpc = framework.rpc.JSONRPC('{protocol}://{host}:{port}'.format(protocol=scheme, host=host, port=port))
  get_version = {
      'method': 'get_version',
      'jsonrpc': '2.0',
      'id': '0'
  }
  try:
    res = rpc.send_json_rpc_request(get_version)
  except Exception, e:
    raise Exception('Failed to call version RPC: ' + str(e))

  if 'version' not in res:
    raise Exception('Server is not a Monero process')

  if 'status' in res:
    daemons.append(framework.daemon.Daemon(port=port))
    rpcs.append(daemons[-1])
  else:
    wallets.append(framework.wallet.Wallet(port=port))
    rpcs.append(wallets[-1])

# add tab completion if we can: https://stackoverflow.com/questions/246725
try:
コード例 #2
0
ファイル: console.py プロジェクト: monero-project/bitmonero
  # check for open port
  s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  s.settimeout(1)
  if s.connect_ex((host, port)) != 0:
    raise Exception('No wallet or daemon RPC on port ' + str(port))
  s.close()

  # both wallet and daemon have a get_version JSON RPC
  rpc = framework.rpc.JSONRPC('{protocol}://{host}:{port}'.format(protocol=scheme, host=host, port=port))
  get_version = {
      'method': 'get_version',
      'jsonrpc': '2.0', 
      'id': '0'
  }
  try:
    res = rpc.send_json_rpc_request(get_version)
  except Exception, e:
    raise Exception('Failed to call version RPC: ' + str(e))

  if 'version' not in res:
    raise Exception('Server is not a Monero process')

  if 'status' in res:
    daemons.append(framework.daemon.Daemon(port=port))
    rpcs.append(daemons[-1])
  else:
    wallets.append(framework.wallet.Wallet(port=port))
    rpcs.append(wallets[-1])

# add tab completion if we can: https://stackoverflow.com/questions/246725
try: