This bot is designed to streamline the process of new user registration by collecting only essential information: Name and ChatId. It facilitates sending a list of questions from a Google Sheet on a scheduled basis and saves the responses back to another Google Sheet.
This project is a bot integrated with Google Sheets. It uses the Google Sheets API to read and write data to a Google Sheets table.
-
Create a bot project in Telegram:
- Open Telegram and search for BotFather.
- Use the command
/newbot
, follow the instructions to create a new bot and get a bot token.
-
Register a Service Account:
- Go to Google Cloud Console.
- Create a new project or select an existing one.
- Go to the “IAM and Administration” tab -> “Service accounts”.
- Create a new service account and download the JSON file with credentials (
client-secrets.json
). This file contains the credentials that your application will use to authenticate itself when working with the Google Sheets API.
-
Install the project:
- Clone the project from the repository.
- Create a
.env
file in the project root and add the necessary environment variables to it, for example: File Worker.cs
var botClient = new TelegramBotClient("YOUR_TELEGRAM_BOT_TOKEN");
File GoogleSheetIntergration.cs.
static readonly string SpreadsheetId = "YOUR_SHREADSHEET_ID;
- Replace the token in the code with your Telegram token:
TELEGRAM_BOT_TOKEN
.
-
Replace
SpreadsheetId
:- Replace
SpreadsheetId
in theGoogleSheetIntegration
class with the ID of your Google Sheets spreadsheet. This will allow the bot to read and write data to this table.
- Replace
- Make sure you have the .NET Core SDK installed.
- Open the project in your IDE (such as Visual Studio or Visual Studio Code).
- Run the project.
- The bot will be ready to use in your Telegram account.
Please note that using the API and storing security tokens requires caution. Do not store them in the public domain or transfer them to third parties.
Бот предназначен для упрощения процесса отправки чек листов, собирая только необходимую информацию: имя и ChatId. Отправляет список вопросов из Google Sheet по расписанию и сохраняет ответы обратно в Google Sheet.
Этот проект представляет собой бота, интегрированного с Google Sheets. Он использует Google Sheets API для чтения и записи данных в таблицу Google Sheets.
-
Создайте проект бота в Telegram:
- Откройте Telegram и найдите BotFather.
- Используйте команду
/newbot
, следуйте инструкциям для создания нового бота и получите токен бота.
-
Зарегистрируйте Service Account:
- Перейдите в Google Cloud Console.
- Создайте новый проект или выберите существующий.
- Перейдите во вкладку "IAM и администрирование" -> "Service accounts".
- Создайте новый сервисный аккаунт и скачайте JSON-файл с учетными данными (
client-secrets.json
). Этот файл содержит учетные данные, которые ваше приложение будет использовать для аутентификации при работе с Google Sheets API.
-
Установите проект:
- Клонируйте проект с репозитория.
- Создайте файл
.env
в корне проекта и добавьте в него необходимые переменные окружения, например: Файл Worker.cs
var botClient = new TelegramBotClient("YOUR_TELEGRAM_BOT_TOKEN");
Файл GoogleSheetIntergration.cs
static readonly string SpreadsheetId = "YOUR_SHREADSHEET_ID;
- Замените токен в коде на ваш токен Telegram:
TELEGRAM_BOT_TOKEN
.
-
Замените
SpreadsheetId
:- Замените
SpreadsheetId
в классеGoogleSheetIntegration
на ID вашей таблицы Google Sheets. Это позволит боту читать и записывать данные в эту таблицу.
- Замените
- Убедитесь, что у вас установлен .NET Core SDK.
- Откройте проект в вашей IDE (например, Visual Studio или Visual Studio Code).
- Запустите проект.
- Бот будет готов к использованию в вашем Telegram аккаунте.
Пожалуйста, обратите внимание, что использование API и хранение токенов безопасности требует осторожности. Не храните их в открытом доступе и не передавайте третьим лицам.
Contributions to enhance the functionality or efficiency of this code are welcome. Please submit a pull request for review.
MIT
For support, please open an issue in the GitHub repository or contact the repository owner directly.
This code is provided as-is with no warranty. Users should ensure they have the proper permissions to interact with Google Sheets API and handle user data responsibly.