. In the Cardano ecosystem, we are also aware of at least 3 bots more focused on individual use, typically in monitoring certain on-chain activity, such as wallet rewards and changes in stake pools [2-4].
Although there have been past initiatives to create bots with tipping capabilities [5], we are not aware of any currently running bots capable of executing transactions on Cardano directly between Telegram users.
Other blockchain networks have bots with such a feature, but usually in an implementation with custody of the assets, i.e. where the bot controls the user's wallet [6-9]. Social networks like Twitter and TikTok are also already implementing native tip features, which may favor the use of such a feature in Telegram as well with increasing popularity [10-11].
We believe that integrating the tip feature directly into Telegram is a great way to make Cardano adoption more widespread on that network.
OUR SOLUTION
We want to develop a tipping feature for CardaBot, allowing Telegram users to be able to execute ada transactions directly by the bot, without the bot having access to the user's wallet private key.
Currently up and running, CardaBot is a Cardano information bot with multi-language support, primarily allowing network users to check epoch status [12]. In the past, it has had more features related to presenting stake pool information, stake status, and Cardano reservations, which have been removed in order to reduce operating costs and simplify the back-end [13].
With the funding of this proposal, we want to bring back the old features and extend it to include new monitoring capabilities and most importantly, the tip feature.
Tip feature
To accomplish that, we will implement an integration with a third-party wallet (e.g. Nami wallet), allowing the user to connect their wallet to the bot and later sign their tip transactions using the wallet. For example, when giving the command /tip @user\_name VALUE
, the connected user will receive a message from the bot with a button to an external link to sign the transaction using their wallet. This way, the bot just sets up the transaction, serializes the data, and makes it available for the user to sign and submit the transaction.
Connected users: have a Cardano wallet connected to a telegram account; can receive ada directly with a single transaction.
Unknown users: no wallet associated; cannot receive ada directly.
Main flow of the tip process: user calls /tip → bot creates Tx → bot replies with a button (external link) → user opens the link to sign Tx with wallet → submit Tx → bot replies with info about Tx.
DELIVERABLE
Main interactions
We divide the main interactions to be developed in CardaBot into interactions that are user-initiated (user to bot, implemented as callback functions) and bot-initiated (bot to user, implemented through helper services for monitoring on-chain activity).
User-initiated
- /tip: Main feature to be developed.
- /adm: Interface for user group administrators to set default options (language, stake pool for monitoring, etc.) and limit the scope of commands in the group.
- /config: Interface for users to set their default options and configure monitoring and wallet.
- /epoch: Displays main information of the current epoch, including slot, block, time to end of epoch, etc.
- /netstats: Displays network usage statistics, such as number of transactions, volume transacted, block occupancy, etc.
- /netparams: Displays the current state of the main network parameters.
- /pool: Displays information from a stake pool, including metadata and performance information.
- /pots: Displays the current status of all Cardano pots such as Treasury, Reserves, etc.
Bot-initiated
Epoch summary
- end_of_epoch: At the end of each epoch, the user can choose to receive information about stats and changes in the network, stake pool performance (if defined), wallet rewards and changes (if defined).
Event-based
Other messages can be triggered by the bot based on events that have been configured by the user, and are triggered as soon as the event is detected.
- monitoring_pool: Blocks, changes in delegation, and changes in pool parameters.
- monitoring_addr: Deposits and spends.
ROADMAP
1st month
- Development and release of user-initiated interactions, except /tip;
- Prototype of wallet integration.
2nd month
- Development and release of bot-initiated interactions;
- Development and release of tip feature on testnet.
3rd month
- Release of tip feature on mainnet.
KPIs
To evaluate the KPIs, we are defining metrics to be measured during the 3 months of proposal execution until tip implementation (development stage), and up to 3 months after implementation (6 months in total).
Number of CardaBot total users:
-
≥100 in the first 3 months (development stage);
-
≥500 in the third month after tip implementation.
Number of transactions executed by CardaBot:
-
≥50/month in the first month after tip implementation;
-
≥400/month in the third month after tip implementation.
Number of releases completed on time, according to milestones defined in the roadmap):
- 1/month in the first 3 months (development stage).
DEFINITION OF SUCCESS
- 3 months: All the features defined in this proposal implemented and running.
- 6 months: Target KPI values for 3 months after implementation achieved.
BUDGET
- 3 developers with an estimated time of dedication to the project of 5h/week each, at a cost of $40/hour each: 3 x 5h x 12 weeks x $40 = $7200
- Infrastructure cost to sustain the maintenance of the project for at least 1 year: $2000
- Resources for creating marketing campaigns to promote CardaBot: $800
<u>💰 Total: $10000</u>
LIMITATIONS
The proposal described here is not intended to provide mechanisms for the unknown user to receive or send ada, since the functionality depends on an existing wallet connection. However, we already have plans to conduct research around smart contract models that can be used to enable the tip to unknown users.
Also, because of the design chosen for the implementation of the tip feature, there are no plans in this proposal to implement tipping for more than one user at a time, nor to allow tipping ada directly to groups without indicating the user recipient (raining, tipping a group of users).
PROJECT SUSTAINABILITY
The project includes a budget for maintaining its operation for 1 year, but in the future we will hopefully call on Catalyst to raise more funds to develop the tip contract and group tip feature (raining).
IP
CardaBot is an open-source project released under MIT license, available on GitHub (<u>https://github.com/EveryBlockStudio/cardabot</u>). All the code produced in this proposal will also be released under the same conditions.
TEAM
Lincon Vidal
<u>https://www.linkedin.com/in/lincon-vidal-a81110182</u>
- Founder & CEO EveryBlock Studio
- BSc in Biotechnology (UFRJ - Brazil)
- MSc student in Computational Modeling and Artificial Intelligence (LNCC - Brazil), working on deep learning applications
- Python developer with more than 6 years of experience, including works in genetic algorithms and machine learning during his academic career.
- Previously worked on the back-end development of third-party NFT projects (NFTsurf, CardanoBeans), having great knowledge of the technical basics and general operation of Cardano.
- For nearly 2 years now he has been working as the director of technology in an analytical chemistry company (NanoBusiness), coordinating teams and executing digital transformation projects.
- Stake Pool Operator since epoch 208, having already received IOG delegation for 3 months in the first round of delegation.
- Experience in teaching in-person having worked for over 2 years on tutoring and other educational projects involving programming education, as well as online classes and webinars on technology topics.
- Organized small events for up to 400 people during the undergraduate course (I EcoSemana do Polo Xerém, I Simpósio de Biotecnologia da UFRJ).
- Since 2020 he has been participating in local meetups and disseminating technical knowledge about Cardano in Brazil.
- Also writes and produces text and video content in Portuguese and English about Cardano, blockchain, and technology in general.
- He has already worked briefly as a photographer and has experience with audiovisual production, having produced audiovisual material for events and for companies.
Matheus Müller
<u>*https://www.linkedin.com/in/mullerpds/*</u>
- BSc in Biotechnology (Federal University of Rio de Janeiro - Brazil);
- MSc in Computational Modeling (National Laboratory for Scientific Computing - Brazil);
- Ph.D. student also in Computational Modeling, focusing on machine learning and deep learning;
- Has experience applying machine learning to drug design and complex biological data;
- Python and C/C++ developer with 6+ years of experience in computer programming;
- For almost a year and a half, he has worked as a Python back-end developer in several applications at Nanobusiness (an analytical chemistry company), contributing to its digital transformation;
- He has experience working with REST API services and with API dev frameworks, such as FastAPI;
- Also had experience as a teaching assistant in computational biology and bioinformatics, focusing on computational tools and algorithms.
Shivansh Saini
<u>*https://www.linkedin.com/in/shivansh-purple-3b6046202/*</u>
<u>*https://shivanshpurple.github.io/Temporary-Portfolio/*</u>
- Bachelor in Computer Science Engineering (Panjab University, Chandigarh, India) having an interest in game development and machine learning;
- Has worked with CIBIOD, India and has experience in Android Development for a wireless stethoscope;
- Actively participated in the Smart India Hackathon 2020 for which my team worked on mapping of telecom cell towers and WiFi hotspots all over India establishing our place among the finalists;
- As a Game Developer, he is experienced in Unity Engine and C# for over 4 years;
- Worked with Flutter and Python for personal projects.
---
REFERENCES
[1] Charlie
https://t.me/Charlie_Cardano_bot
[2] PoolToolBot
<https://t.me/PoolToolBot>
[3] adapools_bot
[4] Cardanoscan Bot
<https://t.me/cardanoscanbot>
[5] The unofficial Telegram tip bot manual
<https://forum.cardano.org/t/the-unofficial-telegram-tip-bot-manual/30743>
[6] ParJar — The how to guide for our Telegram tip wallet
<https://parachutetoken.medium.com/the-definitive-parjar-guide-47496dae8347>
[7] IOTA community releases new tip-bot for Telegram and Discord
<https://www.crypto-news-flash.com/iota-community-releases-new-tip-bot-for-telegram-and-discord/>
[8] A tip bot and Lightning wallet on Telegram
<https://golangrepo.com/repo/LightningTipBot-LightningTipBot>
[9] AlgorandTipBot on Telegram - Send ALGO to any @username
<https://developer.algorand.org/solutions/algorand-tip-bot-on-telegram/>
[10] TikTok is testing a new tipping feature for some creators
<https://www.theverge.com/2021/10/28/22751715/tiktok-new-tips-feature-creators>
[11] Bringing Tips to everyone
https://blog.twitter.com/en_us/topics/product/2021/bringing-tips-to-everyone
[12] CardaBot: A Cardano information bot
<https://t.me/CardaBot>
[13] CardaBot Project
<https://everyblock.studio/projects/cardabot>