Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Node Wish List: Alert Notification for Tokenholders - 500 LPT #1

Open
RaffiSapire opened this issue Nov 30, 2018 · 30 comments

Comments

@RaffiSapire
Copy link
Contributor

commented Nov 30, 2018

Currently, token holders have no way of knowing if their transcoder they bond to fails to call reward, and therefore you may miss out on inflationary token as a token holder without ever knowing it. In addition to knowing whether a transcoder calls reward or not, I want to know how much LPT I earned from inflation in yesterday’s round. I want to know this information every day.

I’d like to receive an alert notification every day that tells me whether my transcoder called reward or not, and how much token I earned from inflation. I would like to receive this as an email notification.

This is a broad request for a proposal, and creating a spec is the first step of the process.

To apply, comment on the issue.

@adamsoffer

This comment has been minimized.

Copy link

commented Dec 20, 2018

Alert Notification / Staking Digest Spec

Grantee: Adam Soffer

User stories

https://github.com/adamsoffer/livepeerjs/projects/1?card_filter_query=label%3A%22%F0%9F%99%8B%E2%80%8D%E2%99%80%EF%B8%8Fuser+story%22

Mockups

Engineering tasks

https://github.com/adamsoffer/livepeerjs/projects/1?card_filter_query=no%3Alabel

Flowcharts

  • Job Scheduler Abandoning this approach in favor of leveraging the Livepeer Subgraph. Will send emails at fixed daily and weekly intervals, fetching and calculating delegator earnings from the subgraph inside each email job before sending.

Technical milestones

https://github.com/adamsoffer/livepeerjs/milestones?direction=asc&sort=due_date&state=open

Time estimates

~10 hours of work per week over the course of 7 weeks for a total of 70 hours. This is subject to change pending the results of user interviews.

@RaffiSapire

This comment has been minimized.

Copy link
Contributor Author

commented Dec 27, 2018

Great, thanks @adamsoffer. We are pleased to grant you 2,100 LPT to complete this application as you have laid forth. We can allocate it by milestone as you have laid forth in the engineering milestone link, and it will be paid bi-weekly as it has been. Thank you Adam for this amazing preparation and proposal that has been thought out and clearly you put in a lot of work already.

Please let me know if and when you'd like to check in for feedback in Jan.

@RaffiSapire RaffiSapire reopened this Dec 27, 2018

@adamsoffer

This comment has been minimized.

Copy link

commented Dec 27, 2018

🎉thank you! This is going to be a great feature and I'm excited to start building it. I'll reach out with a check in date for feedback.

@mgarciap

This comment has been minimized.

Copy link

commented Dec 28, 2018

NOTE:
I understand that this RFP has already been granted, nevertheless I consider that if the budget allows it, it would be useful for the community to have a new contributor and two dApps with similar but not equal features and different approaches (this dApp is independent of the existing livepeer explorer dApp and also adds a Telegram bot). We will understand if it doesn't make sense to grant this RFP twice. We'll keep working on other RFP anyways.

Livepeer: Alert Notification for Token Holders

Abstract

The motivation behind the proposal is to deliver a positive change to the experience of token holders engaged in the Livepeer network.

The first objective is to contribute to the Livepeer ecosystem an open-source implementation for a pro-active alert notification experience that will help LPT token holders to be updated and understand how the transcoders they are delegating the tokens to are performing in near real time. The second goal is to proactively engage LPT holders on how much they’ve earned from inflation during the last days. The third goal is to proactively re-engage LPT holders who are not delegating yet or stopped delegation, so that we can positively impact target participation rate.

The service will enable token holders to sign up to receive notifications using their e-mails and/or telegram user and their Ethereum addresses . All the process will prioritize the user experience (UX).

Why is this tool required?

Currently, token holders have no easy way of knowing if the transcoder they bond to fails to call reward, and therefore one may miss out an inflationary token as a token holder without ever knowing it. Furthemore, token holders want to know how their LPT tokens are performing by having insight information on earnings.

I like to receive an alert notification every day that tells me whether my transcoder called reward or not, and how much token I earned from inflation. I would like to receive this as an email and/or telegram notification.

Features

  • Home page focused on a superior UX targeted to regular users (Separate from current Livepeer Explorer)
  • Connection with a wallet (initially Metamask).
  • Token holder account summary
  • Subscription to receive notifications (e-mail, telegram, frequency and content preferences)
  • E-mail validation
  • Delivery of e-mail/telegram notifications to subscribers
  • A possibility to unsubscribe

