smartcontractd is designed to be running all the time. And yes, its job is to respond to requests on chain by broadcasting response transactions. It uses bitcoin sent to it in the request to pay the tx fee for the response tx.
When I send the contractOffer with cli, client_log prints these warn logs, and only the contractOffer is seen in the blockchain, and it does not see it responded with a C2 message.What caused this?
Those fail messages are just from some of the nodes it is trying to send the contract offer to. Those nodes are probably BTC or BCH and return the header for block 1 since they don’t recognize the latest BSV block headers.
At least one node verified it was on the BSV chain, so CLI sent the tx. CLI doesn’t look for the C2 response, so it won’t see it.
Is smartcontractd running? Can you look in your smartcontractd log for the contract offer txid? Also, verify that the first output of your contract offer is to the smartcontractd address.
Yes.Smartcontractd is running locally.
I found that my smartcontractd
IS_TEST is set to
false, and my CLI’s
IS_TEST is set to true, then I changed them to the same. Finally smartcontractd successfully responded with a C2 message
Finally it works.Thank you very much.