¿Cómo configurar un pago en Ripple sin especificar emisores de moneda?

Quiero enviar pagarés de una de mis cuentas a otra mediante el uso de la API. Ambas cuentas confían en el mismo emisor de IOU, que es una dirección separada. De acuerdo con el formato de transacción , establecería el emisor de la cantidad en la cuenta receptora y el emisor de SendMax en la cuenta emisora. Sin embargo, al intentar esto, aparece un error de "camino seco":

{
  "id": 6,
  "status": "success",
  "type": "response",
  "result": {
    "engine_result": "tecPATH_DRY",
    "engine_result_code": 128,
    "engine_result_message": "Path could not send partial amount.",
    "tx_blob": "1200002280000000240000000E5011000000323031342D30392D32335430313A34373A34303A39383834383635303061D4445EADB112E0000000000000000000000000005442430000000000D3BC678DA1AEC545F393F5B0AFD2B8654CE43DB368400000000000000A69D44469DD823458000000000000000000000000005442430000000000D6C315BE3EADA22F12AC21AC94A5FC38CA5AFADA73210220AFA84AEEE2DD794576E98411946D671F8E1F80E6C432B5ABAAAB2957651CD674473045022100FD0F2FECF958294BEA74876A4E5FE4192EA10EFC55C9B166F9F427861D5CBC42022067AA4B5CDA1BEB1D400937888C7819A412B238C79423A3DDB6F4FC8F45D45D618114D6C315BE3EADA22F12AC21AC94A5FC38CA5AFADA8314D3BC678DA1AEC545F393F5B0AFD2B8654CE43DB3",
    "tx_json": {
      "Account": "rL2ZJ8iTF9w5UGr8MzQSt8GpedNmutpEEQ",
      "Amount": {
        "currency": "TBC",
        "issuer": "rLJZHsAbNZu264dWnPCGgpqePAYfNZR1Zk",
        "value": "0.123"
      },
      "Destination": "rLJZHsAbNZu264dWnPCGgpqePAYfNZR1Zk",
      "Fee": "10",
      "Flags": 2147483648,
      "InvoiceID": "000000323031342D30392D32335430313A34373A34303A393838343836353030",
      "SendMax": {
        "currency": "TBC",
        "issuer": "rL2ZJ8iTF9w5UGr8MzQSt8GpedNmutpEEQ",
        "value": "0.12423"
      },
      "Sequence": 14,
      "SigningPubKey": "0220AFA84AEEE2DD794576E98411946D671F8E1F80E6C432B5ABAAAB2957651CD6",
      "TransactionType": "Payment",
      "TxnSignature": "3045022100FD0F2FECF958294BEA74876A4E5FE4192EA10EFC55C9B166F9F427861D5CBC42022067AA4B5CDA1BEB1D400937888C7819A412B238C79423A3DDB6F4FC8F45D45D61",
      "hash": "6CDB694DF36F4BD3AB928A9D761A9F60C285557B3C1136749DF7BC56A46ED641"
    }
  }
}

A pesar de que rLJZHsAbNZu264dWnPCGgpqePAYfNZR1Zk y rL2ZJ8iTF9w5UGr8MzQSt8GpedNmutpEEQ confían en el mismo emisor (rTJdjjQ5wWAMh8TL1ToXXD2mZzesa6DSX) y tienen suficientes pagarés para cubrir la transacción.

¿Cómo puedo solucionar este problema? ¿Qué estoy haciendo mal?

Respuestas (1)

Ripple no buscará rutas mientras procesa transacciones. Primero se deben encontrar las rutas, mediante la búsqueda de rutas, y se deben especificar en la transacción. Está recibiendo un error de ruta seca porque no está especificando ninguna ruta, por lo que la única ruta que está obteniendo es la ruta predeterminada.

Una solución simple es cambiar el emisor del monto de SendMax para que sea la puerta de enlace. Esto insertará implícitamente el nodo de la cuenta de la puerta de enlace antes de cada ruta, incluida la ruta predeterminada. Como alternativa, especifique el nodo de la cuenta de la puerta de enlace como una ruta explícita o use la búsqueda de rutas.