TBH, I would appreciate someone creating this for Discord.
I will launch a community service by the end of 2024, and I use Discord more than Telegram.
It would be nice for someone to tackle this so I don’t have to try it myself.
I also think you could write a framework with a plugin/driver system for this and work with @mert on that so that it’s an abstract system. I think that would be ideal in the long term, so new means of alerts could work via this.
His bot then could get re-factored to use this framework, either as part of this grant, on his own, or he could ask for a new one.
Thanks for submitting your proposal to the Sia Foundation Grants Committee. After review, the committee has conditionally approved your grant! The condition is as follows:
Removal of Python SDK development
Reason: we would prefer to build SDKs in house for better and continued maintenance
Should you agree to this term, please reply with a new message in this thread indicating your acceptance. Thanks!
Thank you very much for reviewing my proposal and for your feedback.
I agree to the terms you’ve outlined.
In light of this, I will shift my focus towards building a modular alert system. To achieve this, I intend to conduct thorough research to identify the most suitable solution. I’m considering leveraging existing solutions such as a combination of Apache Airflow, Grafana, and Prometheus. Additionally, I’m open to the idea of developing a completely custom solution, though this will depend on the feasibility and effectiveness compared to existing tools.
The final goal is to create a versatile “alerting studio” that can integrate multiple services, with an initial focus on Discord and the existing Telegram solution.
Regarding the budget and milestones, I propose the following revised structure:
Amount Requested: $10,000 for the development and completion of a modular MVP for the renterd alerts bot within a 3-month period. This budget will enable me to dedicate full-time efforts to this project without the need for freelancing.
The breakdown is as follows:
Research and Proof of Concepts (PoCs) for a suitable solution using existing Open-Source tools: $2,000
Exploring solutions like Grafana, Prometheus, and Airflow to find an optimal approach for the alert system.
Development of the MVP: $6,000
Creation of a fully functional MVP, with the potential for future enhancements and service integrations under subsequent grants.
Operational Expenses: $2,000
Documentation: $800
Testing and examples: $800
Infrastructure costs: $400
Total: $10,000
Milestones:
Milestone 1: $3,000 - January 31 to February 29
Research and evaluation of the best solution for the system. I plan to seek feedback from the committee and the community, possibly presenting findings in the forum or here.
Milestone 2: $6,000 - February 29 to March 29
Development of the solution, including documentation, examples, and testing.
I look forward to your thoughts on this revised proposal.
Thanks for your updated proposal! The committee appreciates the expanded concept but has some questions they’d like clarified:
What specific functionality will be offered with these updates? The Telegram bot expenses from your original proposal totaled $2,500, and with a 4x increase they’d like to see a more detailed breakdown of what the final expected result will be.
There are other alert-related grants already approved by the committee. One alert-specific grant here and another dedicated to hostd here. Another isn’t specifically built around alerts, but does contain them as part of development here. What differentiates this grant? Breaking down the expectations of the “alerting studio” that you mention will likely help answer this and the previous question.
Finally, your milestones ($9,000 total) don’t add up to your budget request ($10,000 total).
One possible path forward would be turning your first milestone into its own Small Grant request. Please also remember that your original proposal was approved with the removal of the Python SDK, so if you’d like to move forward with that let us know.
I’m reaching out to clarify a few points regarding our recent discussions and your response to my proposal.
I’m inclined to accept the updated terms and proceed with my original proposal, minus the Python SDK development. This approach aligns with the feedback you’ve provided.
However, I have a question about the existing Telegram alert system. I’m aware that a similar system has already been developed by someone else. I want to ensure that my efforts are complementary and not redundant.
Once we clarify this aspect, and assuming the project still holds unique value, I plan to move forward as discussed. Additionally, I intend to submit a separate proposal for the modular alert system once this initial project is completed.
Please feel free to reach out to me via E-Mail or Telegram.
I was in contact with Frances and we’re setting everything up for me to start working on my grant.
However, I would like to finalize the proposal with this posting.
After carefully reviewing everything I came up with the idea, that building a modular alert Bot would make the most sense in my point of view.
I would stick to my original plans as discussed but would extend it with further milestones. To make it clear to the committee, here’s a bit clearer budget allocation:
The 4x comes is created by the fact that the Alerting Suite MVP and other integrations than only Telegram will be built.
Research and Proof of Concepts (PoCs) for a suitable solution using existing Open-Source tools: $2,000
Exploring solutions like Grafana, Prometheus, and Airflow to find an optimal approach for the alert system.
Development: $6,000
Alerting suite - $3,500
Discord, Telegram, Slack Integration $2,500
Operational Expenses: $2,000
Documentation: $800
Testing and examples: $800
Infrastructure costs: $400
Total: $10,000
Milestones:
Milestone 1: $3,500 - January 31 to February 29
Research and evaluation of the best solution for the system. I plan to seek feedback from the committee and the community, possibly presenting findings in the forum or here.
Milestone 2: $6,500 - February 29 to April 29
Development of the solution, including documentation, examples, and testing.
What differentiates this grant:
So you can think of some kind of platform which will then make it easy for users to monitor renterd and send alerts to different plugged in services (Discord, Telegram, Slack). Currently I am thinking of using Django for that as it brings a lot of stuff out of the box and can be extended easily. The database will be PostgreSQL as it works pretty good with Django. Everything can be setup via Docker-Compose. Due to the PoCs I am going to do, it might end with an even better solution and everything can be managed with Airflow for example.
As of now tho, this answer can’t be given as I’d need to dive deeper into everything and evaluate then what makes sense to use.
I changed the budget of the milestones from my initial proposal a tiny bit as I see more workload in diving into the other milestones than extending the already telegram integration.
As always, feel free to ask questions here or via E-Mail.
Thanks,
Patrick
Thanks for the info! I want to lay out our timeline briefly here just to avoid any confusion, as we’ve conversed here, Discord, and via email and the committee will need some of that info. This is mostly just to summarize the current situation in the forum for record-keeping, but also to get everyone on the same page.
On Jan 12, we conditionally approved this proposal. The condition was removal of the Python SDK, which made it a $4,500 grant as per the budget request at that time
On Jan 13, you stated you agreed in a forum response, but then updated the proposal. This required a re-review by the committee because the proposal had been updated.
On Jan 25, we posted the committee’s comments on this updated proposal. They did not approve it and had some questions.
On Jan 26, we chatted in Discord. You accepted the original proposal, the $4,500 grant for a renterd alert bot and the removal of the Python SDK. Screenshot for reference.
After onboarding was started, you have posted the above updated proposal which is very similar to the original one the committee had questions about. I see you’ve added a section about Differentiation and a note addressing the budget increase.
The committee must review these updates to your proposal.
Alright, there’s our summary! Just to be clear, any updates made to a proposal must be reviewed by the committee before approval. Despite the fact that we’ve begun onboarding, this grant is paused unless you want to proceed with the initial $4,500 budget approval from Jan 12. Thanks!
Thanks for your patience while the committee discussed this proposal.
They’ve decided to only accept their original conditional approval for this grant, and will not be considering other updates to the proposal. Additional work can be submitted as a new grant request upon completion of this grant.
I recently sought feedback on Discord for my project but didn’t have much success, so I’m turning to you for insights. I’ve detailed my current vision for the project here: https://github.com/grumpyp/sia-modular-telegram-bot
However, I’m still curious about which features of the SIA hostd/renderd you’re most interested in. Your feedback would be invaluable to ensure the project not only reflects my vision but also includes functionalities that you find useful.
I’m more than happy to answer any questions you may have.
I am sorry for my delayed report - I communicated with you guys and the first report was stated for 15. May.
However, I am able to give a first report already.
Progress Report Form
What progress was made on your grant this month?
In the beginning of the development phase I was able to create a possible architecture chart and was able to sort out which libraries I am going to use to communicate with the Telegram API. I also implemented the first logic for the whole setup. The current idea is to subscribe to Renterd-Events and additionally implement functions to do one-time-request.
Summarize any problems that you ran into this month and how you’ll be solving them.
At the moment there are now problems in terms of development. In the beginning I was struggeling to actually lay out my architecture and stuff I want to include into this Bot. As there is already a similar Bot availavble, I was asking the community about any whishes and feature examples they would like to use. Unfortunately I didn’t get an answer so I decided to start working on it implementing my vision.
In my next steps, I am going to integrate the Renterd-API. I also want to make sure that the Event-Listener send Information to the subscribed users. There’s a basic DB setup in place already but thats something which also gets extended.
This month, I engaged in several discussions on Discord to gather feedback on desired features for the bot. These conversations helped finalize the roadmap for the project’s features. The architecture is nearly complete and just needs proper integration.
Summarize any problems that you ran into this month and how you’ll be solving them.
I did not encounter any significant issues this month. The primary challenge has been managing time effectively. Nonetheless, I am confident that I will finish on time and may even add some additional features in the upcoming weeks.
Next, I will fully integrate the Renterd-API. Additionally, I will create a default configuration and documentation to provide better clarity. I also plan to produce a short video tutorial.
I am happy to announce that I have finished the project.
Due to time constraints, I wasn’t able to implement everything that was initially planned in the architecture. However, the project is easily extensible, which was my main goal – to facilitate further collaboration from users.
I have written a little documentation on how to extend the bot and how to use it. Additionally, I am willing to produce a simple video tutorial in the next 1 or 2 weeks.
It was a pleasure to work with you all. Special thanks to the Discord users, especially NickJH, who let me use his HostD-API for testing.
Let’s see what the future brings, and I might be back with another proposal here soon.
Everything else can be found in the GitHub repository. Feel free to open issues/PRs or ping me on Discord.