Ejecutar solicitud RPC contra

Estoy bifurcando el Altcointipbot para reddit para hacer un tipbot para Litecoin. Ha habido muchos problemas que he logrado resolver, pero este parece que no puedo resolverlo. Cuando trato de iniciar el script, se detiene al intentar realizar una solicitud de RPC y me da un error con el código 500. Este es el rastreo:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "cointipbot.py", line 539, in __init__
    self.self_checks()
  File "cointipbot.py", line 144, in self_checks
    b.register()
  File "ctb/ctb_user.py", line 230, in register
    new_addrs[c] = self.ctb.coins[c].getnewaddr(_user=self.name.lower())
  File "ctb/ctb_coin.py", line 172, in getnewaddr
    self.conn.walletpassphrase(self.conf.walletpassphrase, 1)
  File "ctb/pifkoin/bitcoind.py", line 69, in __call__
    return server._rpc_call(self.method, *args)
  File "ctb/pifkoin/bitcoind.py", line 216, in _rpc_call
    raise BitcoindException('%d (%s) response from bitcoind' % (response.status, response.reason))
ctb.pifkoin.bitcoind.BitcoindException: 500 (Internal Server Error) response from bitcoind

Supongo que la solicitud de RPC va a bitcoind (litecoind), donde ahora necesita usar bitcoin-cli para las solicitudes (al menos así es en la terminal). Sin embargo, parece que no puedo encontrar nada en el código que especifique que la solicitud va a bitcoind y no a bitcoin-cli, así que tal vez se encargue de eso automáticamente. De ninguna manera soy muy bueno en esto, así que esperaba que alguien con más experiencia pudiera ayudarme a resolverlo.

La parte del código donde ocurren todas las solicitudes de RPC se puede encontrar aquí: https://github.com/dpifke/pifkoin/blob/master/python/bitcoind.py

El resto de la fuente está aquí, pero probablemente no sea necesario: https://github.com/vindimy/altcointip

Ya he editado para litecoin.confincluir rpcport, y .rpcuserrpcpasswordserver=1

¡Gracias de antemano!

El código de error HTTP 500 generalmente ocurre cuando bitcoind aún se está iniciando. ¿Puedes publicar la respuesta JSON completa que bitcoind te envía cuando recibes el error 500?
@AndrewChow Bueno, han pasado muchas horas desde que lo comencé y la cadena de bloques ya está sincronizada en bitcoin-qt. ¿Cómo puedo confirmar que bitcoind se está ejecutando? Aquí está el cuerpo de la respuesta: {"result":true,"error":null,"id":1} y aquí están los encabezados: [('date', 'Mon, 19 Jun 2017 18:31:47 GMT' ), ('longitud del contenido', '132'), ('tipo de contenido', 'aplicación/json')]
¿Está ejecutando bitcoin-qt y bitcoind al mismo tiempo? Si es así, no funcionará ya que solo se puede ejecutar uno de bitcoind o bitcoin-qt (y solo una instancia de cualquiera de los dos) en un momento dado. ¿Qué obtienes cuando intentas usar bitcoin-cli para interactuar con él?
@AndrewChow No, solo se está ejecutando bitcoind. Todos los comandos funcionan bien con bitcoin-cli en la terminal. ¿Eso significa que bitcoind está funcionando o puede funcionar bitcoin-cli sin él?
Si bitcoin-cli está funcionando, eso significa que bitcoind está funcionando. bitcoin-cli es solo una interfaz para bitcoind y no puede funcionar sin un bitcoind en ejecución (o bitcoin-qt -server).

Respuestas (1)

Encontré el problema. Resulta que en realidad estaba funcionando como debería. El motivo del mensaje de error fue que el programa intentó descifrar la billetera, pero nunca la cifré en primer lugar. Después de cifrarlo, funciona bien.