Steam Authentication & Integration

Steam Authentication & Integration 1.6.3

No permission to download
im not sure what this is but i dont think the people new that sign in via steam are getting added, they dont appear in the user list but they have this showing in their user profiles.

581333c633a63b07e5168055a60a3303.png


i have noticed for a few people, those who are added to steam show their steam id as their username. i have uninstalled the app and re installed and the same issue is still there

Been testing this locally and had the same issue. Is this a problem with the addon or a setting I've missed.
 
Hmmm. Don't know what to say off the top of my head. There has to be something unique to both of your setups that isn't happening elsewhere. PHP version, any other XF addons running?
 
Will try on live site later this week and see what happens. Will let you know if it happens then.
 
I'm not sure how much control you have over the Steam widget for individual users, but is it possible to show if a player is also playing a non-steam game? or is that a limitation on Steam's part? For example, if you went to my steam profile, you'd see this, as oppose to just showing me as online.
 
Will try on live site later this week and see what happens. Will let you know if it happens then.

Keep me posted

I'm not sure how much control you have over the Steam widget for individual users, but is it possible to show if a player is also playing a non-steam game? or is that a limitation on Steam's part? For example, if you went to my steam profile, you'd see this, as oppose to just showing me as online.

I believe that is a limitation of the Steam Community API, I'll check it out though. It could be throwing another profile state and defaulting to online in the code.

