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

SBT Minter telegram bot #214

Closed
2 tasks
coalus opened this issue Apr 16, 2023 · 27 comments
Closed
2 tasks

SBT Minter telegram bot #214

coalus opened this issue Apr 16, 2023 · 27 comments
Assignees
Labels
Approved This proposal is approved by the committee footstep This is a TON Footstep issue

Comments

@coalus
Copy link
Contributor

coalus commented Apr 16, 2023

Summary

A telegram bot that provides a user-friendly interface to interact with SBT minting to simplify the process of creating SBT awards.

Context

Right now is it a problem for organizers to create NFT awards for various events. They have to turn to third-party developers to solve this problem. Our task is to make solution, that will automates process of minting new SBT-awards!

Goals

We need to create a telegram bot, with such flows:

New collection flow:

  • Bot asks user to upload the cover image
  • Bot asks user to upload the collection image
  • Bot asks user to enter the collection name
  • Bot asks user to enter the collection description
  • Bot asks user to enter the item name (it will be the same for all items + #index)
  • Bot asks user to enter the item description
  • Bot asks user to upload the item image (image property in NFT metadata)
  • Bot asks user to upload a file containing addresses (separated by newlines) that should receive NFTs
  • Bot uploads images to storage, creates collection and item manifests and uploads them, then creates a ton:// link that send necessary amount of TON to wallet of the telegram bot. Upon receipt of funds the wallet begins to mint SBT items

Existing collection flow:

  • Bot asks user to enter the existing collection address
  • Bot checks if the collection exists and is compatible with the bot
  • Bot shows how the previous batch of items was minted (name, description, image), asks the user if the items should stay the same
  • If not, bot asks the user to enter new item name, new item description, and new item image
  • Bot asks user to upload a file containing addresses (separated by newlines) that should receive NFTs
  • Bot uploads item image to storage (if it was changed), creates item manifest (if any item properties were changed) and uploads it, then creates a ton:// link that will send necessary amount of TON to the wallet of the telegram bot. Which, in turn, begins to mint new items.

Superadmin flow:

  • /add - add new admin, that will be able to use bot
  • /list - see all admins of the bot
  • /delete - delete an admin by his ID

Use s3 as file storage(that will be paid by TON Foundation)

Deliverables

  • Create well-working SBT Minter telegram bot

Definition of Done

  • Hosted & tested telegram bot
  • Code reviewed and hosted on github

Oriental Release Date

3 weeks from start of the development

Reward

  • Standart TON Footstep SBT
  • 2000$ in TON

Total: $2000

@coalus coalus added the footstep This is a TON Footstep issue label Apr 16, 2023
@coalus
Copy link
Contributor Author

coalus commented Apr 16, 2023

Ready to work on this footstep with @krau5

@krau5
Copy link
Contributor

krau5 commented Apr 16, 2023

Positive

@SwiftAdviser
Copy link
Contributor

LGTM! Let's start!

@Gusarich
Copy link
Collaborator

What do you think about creating web-interface instead of a Telegram bot?
@coalus @krau5

Also, 2500 is a bit too much for a bot IMO

@coalus
Copy link
Contributor Author

coalus commented Apr 17, 2023

@Gusarich, we have already started development of the telegram bot =( As an option let's consider if we will add an additional client part in the form of a web application(in addition to the bot)

@SwiftAdviser
Copy link
Contributor

Initially, it was a request from the TF team to TON Tech. In our case, we are focusing on the bot as a quick solution for the minting problem.

It could be possible to create a web interface. However, there is no request from the DevRel team to do that today.

@Gusarich
Copy link
Collaborator

Okay, then let's approve it!
Hoping to see a web interface in future too.

@Gusarich Gusarich added the Approved This proposal is approved by the committee label Apr 17, 2023
@coalus
Copy link
Contributor Author

coalus commented Apr 17, 2023

Change amount of the reward to 2000$.

@delovoyhomie
Copy link
Collaborator

Good luck!
Don't forget to write here sometimes about your current progress.
@krau5 @coalus

@Naltox
Copy link

Naltox commented Apr 17, 2023

LGTM!

@ProgramCrafter
Copy link
Contributor

I request bot code to be published under MIT license so that others could freely adapt it for their own needs.

@tvorogme
Copy link
Contributor

Use s3 as file storage(that will be paid by TON Foundation)

Why not ton-storage?

@coalus
Copy link
Contributor Author

coalus commented Apr 18, 2023

Use s3 as file storage(that will be paid by TON Foundation)

Why not ton-storage?

Good idea! I think we can use ton storage, instead of s3, but it will took a bit more time to integrate ton storage, if would compare it to s3.

@Gusarich
Copy link
Collaborator

Gusarich commented Apr 18, 2023

Why not ton-storage?

@tvorogme do you know any good tools to work with it? ;)
I don't see any "marketplaces" for storage providers.. and no automated tools to safely use ton storage.

@coalus
Copy link
Contributor Author

coalus commented Apr 18, 2023

Why not ton-storage?

@tvorogme do you know any good tools to work with it? ;)
I don't see any "marketplaces" for storage providers.. and no automated tools to safely use ton storage.

There are already library to communicate with ton storage from js, so it's not a big problem to use it

@Gusarich
Copy link
Collaborator

There are already library to communicate with ton storage from js, so it's not a big problem to use it

But you need to communicate with several providers.. and move files to new ones in case if some of them go offline

@tvorogme
Copy link
Contributor

But you need to communicate with several providers.. and move files to new ones in case if some of them go offline

I think it's not problem if all files will be stored in TF supported servers

@coalus
Copy link
Contributor Author

coalus commented Apr 18, 2023

There are already library to communicate with ton storage from js, so it's not a big problem to use it

But you need to communicate with several providers.. and move files to new ones in case if some of them go offline

Why do we need several providers in our case? We can just launch 1 our provider and store files in it. (we already have 1 running provider, so it's not a problem at all)

@Gusarich
Copy link
Collaborator

I think I misunderstood the way you suggested to use the TON Storage.
If the storage provider will be held by TF, it'll be ok.

@coalus
Copy link
Contributor Author

coalus commented Apr 18, 2023

After talking with @SwiftAdviser , we came to the conclusion that it is better to choose s3 at the moment

@delovoyhomie
Copy link
Collaborator

@coalus, @krau5, how are footstep going?
What public repository is the work being done in so that I can track its progress?

@coalus
Copy link
Contributor Author

coalus commented Apr 28, 2023

Hey!!! Work is going on, we will finish asap, repo is private rn, will be opened by the end of the footstep

@coalus
Copy link
Contributor Author

coalus commented Jun 4, 2023

@delovoyhomie, i think this footstep is done

Wallets for the reward:
1500$ to EQBaqiI32L58oXzsDYDE2shnjYd0vCtY36J7TmuGiFIWA6xn
500$ to EQBqDnstKfW_YP0YN6kt3uMzSwH1FT_UM7cFyhuw6my3c8mX

@delovoyhomie
Copy link
Collaborator

@coalus, @krau5, please write your names for the Hall of Fame.

@coalus
Copy link
Contributor Author

coalus commented Jun 4, 2023

Same as our nicknames: Coalus, krau5

@delovoyhomie
Copy link
Collaborator

Rewards sent! Thank you for the contribution.

@delovoyhomie
Copy link
Collaborator

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Approved This proposal is approved by the committee footstep This is a TON Footstep issue
Projects
None yet
Development

No branches or pull requests

8 participants