Added mobile auth support + trade confirmations#853
Added mobile auth support + trade confirmations#853Jessecar96 merged 5 commits intoJessecar96:masterfrom
Conversation
|
I don't think that linking an account should be part of SteamBot. You should use a tool like the Steam Desktop Authenticator and then import the maFile. |
|
Why force the user to download two separate things when they can just use SteamBot alone? The auth files are saved to the |
|
Because it's out of scope. SteamBot doesn't register accounts for you either. |
|
That sounds like it'd be against TOS to automate it, but this isn't the same thing. SteamAuth allows for delinking IIRC, so it shouldn't be a problem if the user doesn't want to use SteamBot for authing his bot account anymore. I suppose we should get some more opinions on this issue. I think it's more useful/convenient this way, but I'm not against removing the function. |
c66fb4f to
3b79be7
Compare
|
On trade confirmations you need to handle the |
|
Ok, I'll undo the last commit and redo it. Edit: done. |
0f83a79 to
fef8159
Compare
|
That's everything, I think. Mobile auth support, trade offer confirmations, live trade confirmations. Ready for testing/merging, pending further feedback. |
There was a problem hiding this comment.
Uuurm, yeah.
internal monologue aaaaaaaaarrrgggh
On 2 Dec 2015 11:08 p.m., "BlueRaja" notifications@github.com wrote:
In SteamBot/Bot.cs
#853 (comment):
{consoleInput = input;}
public string WaitForInput(){consoleInput = null;while (true){if (consoleInput != null){return consoleInput;}Thread.Sleep(5);}}ಠ_ಠ
—
Reply to this email directly or view it on GitHub
https://github.com/Jessecar96/SteamBot/pull/853/files#r46490574.
There was a problem hiding this comment.
No different than this: https://github.com/Jessecar96/SteamBot/blob/master/SteamBot/Bot.cs#L942
There was a problem hiding this comment.
We should probably switch to using ResetEvents wait intervals than
Thread.Sleep should we not?
On 2 Dec 2015 11:16 p.m., "Joel" notifications@github.com wrote:
In SteamBot/Bot.cs
#853 (comment):
{consoleInput = input;}
public string WaitForInput(){consoleInput = null;while (true){if (consoleInput != null){return consoleInput;}Thread.Sleep(5);}}No different than this:
https://github.com/Jessecar96/SteamBot/blob/master/SteamBot/Bot.cs#L942—
Reply to this email directly or view it on GitHub
https://github.com/Jessecar96/SteamBot/pull/853/files#r46491479.
There was a problem hiding this comment.
Feel free to make a pull request later if you feel it's necessary, but I think it's important that we get mobile auth working with SteamBot ASAP first.
There was a problem hiding this comment.
Alright, we can review that later and possibly the other place it occurs in
the code base after, if its that important.
On 2 Dec 2015 11:20 p.m., "Joel" notifications@github.com wrote:
In SteamBot/Bot.cs
#853 (comment):
{consoleInput = input;}
public string WaitForInput(){consoleInput = null;while (true){if (consoleInput != null){return consoleInput;}Thread.Sleep(5);}}Feel free to make a pull request later if you feel it's necessary, but I
think it's important that we get mobile auth working with SteamBot ASAP
first.—
Reply to this email directly or view it on GitHub
https://github.com/Jessecar96/SteamBot/pull/853/files#r46491992.
There was a problem hiding this comment.
Hey, donchu bring me into this @waylaidwanderer . I wrote it that way because I needed to get rid of the winform dependency in half an hour and I think we can agree sir that a GUI is worse than a sleeping thread that can't do anything useful anyway :(
Then again, I guess that's a perfectly valid argument for you too. Hm. Still though it's good people are paying attention to what really matters about this PR.
|
SteamBot should definitely have the ability to link mobile authenticators. |
|
Code looks good. I'm not a fan of using submodules, but we can fix that later. (@geel9, would you be able to push SteamAuth to NuGet?) However I will not be able to test this before the end of the week. Could someone else? |
|
I just tested this on linux using mono, used the command |
|
Tried to use this but after typing the input command with the steam guard code, just nothing happened. |
|
Index starts at 0 for your first bot. Make sure you're doing "exec 0 linkauth" then "input 0 XXXXX" once it prompts you for the code. |
|
I'm aware of that, your method SendInput seems to have 0 references, maybe that's the issue? |
|
My bad, I missed that when I was copy-pasting stuff over. Just pushed a commit to fix it. |
|
Don't you think using "ConfirmAllMobileConfirmations" is a bit unsafe? I have no idea how the confirmation ID is linked to the trade id though... Unable to automate imo without the solution you used... |
|
Alright, now everything seems to be working fine. It's good to be merged in my opinion. |
|
@hydracore Your issue is this: SteamRE/SteamKit#200 |
|
@waylaidwanderer |
|
@GreYzZ |
|
@RafalNiewinski |
Which is easier to do is up to you. 👍 |
|
Merging, everything seems alright here. |
Added mobile auth support + trade confirmations
|
With version 1.6.5 of Git and later, you can use: For already cloned repos, or older Git versions, just use: From StackOverflow This will download SteamAuth as a submodule. |
|
Maybe will be better to start mobile auth when getting error about |
|
After I clone SteamBot and build the solution I try to run it but I get this error: Edit: Whoever runs into this issue: I fixed it by asking a friend of mine to do the cloning for me. |
|
@waylaidwanderer I get a generalfailure error after I add my phone number. Am I doing something wrong? Ive tried it over 2-3 days multiple times always get the same error. |
|
@xxbone You might need to figure out what's causing it. Do a Console.WriteLine before each "return LinkResult.GeneralFailure" in SteamAuth's function and see which one it is. |
|
Or just..debug it? |
|
Got it working @waylaidwanderer |
|
@xxbone use the Steam Desktop Authenticator |
|
Ah great thanks @geel9 |
|
@geel9 I find this way easier for people to understand. I know I got really confused when I was trying to figure out how to debug for the first time :P |
|
That said, I'm getting this error when adding my phone number:
It worked for 6 bots in a row and then stopped working for the last 3. There's no limit on how many accounts you can use with 1 number, right? Do you know what the problem is? Should I just try again later? |
|
@geel9 using the SDA, after logging in nothing happens. Like literally nothing happens. I've cross checked my password again and again, I don't get a SMS code and the app is doing nothing. |
|
@waylaidwanderer there's a limit on how many accounts you can add a phone number to within a certain time period (probably 24hr) @xxbone if the account you're trying to log into already has the authenticator on it, you'll need to copy the authenticator file into the maFiles directory. You'll also need to do some editing of the manifest.json file. If possible, the easiest way to do it all is to unlink the authenticator, add it using the SDA, then copy and rename the .maFile that's generated into your SteamBot directory. |
|
@geel9 I did unlink auth from it before adding it to SDA. What im thinking is that it's being caused because of the InvalidPassword error I was getting before after I linked and unlinked auth from the bot and added it to my mobile. I guess I should wait a couple hours? |
|
@geel9 Thanks, I'll try again tomorrow. |
|
@xxbone I'm not sure why the InvalidPassword error occurs but it seems to be some sort of rate-limiting. |
|
Yep, they also updated protobufs for this. See the SteamKit repo. |
|
Yeah thought so @geel9 Thanks for all the help. |
|
Guys can someone make a video on how to compile it and run it please. |
|
https://www.youtube.com/watch?v=7UiaPZNwqsw TL;DW: Learn to code(C# at least). You need to extend Steam Bot for it to serve any purpose. |
Features:
AppVeyor will likely fail to build this after merging. Needs some pre-build commands added in "/settings/build" URL:
SteamBot.slngit submodule update --init --recursiveandnuget restore SteamAuth\SteamAuth\SteamAuth.slnHave a look and feel free to test (confirmed working on my SteamTradeOffersBot fork).
Fixes #847.