Author

Topic: [CLOSED] BitPing.Net - A bitcoin notify service (Read 7002 times)

legendary
Activity: 2912
Merit: 1060
subbed
full member
Activity: 196
Merit: 116
Entrepreneur, coder, hacker, pundit, humanist.
What is a gethub?

member
Activity: 102
Merit: 10
Is there interest in this service, if I offered it as part of the btcprice.info site? (price notifications)

I am expanding to include both channels (email, pubnub etc) and more triggers.

What exactly was unique about this service, that is different from bitcoinmonitor?

bitping posted the source code so I can run the server myself. (if i can ever get this thing going) looking for a gethub or something for bitcoin monitor and cant find it or anything else similar.

legendary
Activity: 2912
Merit: 1060
I use it a lot to know when pools pay me
full member
Activity: 196
Merit: 116
Entrepreneur, coder, hacker, pundit, humanist.
Is there interest in this service, if I offered it as part of the btcprice.info site? (price notifications)

I am expanding to include both channels (email, pubnub etc) and more triggers.

What exactly was unique about this service, that is different from bitcoinmonitor?
legendary
Activity: 2912
Merit: 1060
oh man can i export my list?
member
Activity: 102
Merit: 10
im trying to deploy bitping.net from the github


I got most of the way but im unable to get the full menu bar to propagate (just getting start)

and I had to comment out

//require("notifications.php");
//require("notification.php");

because I cant find either of those in the gethub?

I made an order and now im digging around for it.

If my VPS can handle it id be willing to host this.
hero member
Activity: 488
Merit: 500
Always sad to see a good project go down Sad
We had some discussion in the beginning on creating a unified API so users could use bitping and bitcoinmonitor together, but never really tracked that plan...

In case someone is looking for a similar service you can try http://www.bitcoinmonitor.net/ (Thread: https://bitcointalksearch.org/topic/announce-bitcoinmonitornet-free-professional-notificationpayment-service-64195).
newbie
Activity: 23
Merit: 0
Thank you for your contribution to the community... I hope someone has the resources to pick it up and carry it into the future!
sr. member
Activity: 352
Merit: 252
https://www.realitykeys.com
Ah, got it. Built the modified client and ran it as discussed here:
https://bitcointalk.org/index.php?action=printpage;topic=56868.0
...and now I'm getting the requests coming through to tx.php.

Many thanks.
full member
Activity: 127
Merit: 100
Just trying to get this code working - can someone help me get zero-confirmations notifications working? I'm not sure if I'm missing something obvious or if the instructions / code are missing from Github.

I'm seeing a monitor script, "bpn/monitor/unconfirmed-monitor.php", looking at a table called active_uncomfirmed_monitors. This seems to get populated by a script called "bpn/www/tx.php", which expects a load of json_encoded Bitcoin transactions, presumably unconfirmed ones.

But what's supposed to be hitting tx.php, and where's it getting its transaction information from?


Hi,

You need to run a modified bitcoin client that does the calling of tx.php.
The patch is linked from the bitping page, but im afraid its quite a few versions back from the main bitcoin tree, so it may not cleanly patch up against the newest version.

https://github.com/MORA99/bitcoin (Patch by stucpp)
sr. member
Activity: 352
Merit: 252
https://www.realitykeys.com
Just trying to get this code working - can someone help me get zero-confirmations notifications working? I'm not sure if I'm missing something obvious or if the instructions / code are missing from Github.

I'm seeing a monitor script, "bpn/monitor/unconfirmed-monitor.php", looking at a table called active_uncomfirmed_monitors. This seems to get populated by a script called "bpn/www/tx.php", which expects a load of json_encoded Bitcoin transactions, presumably unconfirmed ones.

But what's supposed to be hitting tx.php, and where's it getting its transaction information from?
member
Activity: 102
Merit: 10
Hey,

      I'm working with bitping and am getting a bug. I have it set up so the HTTP POST is set to a PHP script on my webserver that send's a SMS message via Twillo anytime there is a transfer.

The test msg in the API works every time. I am able to pass data (btc amount hash ext) just fine to the cell via SMS.

The service worked for the first day; although now I am not receiving SMS msg's on transfers. I am getting email's but for some reason the HTTP POST is not getting sent, or my server isn't picking it up.

I'm not sure where to start debugging this as the test msg is working every time.

anyone run into this before?     
sr. member
Activity: 352
Merit: 252
https://www.realitykeys.com
This looks great.

Any chance of getting 0-confirmations as an option on the one-shot API as well?
hero member
Activity: 532
Merit: 500
Just thought you should know, on the bitping.com website, the currency pair quotes are written wrong.

