Tworzenie oferty handlu steam w PHP

0

Cześć.

Ostatnio poszukuje steamowego api odnośnie wysłania oferty steam do użytkownika znając jego trade link.

Przeczytałem steam api lecz nie ma tam słowa odnośnie tworzenia nowej oferty w PHP.

Widziałem na necie jakieś boty napisane w javie, c# i nawet w PHP, lecz czułbym się swobodnie pisząc swoją własną bibliotekę do tworzenia takich ofert.

Zauważyłem, że oferta jest tworzona na podstawie takiego samego linku niezależnie od języka programowania:

steamcommunity.com/tradeoffer/new/send

Tylko problem polega na tym, że nie wiem co ma być po "/send/"..

Jeżeli ktoś miał kiedyś styczność z tworzeniem takich ofert, to proszę o pomoc

1

W API chodzi właśnie o to, żeby można było je wykorzystywać niezależnie od języka programowania.
Co to Twojego problemu to polecam sprawdzić w dokumentacji jakie parametry należy podać dla steamcommunity.com/tradeoffer/new/send, a następnie wykorzystać bibliotekę cURL w PHP do wysłania żądania.

0

Trochę późno z odpowiedzią ale może się przydać innym szukającym rozwiązania więc:

po send nie ma już nic, na ten link co podałeś wysyła się dane w POST

Moja funkcja curl php (trzeba wstawic plik z cookiesami, zamien $this->cookiejarfile na sciezke do swojego pliku)

$sessionid

sesionid - z cookiesow

$partner

partner - z linku wymiany

$token

token - z linku wymiany

$assetid

assetid przedmiotu który chcemy zaoferować

$message

opcjonalnie wiadomość

    

function make($sessionid, $partner, $token, $assetid, $message = '')
    {
        $type = 'POST';
        $url = 'https://steamcommunity.com/tradeoffer/new/send';


        $steamid = bcadd($partner, '76561197960265728');


        $data = array(
            'sessionid' => $sessionid,
            'serverid' => '1',
            'partner' => $steamid,
            'tradeoffermessage' => $message,
            'trade_offer_create_params' => '{"trade_offer_access_token": "' . $token . '"}',
            'json_tradeoffer' => '{"newversion":true,"version":2,"them":{"assets":[],"currency":[],"ready":false},"me":{"assets":[{"appid":730,"contextid":"2","amount":1,"assetid":"' . $assetid . '"}],"currency":[],"ready":false}}'
        );


        $c = curl_init();
        curl_setopt($c, CURLOPT_HEADER, false);
        curl_setopt($c, CURLOPT_NOBODY, false);
        curl_setopt($c, CURLOPT_URL, $url);
        curl_setopt($c, CURLOPT_SSL_VERIFYHOST, 0);
        curl_setopt($c, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)");
        curl_setopt($c, CURLOPT_COOKIEJAR, $this->cookiejarfile);
        curl_setopt($c, CURLOPT_COOKIEFILE, $this->cookiejarfile);
        curl_setopt($c, CURLOPT_POST, 1);
        curl_setopt($c, CURLOPT_POSTFIELDS, http_build_query($data));
        curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($c, CURLOPT_HTTPHEADER, array('Referer: https://steamcommunity.com/tradeoffer/new/?partner=' . $partner . '&token=' . $token));
        curl_setopt($c, CURLOPT_SSL_VERIFYPEER, 0);
        curl_setopt($c, CURLOPT_FOLLOWLOCATION, 1);
        curl_setopt($c, CURLOPT_CUSTOMREQUEST, strtoupper($type));
        $return = curl_exec($c);
        curl_close($c);

return $return;

    }
 

1 użytkowników online, w tym zalogowanych: 0, gości: 1