{"id":18785766,"url":"https://github.com/uzyn/eth-notifier","last_synced_at":"2025-06-20T05:35:06.816Z","repository":{"id":91052025,"uuid":"63846970","full_name":"uzyn/eth-notifier","owner":"uzyn","description":"Notifier on Ethereum. Currently supports SMS via Twilio. Allows encrypted calls.","archived":false,"fork":false,"pushed_at":"2016-10-28T09:39:19.000Z","size":458,"stargazers_count":1,"open_issues_count":4,"forks_count":0,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-06-11T01:48:22.281Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/uzyn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-07-21T07:26:43.000Z","updated_at":"2021-10-23T13:55:07.000Z","dependencies_parsed_at":"2023-03-01T17:00:27.062Z","dependency_job_id":null,"html_url":"https://github.com/uzyn/eth-notifier","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/uzyn/eth-notifier","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uzyn%2Feth-notifier","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uzyn%2Feth-notifier/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uzyn%2Feth-notifier/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uzyn%2Feth-notifier/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/uzyn","download_url":"https://codeload.github.com/uzyn/eth-notifier/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uzyn%2Feth-notifier/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260890016,"owners_count":23077857,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-07T20:49:36.447Z","updated_at":"2025-06-20T05:35:01.806Z","avatar_url":"https://github.com/uzyn.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ETH Notifier\n\nAn Ethereum smart contract that delivers notification on call.\n\nCallable by any external contracts.\n\nImplements [IoT Standards v0.1 Draft](#details-comint-soon)\n\n\nThis repository contains 2 independent sets of code that powers:\n\n1. Service provider Ethereum-HTTP bridge\n    - Listens to relevant events on Ethereum blockchain\n    - Relays the information via HTTP to service provider's API\n    - Processes the refund to the caller after deducting the service fees\n\n1. Client Ethereum-HTTP bridge\n    - This is a helper to provide IoT devices to call Ethereum functions via HTTP without having to host full Ethereum node on the device.\n    - For example, allowing Amazon Dash button or Flic.io button to make calls to ETH Notifier.\n    - **Notice**: This is a proof of concept. Client bridge's security is not hardened in any way. If you are deploying it to the internet, make sure to restrict it or include some measures of security.\n\nBoth the bridges can be run on the same server or can be run on 2 separate servers.\n\n## How to run (common for both)\n\n1. Run a local Ethereum node with JSON-RPC listening at port 8545 _(default)_. [testrpc](https://github.com/ethereumjs/testrpc) would be the most straight-forward method.\n\n    ```bash\n    # Using testrpc (recommended)\n    testrpc\n\n    # testrpc -g 20000000000\n    # to start testrpc with 0.02 szabo gas price\n\n    # If you are running Geth, \n    # make sure to run in testnet or private net and enable rpc\n    geth --testnet --rpc --rpccorsdomain \"*\"\n    # Tip: Do not forget to unlock relevant wallets\n    ```\n\n1. Install dependencies\n\n    ```bash\n    npm install\n    ```\n\n### As a service provider\n\nService provider in this context is the one providing SMS notification service in exchange for Ether.\n\n1. Configure as necessary to `config/local.js`, by overriding keys from `config/default.js`, especially the `server` section.\n\n1. Run the server\n\n    ```bash\n    node server/\n    # Tip: use PM2 for keep-alive\n    ```\n\n    Note: You may wish to redeploy the contracts by running:\n\n    ```\n    npm run redeploy\n    ```\n\n    (WIP. See [tips](#tips) for info on how to redeploy)\n\n\n##### Web interface\n\nWeb interface is optional. You may run it either via `npm run web-dev` or by accessing static HTML files from `build/` directory.\n\n\n### As a client Ethereum-HTTP bridge\n\n1. Configure as necessary to `config/local.js`, by overriding keys from `config/default.js`, especially the `client` section.\n\n1. Run the server\n\n    ```bash\n    node client/\n    # Tip: use PM2 for keep-alive\n    ```\n\n    Note: You may wish to redeploy the contracts by running:\n\n    ```\n    npm run redeploy\n    ```\n\n    (WIP. See [tips](#tips) for info on how to redeploy)\n\n##### Web interface\n\nThere are no web interface for client server at this point in time.\n\n\n## Tips\n\n1. Files at `script/` are one-off scripts to help during development and are not loaded anywhere. \n\n2. `redeploy` is still work-in-progress. In the mean time, to redeploy contracts, remove `deployedContracts` section from `webpack.config.contract.js` and run `npm build`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fuzyn%2Feth-notifier","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fuzyn%2Feth-notifier","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fuzyn%2Feth-notifier/lists"}