Задать вопрос
  • Получаю ссылку от телеграма, скачиваю файл и получаю размеры 20x20 - 100x100?

    shurshur
    @shurshur
    Nemo Dev, вот только что я отправил себе один и тот же файл как фотографию и как файл. В боте при этом вернулось: https://pastebin.com/h5HKGggK

    В первом случае вернулось три разных размера (один из которых совсем мизерный).

    Во втором случае вернулось две одинаковых превьюшки в теге thumbnail и thumb, а также оригинальный непожатый вариант файла.

    Файл, который я загружал, имеет размер 41154 и разрешение 257x340.

    Скорее всего, вот то что на скриншоте - это аналог первого случая и первый вариант из ответа микроразмерного разрешения для малюсенькой превьюшки.
    Написано
  • Как генерируется токен?

    shurshur
    @shurshur
    0x80070005, токен мог быть получен при первом вызове приложения и положен в local storage, а следующие попытки запуска приложения просто забирают его из local storage и сервер не опрашивают.

    Естественно, его могут обфусцировать, чтобы было непросто найти.
    Написано
  • Как запретить боту отвечать определенному ID?

    shurshur
    @shurshur
    semenovmst, гораздо лучше и надёжнее по chat.type=="private" проверять, чтобы в группах бот не реагировал.
    Написано
  • Получаю ссылку от телеграма, скачиваю файл и получаю размеры 20x20 - 100x100?

    shurshur
    @shurshur
    Если пользователь загружал фотографию "как фото", а не "как файл", то Телеграм его пережимает.

    Также в ответе метода getFile может вернуться несколько разных размеров, можно из них выбрать наилучший. Сейчас, возможгл, выбирается превьюшка.
    Написано
  • Пртем смс с тысячи сим карт не по цене крыла самолета?

    shurshur
    @shurshur
    Также надо учесть, что операторы очень активно находят такие колхозы симкарт в одном месте и банят.

    Рекомендую попросту отказаться от той деструктивной задачи, для которой захотелось тысячу сим-карт и найти себе другое занятие.
    Написано
  • Стоит ли делать отдельный микросервис для Баз данных?

    shurshur
    @shurshur
    Сервис должен быть не "для базы данных", а реализовавать какую-то функциональную бизнес-логику. А при такой постановке вопроса всё выглядит так, будто бы решили сделать сервис для хитровывернутого выполнения SQL-запросов.
    Написано
  • Как сохранить нули после запятой в типе float64?

    shurshur
    @shurshur
    bbquite, так и не надо использовать как строку. Для float 123 и 123.00 это одно и то же. Для денег float плох ещё из-за неточности его математики, что приводит к казусам типа https://0.30000000000000004.com/
    Написано
  • Альтернативы wireguard?

    shurshur
    @shurshur
    wg никто никогда не считал неопределяемым. У него киллер-фича в другом: простая имплементация в ядре без юзерспейса и шифры, которые эффективно работают практически везде. Как стал протокол часто применяться - научились определять.
    Написано
  • Изучение vue без хорошего знания JS?

    shurshur
    @shurshur
    setupx, для фронта js в любом случае надо знать на уровне заметно выше "вот похожие на %мой_любимый_язык% конструкции".
    Написано
  • Что выбрать: sqlite или redis?

    shurshur
    @shurshur
    Zettabyte, redis - изначально тот же memcached (kv-хранилище) с его же интерфейсом, который хранил копию данных в памяти также и на диске. Но вроде с тех пор умеет всякие очереди, кластерность итд. Я его кроме как замены memcached сто лет назад и то в тестовых целях не пользовал, так что не знаю.

    Конечные автоматы тут это просто про то, что для упрощения разработки не программист куда-то у себя в боте складирует, какой user_id в каком состоянии, а библиотека это делает сама, вызывая разные обработчики в зависимости от предыстории обмена сообщениями с пользоватлем. Это хорошо, когда делаешь пошаговые взаимодействия (например, когда надо задать серию вопросов и выдать результат обработки), и довольно плохо, когда надо хранить персистентно информацию о пользователе, потому что все данные являются свойствами текущего состояния, а не пользователя (например, бот знакомств в начале регистрации в сервисе спрашивает у пользователя его город/возраст/предпочтения). Но это можно совмещать (например, с помощью FSM зададим серию вопросов, а итог запишем уже в свою базу).

    Формально это действительно конечный автомат (граф состояний, между которыми перемещается пользователь в процессе взаимодействия), но с практической точки зрения это то же самое, что можно было бы написать на if-then-else и глобальном словаре с id пользователя с id в качестве ключа. Просто так разрабатывать сильно неудобно. FSM намного удобнее даже для тривиальных взаимодействий, позволяя делать короткие функции, обслуживающие отдельные шаги.

    Что касается сохранения данных, то aiogram позволяет в качестве хранилища состояний использовать не только Memory storage, но и файл на диске либо базу данных.
    Написано
  • Как определить, что пользователь использует официальную версию клиента программы?

    shurshur
    @shurshur
    Вряд ли можно с помощью одного вопроса на тостере написать античит :)
    Написано
  • Как создать свой мессенджер на основе открытого кода telegram или signal?

    shurshur
    @shurshur
    Darii29, нет, не обгонит уже хотя бы потому, что светит номер телефона и катастрофически уступает в области соцсетевых фич.
    Написано
  • Почему перестал работать программный запуск звонка?

    shurshur
    @shurshur
    ArcheRAWG, звонок с телефона производится без участия провайдера, поэтому это не показатель.
    Написано
  • Есть ли программа которая уведомляет о потовом скачивании файлов с сервера?

    shurshur
    @shurshur
    Роберт Емельянов, для того чтобы давать советы, нужно знать много о специфике данных, частоте их обновления, объёмах итд итп. Если там данные такие, что после первого слива контора может закрыаться то это одно, а если данные устаревают черех 3 часа - другое. В вопросе совершенно непонятен уровень угроз итд итп.

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

    В любом случае, когда данные критичны, то их не хранят в единственной шаре, доступной всем сотрудникам. И для защиты применяют сурьёзные методы.

    Просто пример сурьёзного решения, из числа таких, что могут применяться в какой-нить банковской сфере. Для доступа к данным надо поднять VPN до некоторого сервера. Через него доступ по RDP на сервер, на котором нужно поднять ещё один VPN и с него ещё один RDP. На обоих серверах скриншотятся все действия. Прямого сетевого доступа нет. Максимум - можно скриншотить самому картинки, но много не наскриншотишь. Ещё и можно данные отдавать через специальные интерфейсы, которые логгируют обращения, а также маскируют то, что не нужно соответствующему сотруднику.

    Например, специалисту первой линии поддержки может быть не нужно знать суммы платежей (по крайней мере точные), только проверять что они обработаны или что пользователю ушло уведомление по почте/смс. Можно не показывать номер телефона или номер паспорта. Курьеру сумму заказа и его содержание знать не нужно, ему нужен только номер, число упаковок и адрес куда доставить. Итд итп.

    Именно так и защищают данные.

    Вообще, вопросы такого характера обычно появляются не тогда, когда есть какая-то внятная политика защиты данных, а когда случился какой-нить внутренний скандал и надо срочно изобразить деятельность, в которой бы скандал был якобы преодолён. Проблема в том, что обычно скандал второй раз не возникает никогда, а случается что-нибудь совсем другое. Или через столько лет, что все уже всё забыли и на любые политики безопасности все уже снова наплевали.
    Написано
  • Есть ли программа которая уведомляет о потовом скачивании файлов с сервера?

    shurshur
    @shurshur
    Эту защиту легко обойти, достаточно просто скачивать файлы с такой интенсивностью, какую проявляет вяло перебирающий файлики человек.

    Тем более что специфика неясна. Если там 500 файлов, то их можно просто по 50 штук в день за две недели слить. Автоматизироанно идентифицировать это как злонамеренное действие - не такая уж и тривиальная проблема.
    Написано
  • Почему перестал работать программный запуск звонка?

    shurshur
    @shurshur
    Если не может соединиться с провайдером - то надо решать это с провайдером. Вдруг у них что-то сломалось?
    Написано
  • Как улучшить @bot.edited_message_handler?

    shurshur
    @shurshur
    Progrimer, если в событии не прилетает достаточно информации, то, скорее всего, придётся где-то запоминать предыдущий тип контента каждого сообщения. Чтобы точно знать, какой он был и на что он изменился.
    Написано
  • Почему экран отключается на 1 секунду на MacBook?

    shurshur
    @shurshur
    Может быть и дохнущий БП монитора. Помню, был один монитор, которому немного продлили жизнь, прикладывая к БП поролоновую губку, намоченную холодной водой.
    Написано
  • Разграничение файлов пользователей в s3 хранилищах?

    shurshur
    @shurshur
    Если пользователям не даётся доступ напрямую в s3, а вместо этого доступом к файлам управляет собственный сервис, то можно все вопросы с доступом решать на уровне своего сервиса.

    При этом можно не прокачивать сами файлы через этот сервис, если использовать presigned url с ограниченным сроком действия.

    Но как уже написали в ответах, покупка готового s3-сервиса может быть дорогим решением, дешевле поднять свой s3 на базе minio, ceph или других решений. Но придётся потрудиться с его настройкой и сопровождением.
    Написано