Giter Club home page Giter Club logo

smart-sweeper's Introduction

SmartSweeper - Archived

This software is no longer supported and should be used at your own risk. Please visit the "Security" tab to better understand those risks.

Note

Bug fixes and new features will be added to the dev branch first.

Description

Sweeper application for SmartCash cryptocurrency to allow easy retrieval of gift funds. Runs only on Windows 7, 8, and 10 at the moment. It isn't necessary to input your wallet passphrase to use SmartSweeper.

Features

  • Create projects to organize promotions
  • Send funds to promotional wallets (1-500 wallets, inclusive)
  • Retrieve promotional funds from wallets that were not redeemed
  • Print paper wallets
  • User action logs and system logs

Base Requirement

Table of Contents

Installation

Download a release and run the installer. You will need to run SmartSweeper as an administrator if you install it in Program Files.

Running from source

Additional Requirements

Run node -v and npm -v from a command prompt to make sure both are in your PATH. Open your SmartCash node client to make sure it is synchronized before launching SmartSweeper.

Installation

npm install

To run

npm start

Configuration

SmartSweeper can be configured by modifying .env in the root directory. The app will create it for you the first time you load it, but you can create the file yourself prior to that, which will help if you didn't use the default SmartCash installation path. The default values for Windows are shown below.

rpc.host=127.0.0.1
rpc.port=9678
rpc.username=rpcusername
rpc.password=rpcpassword
smartcashPath=C:\Program Files\SmartCash\
  • rpc.host is the IP address that the SmartCash Node Client RPC server is bound to.
  • rpc.port is the port that the SmartCash Node Client RPC server is listening on.
  • rpc.username is the SmartCash Node Client RPC server username.
  • rpc.password is the SmartCash Node Client RPC server password.
  • smartcashPath is the full path to your SmartCash Node Client installation. You must include a trailing slash.

Your SmartCash Node Client must be started with the following arguments:

-server
-rpcbind=127.0.0.1
-rpcport=9678
-rpcuser=rpcusername
-rpcpassword=rpcpassword

If it isn't running, SmartSweeper will attempt to start it for you with the above arguments. You can also edit your node client's smartcash.conf file. Please don't do this with your client running.

server=1
rpcbind=127.0.0.1
rpcport=9678
rpcuser=rpcusername
rpcpassword=rpcpassword

The values of rpc.host, rpc.port, rpc.username, and rpc.password in .env must match those in the program arguments or the smartcash.conf file.

User files

The database (smart-sweeper.json), the app config file (smart-sweeper-config.json), the saved dashboard data file (smart-sweeper-data.json) and the log files are saved in the following folder:

  • Windows: %APPDATA%/SmartSweeper

It is strongly recommended that you regularly back up smart-sweeper.json to a safe place.

The log files are also in JSON format and can be viewed with a general log viewer such as glogg. The user logs record user actions while the system logs record system actions and errors (and includes transaction ids and public keys).

Known issues

  • SmartSweeper may not open the SmartCash Node Client. If smartcash.conf hasn't been modified with the info above, SmartSweeper won't work if the node client is run manually.
  • electron-store error "EPERM operation not permitted" sometimes occurs on Windows when writing to a config file. SmartSweeper will exit when it does.
  • Can't connect to the node client via RPC when it's syncing (SmartSweeper will display the "Can't connect to SmartCash Node Client." error). This will cause some actions to fail and some project data updates to not occur.
  • Empty log files are sometimes created in the root SmartSweeper data folder.
  • There is lag when entering text into input fields.

Other software used

Software License
AngularJS MIT
AngularUI Bootstrap MIT
Bootstrap MIT
clipboard.js MIT
delayed-call MIT
devtron MIT
dialog MIT
electron MIT
electron-builder MIT
electron-debug MIT
electron-is-dev MIT
electron-store MIT
electron-unhandled MIT
electron-util MIT
exp-config MIT
melanke-watchjs MIT
Moment.js MIT
node-smartcash MIT
ps-node MIT
request Apache-2.0
smartcashjs-lib MIT
SmartCash Paper Wallet Generator ?
winston MIT

The SmartCash Insight Explorer is used to check the current block count and to get information about project addresses.

Icons and graphics

Contributing

You can contribute to the development of SmartSweeper by filing a bug report or by submitting a pull request. All contributors must follow our code of conduct.

Note: Some commits reference incorrect issue numbers because the project used to be hosted in a private repo. The old issues were recreated in GitHub and they reference the original issue numbers. The issues that the commits link to reference the recreated issues.

smart-sweeper's People

Contributors

dantheman2865 avatar miyakoj avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

smart-sweeper's Issues

Sending funds doesn't update the database

When project funds are sent to the promo wallets, smart-sweeper.json isn't being updated with the transaction information and the "fundsSent" flag isn't set to true, which means that the print button isn't being enabled.

Node client RPC server sometimes stops responding

The client responds with one of the following error types: "Error: ESOCKETTIMEDOUT", "Error: ETIMEDOUT", or "Invalid params, response status code: 500". Is a significant problem in SmartCash node client versions <1.2.6. Still occurs in 1.2.6, but not nearly as frequently.

RPC queue (and UI Element to show progress)

Implement an RPC queue, probably with callbacks to the calling function. This might enhance RPC stability
Additionally, implement some sort of UI element to show RPC Queue activity. This could be a progress bar/wheel or similar to a browser's notice that the page is still loading.

Copy Change - Fund Project Disclaimer

Please add a disclaimer to indicate that all funds received will be divided between the addresses
'All funds will be divided between the total amount of addresses'

[Listed as issue #25 in commit ca5bf61]

Error when Sending

Getting error when sending.

Unhandled Error
TypeError: Cannot read property 'transactions' of undefined
at C:/Users/David/AppData/Local/Programs/SmartSweeper/resources/app.asar/smartcashapi.js:173:97
at Array.forEach ()
at C:/Users/David/AppData/Local/Programs/SmartSweeper/resources/app.asar/smartcashapi.js:166:23
at C:/Users/David/AppData/Local/Programs/SmartSweeper/resources/app.asar/rpc-client.js:112:13
at C:/Users/David/AppData/Local/Programs/SmartSweeper/resources/app.asar/node_modules/node-smartcash/lib/index.js:38:8
at C:/Users/David/AppData/Local/Programs/SmartSweeper/resources/app.asar/node_modules/node-smartcash/lib/jsonrpc.js:132:13
at Array.forEach ()
at IncomingMessage. (C:/Users/David/AppData/Local/Programs/SmartSweeper/resources/app.asar/node_modules/node-smartcash/lib/jsonrpc.js:121:15)

image

Not able to print

User Coach Digi created two projects and both were not able to print after funding.

Will get the system logs as well.

Copy Change - Wallet Instructions

Transfer Instructions
Go to smartcash.cc
Download/Setup a wallet
Use the private key to
import funds into the new wallet

Change lines as needed.

[Listed as issue #26 in commit ca5bf61]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.