Giter Club home page Giter Club logo

old-lunar-assistant-bot's People

Contributors

dritconsulting avatar duarib avatar ilomuoto avatar ruborcalor avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

old-lunar-assistant-bot's Issues

implement best effort for getWalletContents

Instead of all or nothing, we should implement best effort for getWalletContents.

  • in all or nothing mode, if there is an issue with one of the marketplaces then updates wont be possible until it is resolved.
  • in best effort mode, if there is an issue with one of the marketplaces then all info is returned except for that broken marketplace. But this means users might lose roles while the marketplace is down. Ideally roles still get added but not removed to prevent users losing roles due to a broken marketplace.

Improve the approach for checking ownership of an NFT

Currently ownership of an NFT is checked by querying the tokens of a user according to a specific smart contract.

Ideally we would move this validation approach off chain for performance reasons, potentially with the help of the randomearth nft indexer.

Set raw private response to true

Upon community request and vote, the default response when running the lunar-view-roles command should be set to Private

Within lunar-assistant-bot/blob/main/src/commands/lunar-view-roles.ts

Change line 29:
const privateResponse = rawPrivateResponse ? rawPrivateResponse : false;
to
const privateResponse = rawPrivateResponse ? rawPrivateResponse : true;

Change configuration of roles to store Role ID instead of Role Name

Title is pretty much self-explanatory...
If the role name is changed after the configuration has been done, the bot doesn't work anymore...

This doesn't quite make any sense IMHO, as the bots should be agnostic of any human (re)naming action.

Should be an easy fix, but we need to understand what are the ramifications of doing such an update (what happens to the already configured roles everywhere until now).

Support multiple "rules" instead of just checking NFT ownership

Currently the configuration / functionality of Lunar Assistant is relatively limited. Each discord server can just specify a single contract from which to give roles based on the ownership of a single NFT.

Improve this system by using "rules". A server can configure multiple rules, each of which specifies a type of asset, a threshold quantity of that asset, and the role to be given upon a user meeting the threshold.

Recurring job for checking when wallet assets change

Right now a user's nft ownership if verified upon linking a wallet and then never again.

We should set up a process for removing roles from users who sell their nfts, and for adding roles to users that buy nfts.

Two possible approaches

  • check the contents of every discord users wallet every X time interval (maybe everyday)
  • listen to all transactions and check for those where NFTs change hands. make relevant role updates

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.