thebrumby / HotWalletClaimer

Looking to optimize HOT earnings on Near Protocol, Wave on SUI, Vertus on TON, or other supported apps like Hamster Kombat? This Python script monitors and claims rewards for your favorite Telegram crypto games. It avoids API injections by simulating mouse movements in a real browser.
MIT License
160 stars 47 forks source link

Two-Step Verification #5

Closed kionlife closed 5 months ago

kionlife commented 5 months ago

Hi. Please add support for Two-Step Verification

thebrumby commented 5 months ago

Hi Kionlife,

I never thought of that, let me look this weekend at what's involved in implementing that.

kionlife commented 5 months ago

Thank you very much. I spent half the night setting it up and only then, after turning on debug mode, did I see that it was asking for the password to my account 😅

thebrumby commented 5 months ago

Hey Kionlife,

I've implemented the 2FA check in the script! After logging in—whether by scanning the QR code or entering your registered phone number and OTP—the script will now check for the presence of a 2FA password box for 5 seconds.

If a password box is detected, it will prompt you to enter your password, which it then securely passes to Telegram. I've tested it in various scenarios, including accounts with and without 2FA enabled, and everything seems to be working smoothly.

Could you please download claim.py from version 1.4.1 and let me know how it works for you? Your feedback would be greatly appreciated!

I hope this update puts an end to any sleepless nights and helps in automating the collection of plenty of HOT tokens for you!

S26T commented 5 months ago

Thank you very much. I spent half the night setting it up and only then, after turning on debug mode, did I see that it was asking for the password to my account 😅

It's good that there is a debug mode, I also saw that I need to enter a 2FA code.

thebrumby commented 5 months ago

I'm very pleased to hear you got everything sorted, Sergey. I never thought to add that, as I don't use it myself. Maybe I should start!

S26T commented 5 months ago

@thebrumby Now we need to disable 2FA on telegram account and wait new version script?

screenshots take at debugIsOn = true image image

thebrumby commented 5 months ago

Hey Sergey,

It seems things didn't quite work out as I had hoped! I tested the code several times yesterday before rolling it out, and it worked perfectly each time.

I've just pushed today's changes up as version 1.4.2, which I hope will resolve your issues. Again, I tested it in various scenarios (QR code/OTP, with and without 2FA), and all are working as expected for me.

Please let me know how you get on.

S26T commented 5 months ago

Hello! I still see problems with enable 2FA on telegram account. I disable all active python task, cleared pm2 list and clear bakup folder from project. After I updated to 1.4.2 and run to work, but I still see problem...

For some reason, the window for entering the 2FA code does not disappear.

image

maybe this screenshot help with it

image

S26T commented 5 months ago

I tried work without PM2, just create new session and enter Y for continue script. I see that first step 2FA has success result, but in future has probrem with it

image

thebrumby commented 5 months ago

Hi Sergey,

Is the last image from PM2? If so, it appears you may be starting it incorrectly. The session name you used in the python3 claim.py command must also be included in the PM2 command when starting the script.

image

In this example, our session name/folder name is "2", so you would start PM2 like this:

pm2 start claim.py --name myFirstPMWallet -- 2

While the name specified after --name can be any name of your choosing, it's crucial that -- 2 matches the folder name of the saved session. In PM2, you should then see the following output:

image
S26T commented 5 months ago

Hi Sergey,

Is the last image from PM2? If so, it appears you may be starting it incorrectly. The session name you used in the python3 claim.py command must also be included in the PM2 command when starting the script.

image

In this example, our session name/folder name is "2", so you would start PM2 like this:

pm2 start claim.py --name myFirstPMWallet -- 2

While the name specified after --name can be any name of your choosing, it's crucial that -- 2 matches the folder name of the saved session. In PM2, you should then see the following output:

image

I think I have the right path name . Also I see how tool added screenshots to folder image

S26T commented 5 months ago

Okay, I will try to use the simple naming of the session. Only digits.

thebrumby commented 5 months ago

image

In this screenshot, the errors at the end indicate that you are not successfully logged in. The message at the top reveals that it can't find the chat box to send commands. It attempted to restore from a backup, but the backup is also corrupted. Consequently, at the bottom, it fails to retrieve the wait timer.

I recommend stopping the PM2 process for now. Run python3 claim.py again, update the settings, and make sure to enable the last option to force a new login. Then, go through the setup process again for oSession5. At the end of the setup, choose 'n' to exit and resume later with PM2. Afterward, restart the process in PM2.

S26T commented 5 months ago

image

In this screenshot, the errors at the end indicate that you are not successfully logged in. The message at the top reveals that it can't find the chat box to send commands. It attempted to restore from a backup, but the backup is also corrupted. Consequently, at the bottom, it fails to retrieve the wait timer.

I recommend stopping the PM2 process for now. Run python3 claim.py again, update the settings, and make sure to enable the last option to force a new login. Then, go through the setup process again for oSession5. At the end of the setup, choose 'n' to exit and resume later with PM2. Afterward, restart the process in PM2.

What do you think. To begin with, maybe I should do it without PM2 and make sure that it works correctly? I have problems working without using PM2.

thebrumby commented 5 months ago

Absolutely my friend :)

"Before using PM2 to manage your wallet sessions, you should open the script with python3 claim.py and set up each wallet. After following the process to sign into Telegram and enter your seed phrase, you will be prompted if you want to exit before being handed over to the claim function. You can select 'n' to exit the script and resume the session with PM2 as outlined below."

Will we add an option this afternoon so it will offer to configure PM2 for you.

S26T commented 5 months ago

Absolutely my friend :)

