Программирование решения, чтобы узнать, когда биткойн-адрес сохранил целевую сумму [дубликат]

Извините, я, вероятно, не буду использовать здесь правильные термины.

Кто-нибудь знает или как использовать биткойн (или внешнюю библиотеку), который может просматривать или даже предоставлять механизмы, управляемые событиями, для мониторинга, когда адрес получил равную или большую целевую сумму.

Я знаю об API веб-сокетов, доступном в блокчейне, но в идеале я бы сделал это дома, используя свои собственные системы, если это возможно.

Ответы (1)

Грубое решение:

Если аккаунт находится в вашем кошельке, вы можете использовать:

bitcoind getreceivedbyaddress "АДРЕС"

чтобы получить количество биткойнов, полученных ADDRESS. Вы можете поместить эту строку в бесконечный цикл. Вы можете создать программу-оболочку, которая сохраняет результат в переменной каждые 30 секунд (используя режим сна) и сравнивает его с предыдущим значением. Если вы вычтете значения и обнаружите разницу выше порогового значения, вы можете заставить сценарий предупредить вас.

Я могу быть более конкретным, если вы сообщите мне свои предпочтения (Python, оболочка Linux...)

Я предполагаю, что это не будет хорошо масштабироваться для массивной системы?
Под массовым вы подразумеваете много адресов? В этом случае вы можете просто проверять каждый новый блок на наличие ваших адресов. Вы можете использовать getblock и bitcointools github.com/gavinandresen/bitcointools . Кстати, 30 секунд ожидания - это перебор. Если вам нужны подтвержденные транзакции (или транзакции, находящиеся хотя бы в одном блоке), в среднем изменения занимают 10 минут.
Ну, в идеале я хочу создать новый адрес, подождать, пока на нем будет определенное количество биткойнов, а затем перевести монеты и закрыть адрес, делая это для сотен, если не тысяч адресов за раз.
Я бы выбрал скрипт, вызывающий bitcoind. Или пользовательскую программу на Python с bitcointools. Я не думаю, что операции такие уж сложные. Обычного процессора должно быть достаточно. В любом случае, кажется, вам нужно немного поработать.