Since some weeks I get this error again and again: file_get_contents(http://api.steampowered.com/IPlayerService/GetOwnedGames/... - library/Steam/Helper/Steam.php:144

Any fix?

I need more context to the error than that, but if I had to guess, your web server failed to get Steam Community data. Either there was a connectivity issue with your web server (DNS, etc), or the Steam Community API was temporarily unavailable at the time of the request.
 
Do you have any content in your error logs? They only thing you've supplied me with is the line of the error, but not the actual error itself. So I can't tell you why that line is failing other than speculation.
 
ErrorException: file_get_contents(http://api.steampowered.com/IPlayer...p;include_played_free_games=1&format=json): failed to open stream: Connection timed out - library/Steam/Helper/Steam.php:144

There's your problem as I suspected.

The connection timed out attempting to access the Steam Community API. Unfortunately it's not the addon, it's your webserver's ability to contact the Steam Community API. Chances are it might be something on your end, do a trace route on your webserver when it happens to see why it's failing. Usually the Steam Community has pretty good uptime. In the future, I'll see if I can handle this error better, but I won't be able to fix connection problems. Also see if you can get cURL setup properly (if you're not on a shared host). The performance is much better. PHP safe mode has to be off and openbase_dir is not set.

Also you may want to edit your post and regenerate your API key now, it's in the link you just posted.
 
Where are the Steam IDs kept? I'm trying to find them in my SQL database..

Edit:

Also, I'm trying to run this script to prevent people without Steam Authentication from using user upgrades, but it's saying nobody is associate.
Code:
<xen:if is="{$visitor.steam_auth_id}">
<xen:if is="{$available}">
    <div class="section">
        <h3 class="subHeading">{xen:phrase available_upgrades}</h3>
        <ul>
        <xen:foreach loop="$available" value="$upgrade">
            <li class="primaryContent upgrade">
                    <form action="{$payPalUrl}" method="post" class="upgradeForm">
                        <div class="cost">{$upgrade.costPhrase}</div>
                        <xen:if is="{$upgrade.length_unit} AND {$upgrade.recurring}">
                               
                            <input type="hidden" name="cmd" value="_xclick-subscriptions" />
                            <input type="hidden" name="a3" value="{$upgrade.cost_amount}" />
                            <input type="hidden" name="p3" value="{$upgrade.length_amount}" />
                            <input type="hidden" name="t3" value="{$upgrade.lengthUnitPP}" />
                            <input type="hidden" name="src" value="1" />
                            <input type="hidden" name="sra" value="1" />
                           
                            <input type="submit" value="{xen:phrase subscribe}" class="button" />
                        <xen:else />
                            <input type="hidden" name="cmd" value="_xclick" />
                            <input type="hidden" name="amount" value="{$upgrade.cost_amount}" />
                           
                            <input type="submit" value="{xen:phrase purchase}" class="button" />
                        </xen:if>
                       
                        <input type="hidden" name="business" value="{$xenOptions.payPalPrimaryAccount}" />
                        <input type="hidden" name="currency_code" value="{$upgrade.currency}" />
                        <input type="hidden" name="item_name" value="{xen:phrase account_upgrade}: {$upgrade.title} ({$visitor.username})" />
                        <input type="hidden" name="quantity" value="1" />
                        <input type="hidden" name="no_note" value="1" />
                        <input type="hidden" name="no_shipping" value="1" />
                        <input type="hidden" name="custom" value="{$visitor.user_id},{$upgrade.user_upgrade_id},token,{$visitor.csrf_token_page}" />
                       
                        <input type="hidden" name="charset" value="utf-8" />
                        <input type="hidden" name="email" value="{$visitor.email}" />
                       
                        <input type="hidden" name="return" value="{xen:link 'full:account/upgrade-purchase'}" />
                        <input type="hidden" name="cancel_return" value="{xen:link 'full:index'}" />
                        <input type="hidden" name="notify_url" value="{$xenOptions.boardUrl}/payment_callback.php" />
                    </form>
                   
                    <div class="upgradeMain">
                        <h4 class="title">{$upgrade.title}</h4>
                        <xen:if is="{$upgrade.description}">
                            <div class="description">{xen:raw $upgrade.description}</div>
                        </xen:if>
                    </div>
            </li>
        </xen:foreach>
        </ul>
    </div>
</xen:if>
<xen:else />
<form action="{xen:link account}" method="post" class="xenForm">
<xen:hook name="account_steam_not_associated">
<dl class="ctrlUnit">
<dt></dt>
<dd>{xen:string nl2br, {xen:phrase your_account_is_not_currently_associated_with_steam_account}}</dd>
</dl>
</xen:hook>
<dl class="ctrlUnit submitUnit">
<dt></dt>
<dd><a href="{xen:link register/steam, '', 'reg=1', 'assoc={$visitor.user_id}'}" class="button primary">{xen:phrase associate_with_steam}</a></dd></dl>
</form>
</xen:if>
I think the problem is:
Code:
<xen:if is="{$visitor.steam_auth_id}">
Since you moved the Steamids and converted them to Steam64. Any help?
 
Last edited:
They are stored in the External Auth table (I don't remember the exact table name off the top of my head, but it should contain one or both of those words). In templates you can probably use something to the effect of {$visitor.externalAuth.steam}

I know {$message.externalAuth.steam} will pull SteamID64 in posts.
 
had these error in my log no idea what it is any help would be great

Code:
ErrorException: file_get_contents(http://api.steampowered.com/IPlayerService/GetOwnedGames/v0001/?key=57D5B02674B5AC31A84BA83AA5C3A37A&amp;steamid=76561198015832883&amp;include_appinfo=1&amp;include_played_free_games=1&amp;format=json): failed to open stream: Connection timed out - library/Steam/Helper/Steam.php:144
Generated By: Unknown Account, Today at 4:03 PM
Stack Trace
#0 [internal function]: XenForo_Application::handlePhpError(2, 'file_get_conten...', '/home/thegamer/...', 144, Array)
#1 /home/thegamer/public_html/library/Steam/Helper/Steam.php(144): file_get_contents('http://api.stea...')
#2 /home/thegamer/public_html/library/Steam/Cron.php(39): Steam_Helper_Steam->getUserGames('765611980158328...')
#3 [internal function]: Steam_Cron::update(Array)
#4 /home/thegamer/public_html/library/XenForo/Model/Cron.php(356): call_user_func(Array, Array)
#5 /home/thegamer/public_html/library/XenForo/Deferred/Cron.php(24): XenForo_Model_Cron->runEntry(Array)
#6 /home/thegamer/public_html/library/XenForo/Model/Deferred.php(256): XenForo_Deferred_Cron->execute(Array, Array, 7.99999690056, '')
#7 /home/thegamer/public_html/library/XenForo/Model/Deferred.php(390): XenForo_Model_Deferred->runDeferred(Array, 7.99999690056, '', false)
#8 /home/thegamer/public_html/library/XenForo/Model/Deferred.php(335): XenForo_Model_Deferred->_runInternal(Array, NULL, '', false)
#9 /home/thegamer/public_html/deferred.php(23): XenForo_Model_Deferred->run(false)
#10 {main}
Request State
array(3) {
  ["url"] => string(39) "https://thegamersquare.com/deferred.php"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(3) {
    ["_xfRequestUri"] => string(47) "/threads/minecraft-survival-challenge-list.495/"
    ["_xfNoRedirect"] => string(1) "1"
    ["_xfResponseType"] => string(4) "json"
  }
}
 
had these error in my log no idea what it is any help would be great

Code:
ErrorException: file_get_contents(http://api.steampowered.com/IPlayerService/GetOwnedGames/v0001/?key=<editedout>&amp;steamid=76561198015832883&amp;include_appinfo=1&amp;include_played_free_games=1&amp;format=json): failed to open stream: Connection timed out - library/Steam/Helper/Steam.php:144

The error is from the web server connection to the Steam Community timing out.

Failed to open stream: Connection timed out

Also your API key is in that error message. You may want to generate a new one.
 
Having cURL setup properly helps performance. PHP safe mode has to be off and openbase_dir should not be set in php.ini.

Other than that, tell Steam Community to not go down. I'm going to try to find a better way to handle the error, but if the Steam Community API doesn't respond, right now it error's out because it didn't get the data.
 
Top Bottom