You have them set as USDBTC, EURBTC, etc, but you should have them reversed.  In the forex nomenclature, the first currency is called the base currency and the second currency would be the quote currency.  What this means is that the price you list will represents how much of the quote currency is needed for you to get one unit of the base currency.

So if you are saying USDBTC is 10.50 then that means you need 10.50 BTC to purchase 1 USD.  Instead you should list them all as BTCUSD, BTCEUR, ect.

Or add a slash... USD/BTC is 10.3 atm, but USDBTC is 0.097

No, in forex lingo even with a slash between the first currency and the second currency means the same thing as without.  In other words USDBTC, USD:BTC, USD/BTC, all mean the same thing.  The slash does not me 'per' and it is not a math equation.  It is just a marker to separate the base currency (the first currency) and the quoted currency (the second currency).

I know it seems ass backwards, but this is just the way the it is.

To write it correctly it would have to be BTC/USD.  This means that how much USD is required for 1 BTC.

I have a degree in math so I literally read that as USD per BTC, so it's not wrong in my head.  If the forex community actually uses the slash like that then they are retarded.  I'm fine with them switching the order as one unit or with a colon, but / is per or division.

This is what happens when bureaucrats make decisions.

Currency pairs are written by concatenating the ISO currency codes (ISO 4217) of the base currency and the counter currency, separating them with a slash character. Often the slash character is omitted. A widely traded currency pair is the relation of the euro against the US dollar, designated as EUR/USD. The quotation EUR/USD 1.2500 means that one euro is exchanged for 1.2500 US dollars.
legendary
Activity: 1904
Merit: 1002
Just thought you should know, on the bitping.com website, the currency pair quotes are written wrong.

You have them set as USDBTC, EURBTC, etc, but you should have them reversed.  In the forex nomenclature, the first currency is called the base currency and the second currency would be the quote currency.  What this means is that the price you list will represents how much of the quote currency is needed for you to get one unit of the base currency.

So if you are saying USDBTC is 10.50 then that means you need 10.50 BTC to purchase 1 USD.  Instead you should list them all as BTCUSD, BTCEUR, ect.

Or add a slash... USD/BTC is 10.3 atm, but USDBTC is 0.097

No, in forex lingo even with a slash between the first currency and the second currency means the same thing as without.  In other words USDBTC, USD:BTC, USD/BTC, all mean the same thing.  The slash does not me 'per' and it is not a math equation.  It is just a marker to separate the base currency (the first currency) and the quoted currency (the second currency).

I know it seems ass backwards, but this is just the way the it is.

To write it correctly it would have to be BTC/USD.  This means that how much USD is required for 1 BTC.

I have a degree in math so I literally read that as USD per BTC, so it's not wrong in my head.  If the forex community actually uses the slash like that then they are retarded.  I'm fine with them switching the order as one unit or with a colon, but / is per or division.
hero member
Activity: 532
Merit: 500
Just thought you should know, on the bitping.com website, the currency pair quotes are written wrong.

You have them set as USDBTC, EURBTC, etc, but you should have them reversed.  In the forex nomenclature, the first currency is called the base currency and the second currency would be the quote currency.  What this means is that the price you list will represents how much of the quote currency is needed for you to get one unit of the base currency.

So if you are saying USDBTC is 10.50 then that means you need 10.50 BTC to purchase 1 USD.  Instead you should list them all as BTCUSD, BTCEUR, ect.

Or add a slash... USD/BTC is 10.3 atm, but USDBTC is 0.097

No, in forex lingo even with a slash between the first currency and the second currency means the same thing as without.  In other words USDBTC, USD:BTC, USD/BTC, all mean the same thing.  The slash does not me 'per' and it is not a math equation.  It is just a marker to separate the base currency (the first currency) and the quoted currency (the second currency).

I know it seems ass backwards, but this is just the way the it is.

To write it correctly it would have to be BTC/USD.  This means that how much USD is required for 1 BTC.
legendary
Activity: 1904
Merit: 1002
Just thought you should know, on the bitping.com website, the currency pair quotes are written wrong.

You have them set as USDBTC, EURBTC, etc, but you should have them reversed.  In the forex nomenclature, the first currency is called the base currency and the second currency would be the quote currency.  What this means is that the price you list will represents how much of the quote currency is needed for you to get one unit of the base currency.

So if you are saying USDBTC is 10.50 then that means you need 10.50 BTC to purchase 1 USD.  Instead you should list them all as BTCUSD, BTCEUR, ect.

