GEBB

0

Описание

Телеграм бот для организации мероприятий.

Языки

  • C#99%
  • Shell1%
README.md

Overview

Сервис GEBB предназначен для планирования и организации посещения мероприятий, автоматизации процесса поиска спутников, регистрации пользователей в группы и обмена контактами между зарегистрированными на мероприятие участниками. Сервис не предполагает выбор конкретных участников события или отправку приглашений выбранным пользователям. Рассылка приглашений отправляется всем участникам программы, а регистрация производится в “естественном порядке” (кто раньше подтвердил участие). Таким образом сервис предназначен для использования внутри групп знакомых между собой пользователей, либо связанных между собой какими-либо другими факторами (например внутри одной организации, как средство повышения корпоративной культуры). Сервис не имеет пользовательского интерфейса, взаимодействие производится через обмен сообщениями с ботом в приложении Telegram.


The GEBB service is designed to plan and organise participation in events, automate the process of searching for satellites, register users in groups and exchange contacts between participants registered for the event. The service does not include selection of specific event participants or sending invitations to selected users. Invitations are sent to all participants in the programme and registration takes place in "natural order" (those who have previously confirmed their participation). Thus, the service is intended for use within groups of users who know each other or are connected by some other factors (e.g. within the same organisation as a means of enhancing corporate culture). The service does not have a user interface, the interaction takes place through messaging with a bot in the Telegram application.

Getting started

Prerequisites

  • Для сборки проекта необходимо иметь установленную
    .NET SDK 9.0

  • To build the project, you must have the
    .NET SDK 9.0
    installed.

Download SDK

  • Установите утилиту
    xmlstarlet

  • Install the
    xmlstarlet
    utility

Debian/Ubuntu

Installation

  • Клонируйте репозиторий.

  • Clone the repo.
  • В скрипте ниже измените
    path_to_output_dir
    на путь к существующей директории. Данный скрипт выполняет полную сборку со всеми зависимостями под операционную систему
    linux-x64

  • In the script below, replace
    path_to_output_dir
    with the path to an existing directory. This script performs a complete build with all dependencies for the Linux x64 operating system.

Для дальнейшего запуска сборки dotnet SDK или Runtime не нужен


You do not need the .NET SDK or Runtime to running the build.

Usage

Настройка файла запуска start.sh / Configuring the runnable script start.sh

  • Укажите токен своего бота в переменной
    BOT_TOKEN
  • Укажите желаемый уровень логирования в переменной
    LOG_LEVEL

  • Enter the token for your bot in the
    BOT_TOKEN
    variable.
  • Enter the desired minimum logging level in the
    LOG_LEVEL
    variable.
  • Сделайте файл
    start.sh
    исполняемым.

  • Make the
    start.sh
    file executable.

Запуск / Launch

Запустите файл

start.sh


Launch the

start.sh
file

Update

При выпуске новых версий бота так же может поменяться схема базы данных. Например, может быть добавлена новая таблица. При обновлении с более ранних версий, когда база данных не может быть развернута с нуля - необходимо обновить базу данных до актуальной структуры. Скрипты для обновления базы данных можно найти в папке

DatabaseUpdate
репозитория. Имя файла повторяет версию программы, на которой произошли изменения в БД. Что бы обновить структуру базы данных до требуемой версии - нужно запустить поочередно в порядке возрастания все скрипты, версия которых выше вашей текущей версии программы.


When new versions of the bot are released, the database structure may also change. For example, a new table may be added. When updating the program from earlier versions, when the database cannot be deployed from scratch, it is necessary to update the database to the current structure. Scripts for updating the database can be found in the "DatabaseUpdate` folder of the repository. The file name repeats the version of the program on which the changes occurred in the database. To update the database structure to the required version, you need to run all the scripts in ascending order., the version of which is higher than your current version of the program.


Troubleshooting

...

Changelog

Can be found in CHANGELOG.

Authors

Code of Conduct

Please, follow Code of Conduct page.

License

This project is Apache License 2.0 - see the LICENSE file for details