Giter VIP home page Giter VIP logo

registration_desk's Introduction

registration_desk

Discord bot to help out at registration desk of a conference

Roles will be given to successful registration:

  • speaker and attendee if it's a speaker ticket to the conference
  • attendee if it's a non-speaker ticket to the conference
  • sprinter if it's a sprint ticket

Ticket checking logic

The users' name and ticket will be check against the data in the CSV file. The check will fail if:

  1. The user's full name is the same as someone's name in the channel (name has been registered before)

  2. There is no match, matching of name is case insensitive.

Set up environment variables

The bot need certain environment variables for it to work:

  • REG_BOT_SECRET - secret fo the bot, provided by Discord
  • REG_CHANNEL_ID - id of the channel that is used for resignation, the channel that you want the bot to listen to. (It only listens to this channel if ONLY_RESPOND_REG is True)
  • LOG_CHANNEL_ID - (OPTIONAL) id of the channel that is used for logging (if it is not set, it will not be sending the log to any channels)
  • DATA_PATH - path to the data CSV (see below for the format explanation)
  • ONLY_RESPOND_REG - (OPTIONAL) if True bot only response to the registration channel, default is False

If no SPEAKER_CHANNEL_ID is set, the welcome message will be display on registration channel. Same apply to ATTENDEE_CHANNEL_ID.

Getting a channel id

  1. Go to user setting in Discord App
  2. Go to Appearance
  3. Scroll down and check the Developer mode in the Advance session
  4. Go back to the server and right click on the channel
  5. Select Copy ID, now the id is in your clip board

Data CSV

The format of the CSV needs to satisfy the format of:

name, email, is_speaker, ticket_class, ticket_id, other cols...

for each row.

For example:

Testing, [email protected], no, conference, 11111, TRSP

Any change of the data CSV will be reflected live in the bot.

Log file

Log file is saved at .log/reg.log

registration_desk's People

Contributors

cheukting avatar fpierfed avatar bultako avatar gilgamezh avatar

Watchers

James Cloos avatar

Forkers

athanaseus

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.