#!/usr/bin/env python

import sys
import time
from electrum import SimpleConfig, Network
from electrum.util import print_msg, json_encode

try:
    addr = sys.argv[1]
except Exception:
    print "usage: watch_address <bitcoin_address>"
    sys.exit(1)

# start network
c = SimpleConfig()
network = Network(c)
network.start()

# wait until connected
while network.is_connecting():
    time.sleep(0.1)

if not network.is_connected():
    print_msg("daemon is not connected")
    sys.exit(1)

# 2. send the subscription
callback = lambda response: print_msg(json_encode(response.get('result')))
network.send([('blockchain.address.subscribe',[addr])], callback)

# 3. wait for results
while network.is_connected():
    time.sleep(1)