/Personal-bot

Primary LanguageHTMLMIT LicenseMIT

Websites

Currently, the following stores are supported:

Prerequisites

  1. A Terminal: (cmd (Windows), Terminal (macOS), or Console (Linux))
  2. Install Node.js, either LTS or Current.
  3. Clone or download this repository git clone https://github.com/PrinceS25/StockAlertBot.git
  4. Go to root directory cd StockAlertBot
  5. Install npm packages via a terminal npm install

Usage

There are only two steps to use this program: 1) enter information and 2) launch the program.

  1. You can now enter information using two ways: via a browser (recommended) or a text editor.

    Via Browser

    1. At the root directory, run on the terminal: npm run settings
      A browser window should open up. If it doesn't and the console says Server started!, go to: http://localhost:3250/ in your browser.
    2. Enter the links of the items you want to track in the URLs tab.
    3. Go to Settings tab and change to your heart's content.
      • If you want to use Proxies, turn it on and create a file called proxies.txt in the root directory and fill it with one proxy per line. See proxies.
      • If you have Amazon link(s), you will see a options to put delay between Amazon items and pick a region. Select a region if you want to only monitor items sold by Amazon and not third party sellers. If you want to use a particular seller or if your region is not in the list, select Custom and provide the merchant ID. See Feedback and Support if you'd like to request a region.
      • If you have Target link(s), you will see additional options to put zip code and API Key. Only change the key if you get API key errors. Refer to the instructions in the following section.
    4. Configure notification options in Optional tab.
      • If you want notifications sent to Discord, IFTTT, or Slack, expand WEBHOOKS and enter the webhook URL(s) there.
      • If you want notification sent via SMS/Text, expand SMS and choose a method: Amazon Web Services, Email, or Twilio. See SMS.
      • If you want notifications sent to Email, turn on email and enter your service provider information. Some providers (Yahoo, AOL, AT&T) cause problems. Refer to this section.
    5. Once you're happy with the settings, click Save Settings.
      config.json and .env files should now reflect your settings.
      You can use CTRL + C or CMD + C to stop the program.

  2. Execute and continue about your day: npm start OR node --experimental-modules main.js
    You can use CTRL + C or CMD + C to stop the program.

Email

Supported email providers:

    Gmail, Yahoo, iCloud, Hotmail, Outlook365, QQ, 126, 163, 1und1, AOL, DebugMail, DynectEmail, 
    FastMail, GandiMail, Godaddy, GodaddyAsia, GodaddyEurope, hot.ee, mail.ee, Mail.ru, Maildev, Mailgun, Mailjet, 
    Mailosaur, Mandrill, Naver, OpenMailBox, Postmark, QQex, SendCloud, SendGrid, SendinBlue, SendPulse, SES, 
    SES-US-EAST-1, SES-US-WEST-2, SES-EU-WEST-1, Sparkpost, Yandex, Zoho, qiye.aliyun

NOTE: If you receive the error: 535 5.7.0 (#AUTH005) Too many bad auth attempts, most likely you are using Yahoo for the email server or an email server managed by Yahoo, such as AOL or AT&T. Yahoo has implemented an option that by default, does not let 3rd party products access the email servers. To resolve, go to https://login.yahoo.com/account/security and then enable the option to allow apps that use less secure sign in. Use the password generated by "Generate app password". If you are using AOL, do the same thing, from https://login.aol.com/account/security.

SMS

SMS / Text support is now available via Amazon Web Services, Email, or Twilio. This, however, requires some setup on your part. Read below regarding setup for each method:

  • Amazon Web Services
    First, read pricing information here. First 100 SMS are free for each month as long as you send them to a United States destination. For this method, you will need:

    • Region
    • Access Key
    • Secret Access Key
    • Phone Number

    Region is Amazon server you want to send from. It's probably best to choose one closest to you. More information here.
    Access Key and Secret Access Key can be obtained following instructions in this tutorial.
    Phone number is the number to send SMS to. You will need to include country code and area code. Country code information can be found here.

  • Email
    FREE but limited. Uses email to send text via phone carrier's SMS gateway. Mostly the same setup as Email.
    Currently supported carriers: Alltel, AT&T, Boost Mobil, Cricket Wireless, FirstNet, Google Project Fi, MetroPCS, Republic Wireless, Sprint, Straight Talk, T-Mobile, Ting, U.S. Cellular, Verizon Wireless, Virgin Mobile.
    If you'd like to request a carrier, please refer to Feedback and Support and provide your carrier's SMS gateway if possible.

  • Twilio
    First, read pricing information here. You get some free starting balance with which you can buy a Twilio phone number. For this method, you will need:

    • Twilio Account SID
    • Twilio Auth Token
    • Twilio Phone Number
    • Phone Number

    The first three can easily be obtained from the Twilio console after you make a Twilio account.
    Phone number is the number to send SMS to. You will need to include country code and area code. Country code information can be found here.