diff options
Diffstat (limited to 'vendor/github.com/Philipp15b/go-steam/trade/doc.go')
-rw-r--r-- | vendor/github.com/Philipp15b/go-steam/trade/doc.go | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/vendor/github.com/Philipp15b/go-steam/trade/doc.go b/vendor/github.com/Philipp15b/go-steam/trade/doc.go new file mode 100644 index 00000000..549ad47d --- /dev/null +++ b/vendor/github.com/Philipp15b/go-steam/trade/doc.go @@ -0,0 +1,40 @@ +/* +Allows automation of Steam Trading. + +Usage + +Like go-steam, this package is event-based. Call Poll() until the trade has ended, that is until the TradeEndedEvent is emitted. + + // After receiving the steam.TradeSessionStartEvent + t := trade.New(sessionIdCookie, steamLoginCookie, steamLoginSecure, event.Other) + for { + eventList, err := t.Poll() + if err != nil { + // error handling here + continue + } + for _, event := range eventList { + switch e := event.(type) { + case *trade.ChatEvent: + // respond to any chat message + t.Chat("Trading is awesome!") + case *trade.TradeEndedEvent: + return + // other event handlers here + } + } + } + +You can either log into steamcommunity.com and use the values of the `sessionId` and `steamLogin` cookies, +or use go-steam and after logging in with client.Web.LogOn() and receiving the WebLoggedOnEvent use the `SessionId` +and `SteamLogin` fields of steam.Web for the respective cookies. + +It is important that there is no delay between the Poll() calls greater than the timeout of the Steam client +(currently five seconds before the trade partner sees a warning) or the trade will be closed automatically by Steam. + +Notes + +All method calls to Steam APIs are blocking. This packages' and its subpackages' types are not thread-safe and no calls to any method of the same +trade instance may be done concurrently except when otherwise noted. +*/ +package trade |