Or add a slash... USD/BTC is 10.3 atm, but USDBTC is 0.097
hero member
Activity: 532
Merit: 500
Just thought you should know, on the bitping.com website, the currency pair quotes are written wrong.

You have them set as USDBTC, EURBTC, etc, but you should have them reversed.  In the forex nomenclature, the first currency is called the base currency and the second currency would be the quote currency.  What this means is that the price you list will represents how much of the quote currency is needed for you to get one unit of the base currency.

So if you are saying USDBTC is 10.50 then that means you need 10.50 BTC to purchase 1 USD.  Instead you should list them all as BTCUSD, BTCEUR, ect.
hex
newbie
Activity: 45
Merit: 0
it works now.

Thanks!
full member
Activity: 127
Merit: 100
Hmm, found a bug in the monitor code, that caused some addresses to not be detected  Cry
It should be fixed now, will test again.
full member
Activity: 127
Merit: 100
I am monitoring this address: http://blockexplorer.com/address/1J9fuhVWEBT1ZuRRk66eFo6s9pc4wJ4ozg

But I have not received notification.
Also there is no notification in history...
Did you create the order after the payment was sent (but before it reached 4 confirmations) ?

I am currently running a test to check if theres anything wrong with the system.
Which informations are you looking for in history ?
hex
newbie
Activity: 45
Merit: 0
I am monitoring this address: http://blockexplorer.com/address/1J9fuhVWEBT1ZuRRk66eFo6s9pc4wJ4ozg

But I have not received notification.
Also there is no notification in history...
hex
newbie
Activity: 45
Merit: 0
Any chance to see more detailed history about what happened to each notification ?
legendary
Activity: 1221
Merit: 1025
e-ducat.fr
Awesome! Very useful service and source..
full member
Activity: 154
Merit: 102
Bitcoin!
Notify
full member
Activity: 127
Merit: 100
Fixed a bug in 0-confirmation signature calculation recently, so you can now validate the message correctly! Smiley

Added a price conversion tool.

https://bitping.net/tools/price.php?amount=100¤cy=USD returns how many BTC equals USD
https://bitping.net/tools/price.php?amount=100¤cy=USD&type=js returns it as a javascript document.write, so it can be used in clientside only websites to build a simple "shop".

More info : http://bitping.net/tools.php
legendary
Activity: 1890
Merit: 1086
Ian Knowles - CIYAM Lead Developer
Awesome - thanks a lot!

Smiley
full member
Activity: 127
Merit: 100
This is a great idea - would it be possible to also support an option for a plain text minimal output?

e.g. http://bitping.net/exchange_rates.php?rates=AUDBTC&format=rate_only

Done, with a small twist just to be safe Smiley
http://bitping.net/exchange_rates.php?rates=AUDBTC&format=rate_only&disclaimer=accepted
legendary
Activity: 1890
Merit: 1086
Ian Knowles - CIYAM Lead Developer
This is a great idea - would it be possible to also support an option for a plain text minimal output?

e.g. http://bitping.net/exchange_rates.php?rates=AUDBTC&format=rate_only

that would output

5.23623852

(handy for use with curl)


Cheers,

Ian.
full member
Activity: 127
Merit: 100
Added exchange rates Smiley

http://bitping.net/exchange_rates.php for all pairs.
http://bitping.net/exchange_rates.php?rates=DKKBTC,DKKUSD for just those rates.

Data is updated every 15minutes.
The USDBTC is from mt. gox.
All other BTC are calculated based on this, ie. EURBTC is NOT the eur exchange, but simply EURUSD * USDBTC.

See license and other notes in the feed.

