#!/usr/bin/ruby # frozen_string_literal: true require "redis" require "dhall" require "set" require_relative "../lib/redis_addresses" require_relative "../lib/electrum" config = Dhall::Coder .new(safe: Dhall::Coder::JSON_LIKE + [Symbol, Proc]) .load(ARGV[0], transform_keys: :to_sym) redis = Redis.new electrum = Electrum.new(**config) addresses = Set.new(electrum.listaddresses) RedisAddresses.new(redis, config[:currency]).each_user do |_, addrs| addresses.subtract(addrs) end unless addresses.empty? redis.sadd("jmp_available_btc_addresses", addresses.to_a) end