works fine, dont forget to change logger to console output or logger of your choice and community to your node-steamcommunity instance
let tradeOfferAcknowledged = false;
const acknowledgeTradeOffer = function(sessionId=null, callback) {
try {
if (tradeOfferAcknowledged) {
const error = new Error('Trade offer has already been acknowledged');
logger.warn('Attempt to acknowledge trade offer that was already acknowledged');
if (callback) callback(error);
return;
}
if (!community) {
const error = new Error('Community not initialized');
logger.error('Cannot acknowledge trade offer - community not initialized');
if (callback) callback(error);
return;
}
if (!sessionId) {
sessionId = community.getSessionID();
}
const options = {
uri: 'https://steamcommunity.com/trade/new/acknowledge',
method: 'POST',
form: {
sessionid: sessionId,
message: 1
}
};
logger.info('Acknowledging trade offer');
community.httpRequest(options, (err, response, body) => {
if (err) {
logger.error(`Error acknowledging trade offer: ${err}`);
if (callback) callback(err);
return;
}
// Check if response indicates success (currently Steam returns [] on success)
if (response && response.statusCode === 200) {
tradeOfferAcknowledged = true;
logger.info(`Trade offer acknowledged successfully. Response: ${body}`);
if (callback) callback(null, body);
} else {
const error = new Error(`Unexpected response from Steam: ${response ? response.statusCode : 'unknown'}`);
logger.error(`Failed to acknowledge trade offer: ${error.message}. Response body: ${body}`);
if (callback) callback(error);
}
}, 'acknowledgeTradeOffer');
} catch (error) {
logger.error(`Error acknowledging trade offer: ${error}`);
if (callback) callback(error);
}
};