Small example (note that we can only use 0 here, because I only asked for 1rate, and you should ofcause do some error checking...

Code:
$json = json_decode(file_get_contents("http://bitping.net/exchange_rates.php?rates=DKKBTC"), true);

echo "DKKBTC IS ".$json["rates"][0]["rate"]." last updated at ".$json["rates"][0]["updated"]."

";

$btc = 1000 / $json["rates"][0]["rate"];
echo "Please pay $btc BTC to 1xyz

";
sr. member
Activity: 427
Merit: 250
Very nice and simple service, thanks!
full member
Activity: 127
Merit: 100
Basic API for address handling added.
You can now add and remove addresses from the orders using a API.

This is useful if you for whatever reason cannot or will not give out all address upfront, you can then call BPN when you assign a address to a user, or in the morning with the list of addresses for the day, etc.

More info under "Orders", its a GET/POST with your secret used in a sha1 hash for security.
Adding an address that already exists, will not result in a error.
Removing an address that don't exists, will not result in a error.
full member
Activity: 127
Merit: 100
If someone is willing to host a copy of the service, please let me know and I will help with the setup if needed.
Optimally there should be 3+ identical services, so websites can register for all 3, and require 2 independent events before taking it for good.

For the same reason, a mirror/copy should not be hosted by me, since it could then go down at the same time.

The service requires 512mb ram, 15gb disc space, virtually no cpu and low disc io (after the initial import)
You can of cause change the donation link on your version, but you should not expect to make a profit out of it.
full member
Activity: 127
Merit: 100
Latest changes have been comitted to github, along with a small example app that uses jQuery and BPN to show live payment received to "customer" Smiley
hex
newbie
Activity: 45
Merit: 0
Regular events 1-n are now attempted every 2 minutes for 24hours.

Thank you!
full member
Activity: 127
Merit: 100
With the help of stcupp we can now supply unconfirmed notifications Smiley

For now this only works with regular orders, ie. not one-shot API.
You simply select 0 from the dropdown...

Unconfirmed events are attempted for delivery every 10seconds for 5 minutes, after that no more attempts are made.
Regular events 1-n are now attempted every 2 minutes for 24hours.

So you may wish to register for unconfirmed events to show "Payment received" to customer, and then 1-6confirmations before shipping the items/downloads/keys/etc.

This is ofcause beta, please report any bugs, missed events, etc.
For HTTP POST API confirmations is set to 0 for unconfirmed, and block to -1.


In other news : A bug with block number has been fixed, previously we were sending blockID, not the blockHeight.

full member
Activity: 127
Merit: 100
Just 10K blocks togo ...
Missed notifications will begin to be sent out in a few hours.

[UPDATE] 2000blocks remaining, processing at about 20 each minute ~1½hour till notifications start again

[UPDATE] Back in action as of 16:30 UTC
full member
Activity: 127
Merit: 100
It is now downloading blockchain again from beginning ?
I tried to restore a good chunk of the block file to speed it up and it failed, so yes, it is going to have to slave its way trough the entire block chain.

How about incising that retry to at least few days? It can try frequently for the first hour and then it can try like once pen hour.
Well if your server is down several days, you should be confirming the payments manually anyway.
Could maybe increase the delay to a few hours.

Also is there option that BitPing requires specific reply from my server? Something like 'OK' ?
No, any 200 resp will do.

I plan to use it for exchange and I think those are options that I need to make it reliable.
Then you should probaly run a local service, instead of depending on an external service.
hex
newbie
Activity: 45
Merit: 0
It is now downloading blockchain again from beginning ?


How about incising that retry to at least few days? It can try frequently for the first hour and then it can try like once pen hour.

Also is there option that BitPing requires specific reply from my server? Something like 'OK' ?


I plan to use it for exchange and I think those are options that I need to make it reliable.
full member
Activity: 127
Merit: 100
I would like to use your service but as I see it already has downtime.
You don't plan to make it reliable ?

Also does it have option that if my server is not available that it tries to deliver notification later ?
If I didnt plan to make it reliable, I would not have spent the time to move it to a new server, now would I  Huh

It will retry for a few times, but if your server is down more than 10-20minutes, the notification will fail.
However you can use pubnub, and their history command to check for missed events.


The downtime was because my previous VPS provider did a very poor job, ended up with a broken database, and had to move it yesterday.

For now its hosted at slicehost, and by the end of next month, when my new dedicated is ready, it will be moved as a VPS on that.

If this takes off, then I will ofcause make redundant systems with HA failover.
But as long as its low volume, a VPS on my dedicated should have plenty of uptime.
hex
newbie
Activity: 45
Merit: 0
I would like to use your service but as I see it already has downtime.
You don't plan to make it reliable ?

Also does it have option that if my server is not available that it tries to deliver notification later ?
full member
Activity: 127
Merit: 100
New feature : AdHoc notifications - https://bitping.net/oneshot.php

This is a mini API to request a single notification of 1 payment without registering as a user.
For now any URL can be used, but it may be necessary to limit it to URLs that resolve to the IP of the API caller later on, to prevent the service from being used as a slow and expensive HTTP attack gateway Smiley

Will be added to github in a day or two, already live on the site, feel free to give it a test run!
full member
Activity: 127
Merit: 100
FYI : blockchain.info now offers a notification service also, havent tested it, but I think that does 0-confirmations.
full member
Activity: 127
Merit: 100
Added Pubnub notifications (both on the site and in github), and a few metatags + titles.

Still no idea how to get 0-confirmations from bitcoind :/
full member
Activity: 127
Merit: 100
Another fine alternative is http://www.bitcoinreminder.com

It sends email/sms reminders.. Its completely free at the moment (even the sms reminders)..

Works fine for me and a lot of my customers Smiley
Quite a bit nicer layout than my version Smiley

However the main point about BPN is that it is free (as in freedom and cost) to download and use, in that content, I do not see your site as an alternative, instead since you have made the same post in several other threads, I guess its simply advertising  Roll Eyes

Anyway the more options the better.
full member
Activity: 127
Merit: 100
The source for the main website have been added to github today Smiley
sr. member
Activity: 240
Merit: 250
Another fine alternative is http://www.bitcoinreminder.com

It sends email/sms reminders.. Its completely free at the moment (even the sms reminders)..

Works fine for me and a lot of my customers Smiley
full member
Activity: 127
Merit: 100

+1

This is the only feature that will bring me to use such a service.  There are lots of ways to get 1+ confirmation info.

Care to enlighten me ? Smiley
I can think of polling one of the block chain browsers, but then you are depending on that one site being there.

I can think of polling a blockchain browser with fallback to others.  I could use your service, buy then I am depending on your site being there.
Yes for now you would be depandent on my site, but within the near future everything thats needed to run the site is public domain, so you could host it yourself, or signup to several services that hopefully will come, that would also protect against the unlikely event that one of the servers was compromised and used to send fake reports (unlikely because a fake report does not gurantee that the shop will actually deliver, after all a look in their wallet or block chain browser will not show the payment).

Ofcause if you can use the Ape API, you can make a small script to pull data for the monitored addresses instead of using the database, and then you could use any abe server as a backup.
legendary
Activity: 1904
Merit: 1002

+1

This is the only feature that will bring me to use such a service.  There are lots of ways to get 1+ confirmation info.

Care to enlighten me ? Smiley
I can think of polling one of the block chain browsers, but then you are depending on that one site being there.

I can think of polling a blockchain browser with fallback to others.  I could use your service, buy then I am depending on your site being there.
full member
Activity: 127
Merit: 100
would be very cool if you could add a "test triger event button" that would send a test http request.

this helped me allot when testing my application using bitcoin Notify, didn't have to send myself coins...

Added Smiley
Link is on the API page below the table with data, a TEST tag has been added to the API to show if the event is a test or real.
full member
Activity: 127
Merit: 100
Since I am using Abe for the block work, and Abe currently does not store a list of unconfirmed transactions.
There has been some talks in the Abe thread to use a different script/software to get the 0-confirmation info.
full member
Activity: 127
Merit: 100

+1

This is the only feature that will bring me to use such a service.  There are lots of ways to get 1+ confirmation info.

Care to enlighten me ? Smiley
I can think of polling one of the block chain browsers, but then you are depending on that one site being there.
legendary
Activity: 1904
Merit: 1038
Trusted Bitcoiner
would be very cool if you could add a "test triger event button" that would send a test http request.

this helped me allot when testing my application using bitcoin Notify, didn't have to send myself coins...
legendary
Activity: 1904
Merit: 1002

+1

This is the only feature that will bring me to use such a service.  There are lots of ways to get 1+ confirmation info.
legendary
Activity: 1904
Merit: 1038
Trusted Bitcoiner
staff
Activity: 4270
Merit: 1209
I support freedom of choice
hero member
Activity: 700
Merit: 501
watching
full member
Activity: 127
Merit: 100
[UPDATE]
As of March 2013 the website is no longer operational.
If someone wishes to take over the domain, feel free to contact me.
[/UPDATE]




After a few long evenings, the website is now ready for real use.
The idea is much the same as the old bitcoin-notify, but other than that is has no connection.

TL;DR New Bitcoin notify service (Beta) - http://www.BitPing.Net

The system uses bitcoind to download the block chain.
And Abe to parse the blockchain into MySQL (So you can run the block explorer also).
Then a monitor looks into the database every so often, to see if there are new notifications to be made.
Really the most work is in making the user interface, and since it may still contain a few bugs, I will wait a few weeks before publishing the UI code.
The monitor and an installation guide is avaliable from day 1 however, so if you plan to run a similar website, you should start by getting bitcoind and Abe synced up.


The idea is that you enter a bunch of public addresses into BitPing.Net (or a self hosted database).
Then select the number of confirmations you require and which http address to call when a new payment is made.
Currently we only support 1+ confirmations, ie. no unconfirmed notifications and just email/http notifications.

The HTTP POST interface is very simple, and there is an example when you are logged in.
More notification types, and events will be added as requested.

There is a link to the github at the bottom of the page with a rough installation guide to bitcoind, abe and the monitor script.

Any feedback is very much welcome, thanks.



Screenshots


Jump to: