BitcoinTalk

IPv6, headless client, and more

IPv6, headless client, and more

Hello, I heard about this project around freenode, and I really like the idea.

I am wondering if there is a chance you could develop a fully headless version, but with controlling options? Maybe something similar to ncurses work, like rtorrent? So we can make and share bitcoins on headless computers, while still having the ease and control of te GUI interface?

Another suggestion that would be nice would be an update module, if you are running an old version (don't know if there is already, didn't look around much).

Boot strapping to a different type of medium, as well as IRC, would be an improvement as well. Maybe something similar to Bittorrent trackers? Some ISPs block IRC, and some people dislike the thought of IRC.

Lastly, IPv6 support would be pretty awesome, if possible. Then people would worry less about the IRC bootstrapping, I'd think.

I am also running bitcond 1.3 (RC?) that satoshi just posted. How do I use it though? There aren't many docs on using bitcoind... it just said "starting bitcoin server", and my IP appears in the #bitcoin room on irc.lfnet.org. How would I figure out my bitcoin address, how many coins I have, send to other people, etc?

I am no C programmer, so I would not be able to implant any of these suggestions, but I would hope that it could be possible Smiley

Thanks in advance!

Re: IPv6, headless client, and more

I am also running bitcond 1.3 (RC?) that satoshi just posted. How do I use it though? There aren't many docs on using bitcoind... it just said "starting bitcoin server", and my IP appears in the #bitcoin room on irc.lfnet.org. How would I figure out my bitcoin address, how many coins I have, send to other people, etc?
You can talk to the running bitcoind either by:
 1. sending JSON-RPC calls; see http://www.bitcoin.org/wiki/doku.php?id=api for more details.
 2. re-running bitcoind and giving it extra arguments; it will figure out that there's already a bitcoind running and will pass along the commands.

For example, running "bitcoind help" gives you the list of commands it understands:
Code:
bitcoind help
getaddressesbylabel <label>
listreceivedbyaddress [minconf=1] [includeempty=false]
getreceivedbyaddress <bitcoinaddress> [minconf=1]
getbalance
getblockcount
getblocknumber
getconnectioncount
getdifficulty
getgenerate
getinfo
getlabel <bitcoinaddress>
getnewaddress [label]
getreceivedbyaddress <bitcoinaddress> [minconf=1]
getreceivedbylabel <label> [minconf=1]
help
listreceivedbyaddress [minconf=1] [includeempty=false]
listreceivedbylabel [minconf=1] [includeempty=false]
listtransactions [count=10] [includegenerated=false]
sendtoaddress <bitcoinaddress> <amount> [comment] [comment-to]
setgenerate <generate> [genproclimit]
setlabel <bitcoinaddress> <label>
stop

To figure out what your bitcoin address is, run:
bitcoind getaddressesbylabel ""
(your default address has the empty string as its label).
Code:
bitcoind getaddressesbylabel "Your Address"
To figure out how many coins you have, run:
Code:
bitcoind getbalance
or
Code:
bitcoind getinfo

Regarding running headless:  the non-daemon bitcoin will run via remote (e.g. ssh forwarded) X-windows, if you install the necessary X11-client stuff on your server.

Re: IPv6, headless client, and more

Ah, nice, thanks for that.

When I run,
Quote
./bitcoind getaddressesbylabel ""
[
]
Is it normal for it to give nothing, or what?

getinfo gives me
Quote
./bitcoind getinfo
{
    "balance" : 0.000000000000000,
    "blocks" : 62899,
    "connections" : 39,
    "proxy" : "",
    "generate" : false,
    "genproclimit" : -1,
    "difficulty" : 19.40479632838217
}

Re: IPv6, headless client, and more

When I run,
Quote
./bitcoind getaddressesbylabel ""
[
]
Is it normal for it to give nothing, or what?
Hmm, yeah, it's probably normal; I THOUGHT the default address was given an empty label; I'm wrong, they're given the label "Your Address".
So: 
Code:
./bitcoind getaddressesbylabel "Your Address"
should work.

Or just generate a new address, either with or without a label:
Code:
./bitcoind getnewaddress

Re: IPv6, headless client, and more

Welcome, Harry.

I hadn't thought about starting out using bitcoind without using bitcoin first.  I guess for now, this thread serves as the tutorial. 

The focus for bitcoind so far has been more on backend support for websites.  There's demand for things that would be nice for adminning headless generators like listgenerated.  For the moment, you can grep the debug.log file for "generated" and "hashmeter" for some feedback.  Generated blocks take about 24 hours before they're credited to your balance.