• Что такое Docker простыми словами?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Что такое Docker простыми словами

    простыми словами

    Если совсем прям простыми, то - это некая легковесная оболочка, которая способна изолировать приложение внутри себя от внешнего мира. Очень похож (по логике) на системы виртуализации VMware, VirtualBox, Parallels итп, но сам не является им.

    Возможности:

    - Контейнеризация: Docker позволяет паковать приложения вместе со всеми их зависимостями в контейнеры, обеспечивая тем самым их независимость от конкретной инфраструктуры.
    - Переносимость: Контейнеры Docker могут быть запущены на любом компьютере, который поддерживает Docker, независимо от операционной системы. Это делает распространение и развертывание приложений намного проще.
    - Изоляция ресурсов: Каждый контейнер Docker работает в изолированной среде и не влияет на другие контейнеры или хостовую систему.
    - Слоистая файловая система: Docker использует слоистую файловую систему для хранения данных, что позволяет существенно экономить дисковое пространство и упрощает обновление и распространение контейнеров.
    - Сетевые возможности: Docker позволяет настраивать сетевые параметры каждого контейнера, что позволяет создавать сложные многокомпонентные приложения.
    - Docker Hub: Docker Hub – это репозиторий, где можно хранить и делиться контейнерами. Это облегчает развертывание и распространение приложений.
    - Docker Compose: Это инструмент для определения и запуска многоконтейнерных - Docker-приложений. С помощью Compose вы можете использовать файл YAML для конфигурации служб вашего приложения, а затем с помощью одной команды создать и запустить все службы.
    - Docker Swarm: Docker Swarm предоставляет нативные возможности Docker для оркестрации и масштабирования кластера Docker.
    Ответ написан
    Комментировать
  • Какой плагин который показывает, что принимает функция?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    Плагин не нужен. Это функционал из коробки. В настройках в строке поиска пишем inlay hint и включаем что надо.
    Ответ написан
    8 комментариев
  • Как отправлять сообщение пользователю подавшему заявку на вступление в группу?

    @Xproz
    Пытаюсь постигнуть компьютерные сети
    1) Для начала конфигурируем бота в BotFather и даем ему возможность читать сообщения в каналах:
    Выбираем в BotFather нужного бота затем Bot Settings -> Group Privacy.
    Ура, теперь бот может читать сообщения!

    2) Добавляем его в канал, и он по умолчанию добавляется администратором, если же нет, то сами делаем его администратором.

    3) Добавляем пригласительную ссылку с заявкой в канал:
    Управление канала -> Пригласительные ссылки -> Создать новую ссылку (и не забываем поставить галочку возле "Заявка на вступление")

    4) Вот простой код, как это может быть реализовано через pyTelegramBotApi на Python (кроме него ничего, к сожалению, не знаю, но принцип такой):

    import telebot
    
    TOKEN = 'Токен'
    bot = telebot.TeleBot(TOKEN)
    
    @bot.chat_join_request_handler()
    def lalala(message: telebot.types.ChatJoinRequest):
    	bot.send_message(message.from_user.id, "Hello, my friend!")	 
           #отправляем пользователю сообщение от имени бота
    bot.infinity_polling(allowed_updates = telebot.util.update_types)


    Однако стоит заметить, что бот напишет в том случае, если пользователь отправит заявку, хотя пользователь не отправлял /start
    Возможно стоит посмотреть API types у телеграмных ботов здесь: https://core.telegram.org/bots/api#update
    Ответ написан
    4 комментария
  • Какой язык програмирования учить после JavaScript?

    Serhioromano
    @Serhioromano
    Web Developer
    Странно это звучит. Программирую давно и какой язык учить. Анализируюя сам впорос, могу сказть что не важно что вы думаете о стаже своего программирования, на ява скрипт вы программируете не достаточно долго.

    Потому что если бы это было, так, такого вопроса не возникло бы. Было бы понятно, что зная яваскрип, сегодня вы можете програмировать мобильные приложения, настольные, веб сайты, ... И было бы понятно, что это будующее программирования на следующее десятилетие. И что лучшее решение это углубится в новые технологии программирования как node.js, angular.js, win.js, ... и сотни других.
    Ответ написан
    Комментировать
  • Перестал работать бот после обновления DS, почему?

    Syjalo
    @Syjalo
    Представьте себе бота
    3 недели назад Discord анонсировали изменение API, которое затронуло исходный код discord.js. Вчера было выпущено в публичный API. Обновитесь до последней версии.

    v14: npm i discord.js@latest
    v13: npm i discord.js@v13-lts
    Ответ написан
    1 комментарий
  • Как получить ид пользователя по его упоминанию?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    В Bot API невомзожно получить id пользователя по его имени. Возможно только через получение события, с этим пользователем связанное (например, пользователь написал сообщение, пользователь вступил в группу где есть бот, итд). В полученной информации будет и id пользователя, и его username (только если он у пользователя есть).

    Это можно обойти использованием клиентского API (библиотеки telethon, pyrogram). Но этот API выполняет запросы от реального пользователя Telegram, поэтому если злоупотреблять запросами, можно получить бан не бота, а прям своего живого аккаунта.

    От себя рекомендую этой фигнёй не страдать, у Bot API есть свои понятные сценарии работы, и в рамках них id пользователя можно получить вполне легально именно тогда, когда это имеет смысл в рамках функциональности бота.
    Ответ написан
    Комментировать
  • Что случилось со сценами telegraf?

    MagnusDidNotBetray
    @MagnusDidNotBetray
    Самый елеустремленный человек
    //index.js
    
    const { Telegraf, Markup, Scenes, session } = require('telegraf');
    const firstScene = require('./controllers/first');
    const secondScene = require('./controllers/second');
    
    const bot = new Telegraf(token, {});
    const stage = new Scenes.Stage([
       firstScene,
       secondScene
    ]);
    
    bot.use(stage.middleware());
    
    // controllers/first/index.js
    
    const { Scenes } = require('telegraf');
    
    const first = new Scenes.BaseScene('first');
    
    first.enter(async ctx => {});
    
    module.exports = first;
    Ответ написан
    1 комментарий
  • Не работает самый простой код discord.js, как починить?

    @Azperin
    Дилетант
    А версия какая ? Сейчас зашел в доки - ивент message в деприкейте, попробуй messageCreate

    https://discord.js.org/#/docs/discord.js/stable/cl...
    Ответ написан
    Комментировать
  • Как удалить символы в строке?

    @kttotto
    пофиг на чем писать
    Потому что replace заменяет только первое вхождение. Если необходимо удалить все вхождения, то нужно использовать регулярные выражения.
    text = text.replace(/,/g, '');
    Ответ написан
    3 комментария
  • Как отправить личное сообщение пользователю в discord зная id с помощью get запроса?

    fenrir1121
    @fenrir1121
    Начни с документации
    Стоит задача сделать бота
    На фриланс, пожалуйста.
    К нам со своей попыткой решения задачи.
    Ответ написан
    2 комментария
  • Как отправлять одно сообщение а не несколько?

    Vindicar
    @Vindicar
    RTFM!
    Голову включить, для начала.
    Как по-твоему, какой вызов выполняет отправку сообщения? Правильно, interaction.send().
    Этот вызов у тебя в цикле for member in guild.humans, поэтому для каждого участника сервера будет вызвано interaction.send(), а значит, отправлено отдельное сообщение.
    Значит, если хочешь отправлять сведения однажды - вынеси вызов из цикла.
    А чтобы не потерять данные, которые ты в цикле собираешь - помещай их в список.
    После цикла собери этот список в строку через join(), и отправь эту строку одним вызовом send().
    Ответ написан
    3 комментария
  • Почему бот думает что уже ответил?

    Syjalo
    @Syjalo
    Представьте себе бота
    Возможно был ответ await interaction.deferReply() в обработчике команд. Других вариантов не вижу.
    Ответ написан
    Комментировать
  • Самый простой способ проверить валидность даты?

    azrail_dev
    @azrail_dev
    Прочитать для начала javascript.ru/Date, потом всё должно стать понятно
    Ответ написан
    3 комментария
  • Как посмотреть что внутри объекта JS?

    @petelinmn
    Программист
    for(var key in this)
    console.log(key + ": " + this[key]);
    Ответ написан
    Комментировать
  • Почему выдает ошибку?

    lastuniverse
    @lastuniverse
    Всегда вокруг да около IT тем
    прочтите внимательно код ошибки и свой код

    Ошибка: (node:25288) UnhandledPromiseRejectionWarning: TypeError:  db.get is not a function

    переводится как: .... db.get не является функцией

    Смотрим дальше:
    let db = require('sqlite') // для примера использую простой в использовании пакет БД "quick.db"

    странно, но пишите про quick.db а подключаете sqlite
    но возможно я не прав и так и должно быть (никогда не использовал ни то ни другое)?

    Смотрю использование sqlite и вижу что инициализация модуля и создание коннекта к ДБ делаются совсем иначе.

    Смотрю quick.db и вижу в примерах так нужные вам db.get() и db.set()

    Вопрос решен!!!

    Ну и напоследок. Либо вы очень устали и стали невнимательны, либо вам нужно срочно приучить себя вчитываться в текст ошибок, и пытаться понять о чем идет речь, а так же подтягивать знание JS, чтобы такие вот ошибки TypeError: db.get is not a function моментально направляли ваши мысли в нужное русло

    const db = require('quick.db');
    Ответ написан
    2 комментария
  • Как вписать в дискорд бота команду по выдаче роли с удалением предыдущих ролей?

    Vindicar
    @Vindicar
    RTFM!
    Храни в БД сведения о наказанных пользователях + timestamp окончания срока наказания, и в отдельной таблице - о ролях, которые у них были забраны.
    Ответ написан
    Комментировать
  • Сумма - % или Сумма + % = Число. Как правильно записать?

    @altkov
    Наймите фрилансера. Вы не сможете все это разработать.
    Ответ написан
    2 комментария
  • Как хранить и изменять данные пользователей discord js?

    MaxLevs
    @MaxLevs
    Вопрос о хранении данных на компьютере - это вопрос не по Discord, а по api Node.js или его библиотекам.
    Данные тебе нужно хранить в постоянной памяти.
    Для этого ты можешь например, сохранять объекты javascript в json и записывать его как файл в какой-нибудь папке (fs). Или, например, использовать для этого базы данных.

    Получение информации о пользователях в discord - тоже отдельный вопрос.
    В discord.js есть класс GuildMember. В нем вся информация об участнике конкретного сервера.

    Для отправки сообщения нужно знать, в какой чат ты его посылаешь.
    Ответ написан
    Комментировать
  • Как поместить сообщение в cache?

    Alexandre888
    @Alexandre888 Куратор тега discord.js
    Javascript-разработчик
    const client = new Client(
        { 
            intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES, Intents.FLAGS.GUILD_MESSAGE_REACTIONS],
            partials: ['MESSAGE', 'CHANNEL', 'REACTION'],
        }
    );
    
    // . . . //
    
    client.on("messageReactionAdd", async (reaction, user) => {
        if (reaction.partial) {
            try {
                let fullReactionMessage = await reaction.fetch();
    
                // далее работайте только с fullReactionMessage
            } catch (error) {
                console.error('Получить сообщение не удалось:', error);
                return;
            }
        } else {
            // ... //
        }
    })
    Ответ написан
    9 комментариев