This app will obtain data from Steam for your users, and groups, and place it in your IPS Community database for use anywhere on your site. Your board will re-load your members Steam Online information, in configurable batches, every 2 minutes, so you always have up to date information without impacting load times of your community pages.
Out of the box, this app will display steam information in the following places
- Member Profile
- Next to Members' posts
- Member Hovercards (Steam Online Status only)
- Widget: X Random Online Steam Members displayed anywhere you can place a Widget
- Widget: Steam Group information
More detailed information about the members Steam profile is displayed on the Members Profile page. Including an optional list of games the member owns. Out of the box the list of games can be shown in either an image grid layout, or list view.
Don't want to use Sign in With Steam? No problem, this app works with a Custom Profile field also. Want to use both a custom profile field AND Sign in With Steam? Not a problem, this app seamlessly pulls information from both locations to create a single list of users to cache.
Valid Steam Input format for Custom Profile Field:
- Steam Name: ex. ' Aiwa '
- 17 digit Steam ID: ex. 76561197964468370
- Old school Steam ID: ex. STEAM_0:0:2101321 ***
If there are any other places you'd like to see a users steam information displayed, submit a support request!
Scales seamlessly to work with larger boards without impacting site / server performance.
IP.Board 3.4.x version available here.
Prerequisites
- *** Supported natively on 64 bit server configurations. For 32 bit server configurations, php-bcmath is required to decode this format.
- Apache / Nginx server timeout settings should be > 30 seconds. This allows Steam Web API servers time to respond before failing gracefully. If configured for < 30 seconds, HTTP 502 errors may occur when running large / bulk updates. If in doubt, contact your hosting provider.
IPS 4.4 and above, use 2.1.11+
IPS 4.3.x use version 2.1.11
IPS 4.2.x use version 2.1.7, unsupported
IPS 4.0.x & 4.1.x, use version 2.0.13, unsupported
What's New in Version 2.1.10 See changelog
Released
Bug Fixes
-
When creating an account, or linking an existing account, via Steam Login, SteamID is now logged in members table to trigger Steam profile caching.
- Note: core_members isn't a viable storage solution long term per new IPS MP guidelines. This will change again to use the existing IPS Login Handler table.
- Graceful error handling added to profile update task.
- Graceful error handling added to saving Steam settings where an invalid Steam Group 'value' could cause a BAD_XML exception be thrown.
Known issues
-
'Validation Failed' on Steam Login.
- Based on exhaustive testing, Steam simply isn't validating all of the tokens it is providing during Steam Login. The only solution is for the user to re-attempt authentication as many times as necessary until the Steam servers accurately validate the token they provide. This is a Steam issue, and I'm afraid there isn't anything I can do if Steam is responding that the token, they provided, isn't valid.
-
When used in conjunction with Ahmad's Teamspeak Integration:
- Do NOT turn on Force entering UUID. Teamspeak Integration hook is hijacking the IPS 'Complete Profile', where users provide their e-mail address after registering with Steam, and accounts are being left without e-mail addresses.