"Before using PM2 to manage your wallet sessions, you should open the script with python3 claim.py and set up each wallet. After following the process to sign into Telegram and enter your seed phrase, you will be prompted if you want to exit before being handed over to the claim function. You can select 'n' to exit the script and resume the session with PM2 as outlined below."

Will we add an option this afternoon so it will offer to configure PM2 for you.

I still see problems ;( I see more screenshots of debug mode and I see that problem with 2FA. Only screenshots with monkey.

  1. I don't use unique naming. Just empty and take next free digits naming (1)
  2. I don't use PM2. Only run command 'python3 claim.py'. Without naming
  3. I have success login by QR code, success 2FA at first step!

image image image image

S26T commented 5 months ago

Any ideas?

thebrumby commented 5 months ago

I added the option that it will set PM2 up for you now :) If you stop anything active in PM2 and update to the latest script :)

S26T commented 5 months ago

I added the option that it will set PM2 up for you now :) If you stop anything active in PM2 and update to the latest script :)

Sorry, I don't understand you). Maybe it's worth figuring out why the script doesn't work without using PM2? I've used two options and I always see the same thing. The problem with 2FA. The screenshots show the same window with a monkey. Recent screenshots without PM2. Maybe it's worth dealing with the script first?

S26T commented 5 months ago

@thebrumby I tried update project to lastest commit https://github.com/thebrumby/HotWalletClaimer/commit/c7b611ad4e69ca371f4147df051f49321ad13e75

and kill all process chrome, chromdriver, python, remove severals folders ... bakups, selenium and tried to run python3 claim.py. I still see old problem ;(

S26T commented 5 months ago

@thebrumby I tried work by new option 'a' for pm2. I still see problem with 2FA on the next steps... attach all logs

image image

thebrumby commented 5 months ago

Well, to clarify, the login with the seed phrase occurs at https://tgapp.herewallet.app/ (the game provider's site), so it's separate from the Telegram login process. Reviewing your screenshots more closely, it appears you never successfully log into Telegram, and your 2FA doesn't complete. This is puzzling as I've tested this on Ubuntu 22.04 and 20.04, on VPSs in Germany, the UK, and the USA, with accounts both with and without 2FA, and I haven't encountered this issue.

Are you using a VPS or a local machine? The quickest solution might be to temporarily disable 2FA to log into your accounts. Once logged in, you should remain logged in and can then re-enable 2FA. If that doesn't work, another option is to try using a cloud VPS running Ubuntu 22, which might offer a more consistent environment for running the script.

S26T commented 5 months ago

Local computer without proxy, VPN

S26T commented 5 months ago

Well, to clarify, the login with the seed phrase occurs at https://tgapp.herewallet.app/ (the game provider's site), so it's separate from the Telegram login process. Reviewing your screenshots more closely, it appears you never successfully log into Telegram, and your 2FA doesn't complete. This is puzzling as I've tested this on Ubuntu 22.04 and 20.04, on VPSs in Germany, the UK, and the USA, with accounts both with and without 2FA, and I haven't encountered this issue.

Are you using a VPS or a local machine? The quickest solution might be to temporarily disable 2FA to log into your accounts. Once logged in, you should remain logged in and can then re-enable 2FA. If that doesn't work, another option is to try using a cloud VPS running Ubuntu 22, which might offer a more consistent environment for running the script.

....it appears you never successfully log into Telegram, and your 2FA doesn't complete.....

yeah it's true! I saw a telegram chat and read about it.

message from chat

".......The code was entered correctly, but the correct password was not specified...."

thebrumby commented 5 months ago

Is it this message?

image

I got that when I forgot my 2FA (I couldn't remember what punctuation I used). I tried to remove it in Telegram, and it wouldn't let me, so I have to click recover by email and created a new password.

S26T commented 5 months ago

Is it this message?

image

I got that when I forgot my 2FA (I couldn't remember what punctuation I used). I tried to remove it in Telegram, and it wouldn't let me, so I have to click recover by email and created a new password.

Sorry, I remember 2FA code and correct write this. If you open my screenshot, you can see text about this!

...Step 01g - 2FA passwork entered successfully...

After I see the screenshots from debug that script has access to telegram and work with near wallet app.

I selected this text with red line for you!

Why do I have a problem after Step 12? I see that latest correct step and after display error text

...We backed up the session data....

322295216-adf0fd3f-7d73-46da-b83c-31fcd658f63d.png

S26T commented 5 months ago

Thank you very much. I spent half the night setting it up and only then, after turning on debug mode, did I see that it was asking for the password to my account 😅

Hello. Have you tried the new version of the script? it's okay?

thebrumby commented 5 months ago

Hey Sergey,

Sorry to hear you're still having issues

"Step 01g - 2FA passwork entered successfully..."

The steps behind this debug message are:

Where the confusion might be coming in, it doesn't then check if your password was accepted. In the future, I will make it check and stop the script to make it clear that it . No doubt there will be some obscure reason why this isn't working for you. Some different version of one of the many third-party modules or something. All I can say is, on the versions of Ubuntu I tested it on, it works as expected.

thebrumby commented 5 months ago

Hi,

I have now updated version 1.4.4 to help with debugging:

Version 1.4.4 includes enhanced validation for users with 2FA enabled. The update introduces two crucial checks: the first verifies that Telegram has not reported the password as incorrect, and the second detects any other errors, such as a blank password field, indicating that the password may not have been transmitted properly. If you encounter errors, please enable debugging in the settings. This will capture screenshots that can assist in diagnosing potential issues.

01h-Test QR code after session is resumed

S26T commented 5 months ago

Thank you for your time! I have success result at enabled 2FA. I don't know what happend, but it's work!

image

thebrumby commented 5 months ago

Hey Sergey, I didn’t change any logic around 2FA, I only added the error checking, but so pleased it is working for you. Happy mining.