Note: In a later release, a user will also be able to choose to get notified about other metrics, including network status and behaviour (e.g., total bonded, total supply, bounded transcoder performance, top 10 transcoders, inflation rate, etc.).

Licensing: Open Source

The platform will be open-source under the MIT license.
https://github.com/livepeer/livepeerjs/blob/master/LICENSE

Architecture

Front end

The application will be built using React and other libraries from the ecosystem, such as Redux, Immutable, etc.

Apart from coding best practices (unit tests, end-to-end tests, test coverage, code analysis coverage, etc.), the project will be configured to run in continuous integration and continuous deployment pipelines.

Back end

Back end will be implemented as a RESTful API that will store the alert information and monitor the changes in the Livepeer smart contacts to notify token holders.

The application will be built using Node.js, MongoDB, a e-mail service, a Telegram Bot and Livepeer.js. The application will be initially hosted on Heroku for high availability and security.

Delivery Approach, Estimates, and Timeline

Phase Scope Deliverables Estimated time
1 1) Superior UX/UI. 2) Focus on regular users. 3) Token holder access to summary page (livepeer account data) 1) UX/UI designs. 2) Repositories and tooling setup (CI/CD, testing, coverage, etc.). 3) UI Implementation. 4) Token holder account summary page 1.5 weeks
2 1) Back end and e-mail notifications. 2) Deployment automation. 3) QA engineering. Stabilization, bug fixing small changes/improvements. 1) Back-end development to interact with smart contracts leveraging Livepeer.js libraries. 2) E-mail notifications implementation. 3) Website hosted by Protofire for Livepeer to test 1.5 weeks
3 1) Telegram subscription and notifications. 1) Telegram bot development using the developed software 1/2 week

Estimated delivery date: January 18th, 2019

A similar Monitoring and Notification Tool Developed by Protofire

We have developed a very similar solution for MakerDAO collateralized debt position (CDP) holders. It allows a CDP holder to monitor his/her CDPs and be notified when they go out of a collateralization ratio range and run the risk of being liquidated and incurring a penalty fee of 13% of an outstanding debt.
The dApp is accessible here: http://cdpalert.org

Grant size

$10k worth of LPT, split into chunks paid out over achieved deliverables.

Development Team

Role Member Availability Github/LinkedIn
Full-stack DApp developer Mariano Aguero Full-time https://github.com/mariano-aguero
Full-stack DApp developer Franco Victorio Part-time https://github.com/fvictorio
UX/UI designer Gabriel Rodriguez Part-time https://github.com/gabitoesmiapodo
Team Lead Manuel Garcia Part-time https://linkedin.com/in/mgarciap

Development

Approach

Agile & Scrum with 1-week sprints. Every task published and tracked in github using waffle.io. Each sprint will finish with the publicly available demo or report.

Status progress

Given that we are new to the Livepeer development community (Livepeer protocol, libraries and tools), our team has already started researching and implementing the application's main components (i.e.: backend integration with Livepeer through Livepeer.js, DB storage, frontend setup). The main tasks to come are related to UX/UI and the Telegram bot.

The project development status and plan is publicly accessible in this waffle board.

Development progress up to this date (12/28/2018): 40%

Team Background

We are all part of ProtoFire.io. We are a team of engineers which helps token-based protocols and developer platforms accelerate growth of their ecosystems. By providing hands-on coding and contributions, Protofire specializes in supercharging developer adoption and network usage.

Our team has extensive experience developing DApps, from PoCs and prototypes to MVPs and more, just to mention a few:

App Description Repo
AragonDAO - Payroll dApp for Aragon https://github.com/aragon/aragon-apps/tree/master/future-apps/payroll
FlightDelay - the first decentralized Flight Delay insurance on the Ethereum Blockchain. https://fdd.etherisc.com https://github.com/etherisc/flightDelay
Monitoring and alerting system for MakerDAO DAI Stablecoin CDPs (Collateralized Debt Position) https://github.com/protofire/cdp-alert
A dashboard that displays information about the 0x Protocol network traffic, including trades, addresses and statistics about transfers. https://github.com/protofire/0x-dashboard
Smart contracts and libraries for bzx.network, a protocol for next generation margin lending on 0x-standard relays https://github.com/bZxNetwork/bZx-monorepo
Easy MakerDAO DAI stablecoin borrowing for consumers https://github.com/protofire/open-cdp
A GitHub App built with Probot that finds duplicate links on newly opened issues for Aragon weekly. https://github.com/protofire/aragon-links-bot
DApp for proof of bank account (PoBA) attestation https://github.com/poanetwork/poa-poba
DApp for proof of physical address (PoPA) attestation for validators of POA Network https://github.com/poanetwork/poa-popa
A DApp to create token and crowdsale campaigns (ICO, TGE) on Ethereum compatible networks using open source Wizard. No coding skills required. Decentralized, open source, free https://github.com/poanetwork/token-wizard
POA Bridge in NodeJS, an interoperability solution between Ethereum networks for native to ERC20 and ERC20 to ERC20 cross chain transfers https://github.com/poanetwork/bridge-nodejs
A DApp for POA Bridge, a cross chain bridge between POA and Ethereum networks https://github.com/poanetwork/bridge-ui

ProtoFire.io maintains and contributes to open source projects like Solhint (Security and Style Guide validations for Smart Contract development) and eth-cli (a collection of CLI tools to help with ethereum learning and development)

@dob

This comment has been minimized.

Copy link

commented Dec 29, 2018

@adamsoffer Thanks for taking this on, and for the organization around the development process and milestones. I was unable to access the invision mockups - do you have any screenshots you could share here or elsewhere?

How "explorer integrated" is this feature? I think it will be interesting to try to thread the needle between a good in-flow UX for users onboarding to this service after they delegate, but also not introducing another infrastructure dependency on the explorer itself. Looking forward to the progress!

@dob

This comment has been minimized.

Copy link

commented Dec 29, 2018

@mgarciap Thanks for the great proposal. I agree that an independent implementation that can cater to the user requests with value add features will be great for the ecosystem. The CDP-alert app is a great example of a single-purpose tool with clear user value.

One related idea is that I know transcoders themselves are looking for a reliable 3rd party alerting system to signal to them that reward was not called in the current round automatically. Let's say 1-2 hours after the round begins, if their node hasn't called reward yet, they would get a telegram message. Not sure if this fits in with your vision, but I'm sure you'd have some eager (possibly paying) users pretty quickly for this.

@adamsoffer

This comment has been minimized.

Copy link

commented Dec 29, 2018

@dob Sorry about that - I didn't realize those invision links weren't public. You should be able to view them now without having to sign in to invision.

Note that one of these mockups was designed under an assumption that a decent number of delegators are bonded to multiple transcoders from multiple accounts and want to receive a single daily digest email with earning totals across multiple bonded accounts. If we find out through user interviews that in reality this is not a common use case, or that delegators prefer to receive individual daily email alerts for each bonded account (akin to what makerscan's alert system does for cdp alerts) then we can scratch that mockup or introduce it later on.

With regards to how "explorer integrated" this feature is, the only direct integration inside the explorer codebase would be the email sign up form as well as a call to action to it. However, even the form can live inside a standalone app if that's more desirable. The two major infrastructure dependencies would be a Node server + Redis database for scheduling/persisting email jobs (using this redis-based queue package), and a Sendgrid account for storing email addresses and delivering emails. Here's a flowchart on how I envision this working.

@mgarciap

This comment has been minimized.

Copy link

commented Dec 31, 2018

@dob Thank you for your feedback.

Regarding your comment

... transcoders themselves are looking for a reliable 3rd party alerting system to signal to them that reward was not called in the current round automatically. Let's say 1-2 hours after the round begins, if their node hasn't called reward yet, they would get a telegram message. Not sure if this fits in with your vision, but I'm sure you'd have some eager (possibly paying) users pretty quickly for this.

It fits the vision quite well. The application architecture was thought to be completely flexible so that other features such as Event triggered notifications can also be sent besides of the initial scheduled notifications. These are based on the Events emitted by the contracts such as:

  • NewRound in RoundsManager.sol.
  • TranscoderUpdate in IBondingManager.sol to let delegator know if the transcoder they are delegating to has changed their business rules and they might not be in favour of the delegator anymore (i.e.: lowered the Reward Cut and/or the Fee Share)
  • TranscoderSlashed
  • etc.

Each notification alarm will include the the right calls to action given its context (i.e.: direct link to call the reward).

So, we can definitively add a new actor to this app: the transcoder.
We thought about proposing these features after the MVP. The dApp will automatically identify and prepare a personalized UX/UIs depending on the connected wallet address:

  • Token holder not delegating
  • Token holder already delegating
  • Transcoder
  • Broadcaster

There might be features overlapping the Streamflow Staking DApp so we need to think it carefully.

Please let me know if you have any other question or suggestion.
@RaffiSapire @dob do you consider this second dApp to be valuable for the ecosystem and worth granting?

Have a Happy New Year!

PS: One step further on the proactive monitoring path is to act on behalf of the user (we are currently developing a similar solution targeting MakerDAO CDP holders). The user will grant permissions to a wrapper contract (only for very specific functions) that this 3rd party solution will use to perform certain automatic tasks. This way the transcoders won't even need to follow up the alarmas and perform the Call reward manually, they count on an 'assistant' bot :)

@RaffiSapire

This comment has been minimized.

Copy link
Contributor Author

commented Jan 3, 2019

HI @mgarciap, The proposal is well written, and in theory we'd be excited to fund this with the same grant amount (2,100 LPT) as allocated to Adam. However, many of the DApps you link to as examples of other work do not function. When you go to the links, they say application error, or its a demo with dummy data, etc. It is important that the grant for the application funds both the creation but that any team or individual is interested in being a long term maintainer incentivized by the initial grant amount. Could you explain why applications like the CDP Alert, the 0x Dashboard, MakerDAO DAI app are not maintained?

@mgarciap

This comment has been minimized.

Copy link

commented Jan 4, 2019

Hi @RaffiSapire,

The list that I've provided contains some developments related to DApps, PoCs and prototypes, as it was described.
Replying to your questions:

  • CDP Alert: it started as a prototype with only a 'Demo' wallet connection which includes only demo data. It was built for MakerDAO to understand its purpose and fund the remaining of the development. The 'Demo' wallet connection also helped those who don't have CDPs to also understand the app purpose. However, the fund they had back them with an investment firm got frozen (stable.fund). Nevertheless, we continued the development and made it to work with the Ethereum main net through the connection with Metamask, being able to monitor real CDPs (I use it). It works. The app development is currently on-hold given that we are focused on developing the "Collateral protection insurance". We are in the final steps of receiving a grant from MakerDAO. I can share more details in private and provide references.
  • MakerDAO DAI easy borrowing: It ran into the same situation as the previous app but we stoped with the conceptual prototype. It shouldn't be in the list. Sorry for that.
  • 0x dashboard: it was a working prototype which was running on a free Heroku Dyno and I can see that it crashed (limited resources that seems not able to retrieve the full list of trades now) :(

Most of the prototypes and PoCs are not maintained. They are not meant to be for us. It's OSS free to use and continue development by anyone.

The list was used when we won a Grant from AragonDAO and it got outdated. Thank you for your feedback. I'll updated it next time.

We choose projects we believe in to build a long term commitment. Livepeer is one of them.

Please let me know if you have any additional question. I would be glad to jump into a call or provide more information here.

@mgarciap

This comment has been minimized.

Copy link

commented Jan 8, 2019

Hi @RaffiSapire @dob any updates?

@RaffiSapire

This comment has been minimized.

Copy link
Contributor Author

commented Jan 10, 2019

Hey Manuel. Eric and I will circle back and be back soon with a response.

@RaffiSapire

This comment has been minimized.

Copy link
Contributor Author

commented Jan 19, 2019

Hi @mgarciap,

Its important that independent grant recipients intend to maintain the alert application over time, fixing bugs, updating and making it valuable. We're looking for partners who will be incentivized not by future payment (we wouldn't have continuous grants to keep up maintenance) but instead by the existing token they earned and will continue to earn inflation on. You would have many users depending on you to maintain and fix. From what I can tell from the above applications and explanations, we're not completely aligned in that way and so we are declining to grant you for this proposal.

Thank you very much for the time and attention here. If there are other opportunities that you feel are more aligned with your business we're happy to discuss.

@mgarciap

This comment has been minimized.

Copy link

commented Jan 22, 2019

Hi @RaffiSapire @dob ,

I would like to introduce you to the Livepeer Alerts MVP (alpha): https://livepeer.tools

As described in the proposal #1 (comment), we've developed the following features:

  1. Home page focused on a superior UX targeted to regular users (Separate from current Livepeer Explorer)
  2. Connection with a wallet (initially Metamask).
  3. Token holder account summary
  4. Subscription to receive notifications (e-mail, telegram, frequency and content preferences)
  5. E-mail validation
  6. Delivery of e-mail/telegram notifications to subscribers
  7. A possibility to unsubscribe

A few screenshots

Home

1_home

Token holder - account summary

2 1_account_summary

Email notification

3 1_email_alert

Telegram Bot interaction

4_telegram_bot

Open Source

Status

MVP alpha. It might have bugs. Wording should be revised. Branding can also be replaced.

Previous comment reply

@RaffiSapire , getting back to your last comment, I would like to address your concerns.

Its important that independent grant recipients intend to maintain the alert application over time, fixing bugs, updating and making it valuable.

I totally agree and we are willing to do so, mainly the 'adding value' and many more tools.

We're looking for partners who will be incentivized not by future payment (we wouldn't have continuous grants to keep up maintenance) but instead by the existing token they earned and will continue to earn inflation on. You would have many users depending on you to maintain and fix.

The grants always help to finance the initial development. When the solution is ready there are a few options such as 1) Hand it over to Livepeer to host it and maintain it (we can ofcourse help), 2) Find an incentive for us to host it and keep developing it. It will depend on the case and we are open to both.
Regarding the incentive, if we receive tokens, we are willing to use them to add value to the network. We can even go for a vesting period greater than 6 months.

From what I can tell from the above applications and explanations, we're not completely aligned in that way and so we are declining to grant you for this proposal.

It is hard to explain case by case from the list of prototypes, proof of concepts and dApps we've shared in a Github comment. Sorry for that. We can chat about it.

We are very excited with the Livepeer project. We've developed this MVP at our complete risk without knowing if we would get the grant or not. It helped us to learn a lot (and also contribute to the existing tools: livepeer/livepeerjs#305).

I find this MVP to be the first step. We are ready to move on towards the Streamflow Staking dApp design and development where most of the code produced in the MVP can be used :)

@RaffiSapire

This comment has been minimized.

Copy link
Contributor Author

commented Feb 1, 2019

Hi @mgarciap thank you for sharing this! Seems like you're on to something the community will enjoy using. Thank you again for your participation and perseverance. We are happy to award you with a grant for 2,100 LPT, which will be disbursed in increments over the next 6 months.

M1 - 500 LPT - granted today
M2 - 500 LPT - granted at the completion of app (finishing inbox of issues listed in waffle.io)
M3 - 183.33 LPT awarded monthly for maintenance and improvements made to the app over the following 6 months.

Please let me know the ETH address to send the 500 LPT.
Please do follow up when M2 is completed.

Thanks and have a nice weekend.

@mgarciap

This comment has been minimized.

Copy link

commented Feb 4, 2019

Hi @RaffiSapire,

Thank you!
We are glad to contribute something useful for the ecosystem.

Besides the initially proposed scope of work we have added an Epic Story suggested by @dob :

  • As a Transcoder be notified if there was something wrong with your node and the reward was not called in the current round automatically (Work In Progress)

The disbursement plan looks good to us.

  • M1: 500 LPT to address 0xABC04058E20c9CBA4f360244648FEDF30CeBc3B4
  • M2: We'll let you know when we finish the pending issues
  • M3: I'll send you a monthly reminder for maintenance and improvements efforts.

Thank you.

@mgarciap

This comment has been minimized.

Copy link

commented Feb 5, 2019

@RaffiSapire . We've received the LPT. Thank you.

image

And .... staked
image

@mgarciap

This comment has been minimized.

Copy link

commented Feb 19, 2019

Hi @RaffiSapire , we have finished M2 (there is only one issue, protofire/livepeer-alerts-backend#18, which was out of the scope. It is a contribution to the livepeer JS library and it is pending to be integrated. We can't do anything about it).

As for February 19th we can consider the maintenance and improvements phase to be started. Given that the agreement is already here, would you like me to remind it via email so we don't make this issue thread unnecessary longer?

Best.

PS: our LPT address is 0xABC04058E20c9CBA4f360244648FEDF30CeBc3B4

@RaffiSapire

This comment has been minimized.

Copy link
Contributor Author

commented Feb 19, 2019

Hey thank you @mgarciap we'll take a look this week! And yes I can schedule reminders for myself to send.

@RaffiSapire

This comment has been minimized.

Copy link
Contributor Author

commented Feb 19, 2019

@adamsoffer hiya! how are we lookin?

@adamsoffer

This comment has been minimized.

Copy link

commented Feb 20, 2019

@RaffiSapire We're lookin good! The MVP is feature complete. I was actually planning on sharing a link this week, but The Graph api endpoint I published which I'm relying on to look up past earnings is down. The Graph team is looking into this, and as soon as that's resolved (hopefully within the next few days) I'll throw up a link in here 🙂

In the mean time, here's the repo if you or anyone is interested in digging into the code. https://github.com/adamsoffer/token-alert

@adamsoffer

This comment has been minimized.

Copy link

commented Mar 1, 2019

Hiya @RaffiSapire!

I'm still waiting on a fix for that Subgraph API, but I wanted to share a link in the meantime. The staking alerts application, as laid out in the above spec, can be found here as a standalone application: https://livepeer.studio/staking-alerts.

I plan on testing the application on this domain with the community, implementing any feedback and ironing out any potential bugs before integrating with the Explorer itself (if that's still desirable). Also, FYI I'm thinking about using that livepeer.studio domain as a hub for sharing all future Livepeer ecosystem experiments, products, and tools I build with the community :)

Staking Alert Application Features:

  1. Double opt-in sign-up process
  2. An option for weekly and/or monthly earning stats (made possible with updates I made to the Livepeer Subgraph)
  3. Transcoder performance stats (missed reward calls over an entire week or month)
  4. An unsubscribe option
  5. A shiny UI :)
  6. Invisible captcha for spam prevention
  7. A public API for other applications that would like to provide Livepeer staking email alerts in their app

A couple notes:

  1. I've paused the email notification system while the Subgraph API is down, but you can still go through the process of signing up. Once the Subgraph API is back up I can basically just flip a switch and the emails will resume.
  2. The infrastructure is built in such a way that makes it very easy for anyone to integrate the alerts with any front end application. You can simply include an html form with a few fields (email address, token holder address, and email frequency) and post the form to an API endpoint I provide and the token holder will begin receiving emails. (This is how I plan on integrating with the Livepeer Explorer frontend, illustrated in the shared mockups.)
  3. I purposefully forwent including an option to receive alerts "daily" since rounds are now ~1.3 days long. I realized a better approach would be to offer token holders the ability to receive alerts on a "per round" basis.

To-Dos

  • Integrate form into the Explorer as illustrated in the mockups
  • Write up documentation for integrating the staking alerts inside one's own app

Future work:

  1. Add a "per round" frequency option for token holders that prefer to receive an earning notification at the start of each new round.
  2. Add more integration channels (Telegram? Discord?)

I will follow up as soon as the API is back up and running.

Cheers!

@adamsoffer

This comment has been minimized.

Copy link

commented Mar 3, 2019

Hey @RaffiSapire & @dob - the subgraph is back up and synced so I've resumed the email notification system 😃

If you signed up for the weekly alert you'll receive an email on Friday morning (3/8) detailing rewards and fees earned between 3/1 & 3/8.

@RaffiSapire

This comment has been minimized.

Copy link
Contributor Author

commented Mar 4, 2019

Great work @adamsoffer Adam! What are the next steps to complete this grant?

@adamsoffer

This comment has been minimized.

Copy link

commented Mar 5, 2019

Thanks @RaffiSapire! The next steps to complete this grant would be to onboard users to the service from within the Explorer. I included a mock-up of a signup form integrated directly inside the explorer. Alternatively, we can simply link off to the standalone application. Thoughts here?

Form integration:
livepeer-modal

Alternative link to standalone application:
sign-up-link

@RaffiSapire

This comment has been minimized.

Copy link
Contributor Author

commented Mar 6, 2019

I think it would be good to onboard within the app

@RaffiSapire

This comment has been minimized.

Copy link
Contributor Author

commented Mar 29, 2019

@mgarciap thank you! I've processed M2 to 0xABC04058E20c9CBA4f360244648FEDF30CeBc3B4 . https://etherscan.io/tx/0xd47b1e98f887fa9da2f013216ecc87401cdb8e9b4b7b4a38efa1e39172a8b7aa

In terms of maintenance for the M3, we would like to understand whether it makes sense to continue to maintain the app and continue the grant. How are you all doing for usage, and what KPIs would you like to work towards each month in terms of # active users, open rate, or other stats you feel represent this being a product that is continuing to benefit the community?

@ppunktw

This comment has been minimized.

Copy link

commented Mar 30, 2019

Hey there, I just discovered this thread and wanted to share my Telegram Transcoder Watcher bot (https://t.me/TranscoderWatcher_bot) since it seems to cover a lot of the requested features. The bot has been running without any problems since ~round 1275. Some screenshots can be found here: https://forum.livepeer.org/t/telegram-bot-transcoder-watcher/609

Initially, I've developed the bot as a notification service for my Transcoder. But as a long time staker, I was getting tired of checking daily if the transcoder claimed the rewards or decided to increase the reward cut - so it was my goal to create a tool that everyone can use to get notified about transcoder events.

Features

If you subscribe to a transcoder (or multiple, there is no limit), you will get notified about the following events:

  • Reward Calls:
    Provides the round number, the total LPT the transcoder received and the reward cut of the transcoder
  • Missing Reward Calls:
    Informs when it's over 500 blocks in the current round and the transcoder didn't claim the rewards yet
  • Reward Cut changes:
    Informs about reward cut increases/decreases of the transcoder, providing the old and new reward cut
  • Transcoder becomes inactive:
    Informs when the transcoder is no longer in the active set

Whenever possible, I include the transaction link so you can be sure that no incorrect information is sent. The bot is not relying on the livepeer explorer, it reads the events directly from the smart contracts (using web3 subscriptions)

Difference to the other two solutions

I took a slightly different approach then the other two solutions: There is no need to enter your wallet address In order to use my Telegram bot. My reasoning for this was privacy. I can imagine that especially the large holders do not want their email or any other information linked to their wallet address.

Of course this means that the bot can't provide details about the amount of LPT the subscriber has earned, but I tried to mitigate this by including the total LPT earned and the total stake. So by knowing how much you're staking, you can calculate/estimate the amount of LPT earned during the round. The notification currently looks like this: Rewards claimed for round 1296 -> Transcoder 0x525419... received 114.2 LPT for a total stake of 33117 LPT (keeping 0.23 LPT due to its 0.2% reward cut).

Now I've never asked for a grant (I didn't even know this grant existed) and developed the bot purely as a free tool for the community. But of course I wouldn't mind a small LPT tip if the bot is deemed a worthy contribution :)

@mgarciap

This comment has been minimized.

Copy link

commented Apr 4, 2019

Hi @RaffiSapire ,
Thanks for M2 payment. Already staked :)

About the M3, the goal was maintenance and improvements efforts. We keep paying for the hosting fees and try to get feedback from the community on bugs and improvements. Unfortunately not that many.
I agree that part of the M3 are improvements by adding more value to the community.
I like your KPIs:

  • Registered users (receiving the notifications)

    • Today: 20 (including our account)
  • Website active users. This is as for today:

image

Another feature that we were considering are:

  • Notify the user if the transcoder they are delegating to has changed their business rules (reward cut and fee share).
  • Weekly summary
    I also like @ppunktw feature 'Transcoder becomes inactive'

@RaffiSapire given your relationship with the community, do you see any pain, need, etc that would bring more value?

@chm1975

This comment has been minimized.

Copy link

commented Jul 15, 2019

Hi @RaffiSapire,

I´m Cristian Malfesi. I am leading Protofire's contributions to Livepeer.

I'm glad to update you about the progress of the Livepeer.tools app. We made several changes, fixed a few bugs and we are currently working on some improvements.

Released

  • Fixed bugs (#63, #65, #66, #76)
  • [Feature] As a Token Holder I want to be notified when the transcoder I am delegating my tokens to has changed his/her delegation rules (reward cut and/or fee share) #68, Closes #55 #49

Work in Progress

  • [Feature] Add the option to choose the subscription email frequency (daily or weekly) (#78)
  • [Feature] Be notified when the UNBONDING period has ended.(#74)
  • [Feature] Be notified when the PENDING TO FINISH BONDING period has ended.(#75)
  • [Task] Increase the number of decimals of the earning values (#71)
  • [Feature] Create the Weekly summary email (#85)

There are other ideas to improve Livepeer.tools that I will share soon.

I will keep you updated about the progress.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
6 participants
You can’t perform that action at this time.