diff --git a/stream/ch/chain/net/srv/DapStreamChChainNetSrv.cpp b/stream/ch/chain/net/srv/DapStreamChChainNetSrv.cpp index 92bb5c63f59c21e2bc24f57f39fc191de839b7c6..3ded6c4aff72680cf47a9648aff58c80ba8be7f1 100644 --- a/stream/ch/chain/net/srv/DapStreamChChainNetSrv.cpp +++ b/stream/ch/chain/net/srv/DapStreamChChainNetSrv.cpp @@ -126,6 +126,17 @@ void ChChainNetSrv::onPktIn(DapChannelPacket* a_pkt) const dap_stream_ch_chain_net_srv_pkt_success_t * l_success = reinterpret_cast<const dap_stream_ch_chain_net_srv_pkt_success_t* >(a_pkt->data()); emit sigProvideSuccess( l_success->hdr.net_id, l_success->hdr.srv_uid, l_success->hdr.usage_id ); + /* dap_chain_hash_fast_t l_tx_hash; + int err = dap_chain_str_to_hash_fast((const char*)l_success->custom_data, &l_tx_hash); + if(!err) + m_txBack = l_tx_hash; + emit sigSendTxHash(m_txBack.value().raw); */ + if (strlen((const char*)l_success->custom_data) > 1) + emit sigSendTxHash((const char*)l_success->custom_data); + /* else { + qDebug() << "No cashback provided: " << (const char*)l_success->custom_data; + } */ + } break; case RESPONSE_ERROR:{ const dap_stream_ch_chain_net_srv_pkt_error_t *l_err; diff --git a/stream/ch/chain/net/srv/DapStreamChChainNetSrv.h b/stream/ch/chain/net/srv/DapStreamChChainNetSrv.h index 4cbbc723204b4308cae22c5843e5743ef18a0d06..2574f0c443889b66093095ed3b03421cbde8b090 100755 --- a/stream/ch/chain/net/srv/DapStreamChChainNetSrv.h +++ b/stream/ch/chain/net/srv/DapStreamChChainNetSrv.h @@ -206,12 +206,17 @@ namespace Dap { private: DapStreamer * m_streamer; DapSession * m_mainDapSession; + Crypto::HashFast m_txBack; public: ChChainNetSrv(DapStreamer * a_streamer, DapSession * a_mainDapSession); + Crypto::HashFast getTxBack() { + return m_txBack; + } signals: void sigReceiptToSign(Chain::Receipt * receipt ); void sigProvideSuccess (Chain::NetId a_netId, Chain::NetSrv::Uid a_srvUid, quint32 a_usageId ); void sigProvideError(Chain::NetId a_netId, Chain::NetSrv::Uid a_srvUid, quint32 a_usageId,quint32 a_errorCode); + void sigSendTxHash(const QString &tx); void sigNotifyStopped(); // Service stopped public slots: void onPktIn(DapChannelPacket* a_pkt) override;