«Telegram» ID: зачем он нужен, и как его узнать
Популярное приложение «Телеграмм» предоставляет пользователям множество функциональных инструментов для общения, развлечений, а также ведения бизнеса. Его основными опциями являются обмен сообщениями и файлами, создание чатов, возможность ведения секретной переписки. Кроме основного функционала, в «Телеграмме» существует огромное количество ботов, полезных и развлекающих. Их может создавать под свои нужды каждый желающий пользователь мессенджера.

Узнать Telegram ID можно с помощью специального бота.
Что такое ID и зачем он нужен
«Телеграмм» использует протоколы для социальных сетей, где личные аккаунты и сообщества (чаты, каналы) распознаются при помощи специального численного идентификатора. Уникальный ID (айди) необходим системе для точной идентификации пользователя. Даже программы внутри мессенджера используют набор определённых чисел для удобства использования сервиса. Благодаря уникальному номеру, который присваивается при создании страницы, система видит, какие данные пользователя, какую переписку отображать. Обмен данными начинается сразу же после идентификации профиля, то есть при входе в аккаунт путём ввода логина и пароля.
Когда вы создаёте группу, неважно, приватную или публичную, также генерируется ИД, он нужен для доступа к ней. Информация об идентификаторе может вам понадобиться для настройки и корректной работы бота, связывающегося с пользователями и чатами. Чтобы отправить сообщение через «Telegram» API, боту понадобится ID чата, в который он будет писать.
ВАЖНО. Если вы захотите привязать робота для отправки уведомлений к собственному профилю, можете воспользоваться способом getUpdates. Определить по ID аккаунт пользователя перед вами или группа несложно по символу перед числовым кодом, ID чата начинается со знака минус («-»).
Как узнать «Telegram» ID
Основной функционал мессенджера не позволяет узнавать идентификатор чата или свой, разработчиками не предусмотрена эта опция. В ранних версиях «Телеграмма» можно было разглядеть идентификатор в пригласительной ссылке сообщества, посмотреть айди создателя группы, а также пользователя, сделавшего любую запись в чате. Сейчас разработчики убрали данную оплошность, ведь мессенджер позиционирует себя как наиболее безопасный, а освещение настолько личной информации, которую бы узнавал каждый, кто захотел, не приветствуется.
Тем не менее, иногда может потребоваться получить цифры собственного ID или идентификатора беседы с ботом. Для получения этой информации пользователями были созданы специальные боты. Кроме того, если мы знаем токен, получить chat id можно при помощи стороннего сервиса.
- Добавьте в список контактов бота @MyTelegramID_bot.
Начните с ним диалог командой /start, в ответном сообщении вы узнаете цифры идентификатора.
Можете использовать также бота @GetMyIDBot или @my_id_bot для этой цели. - Заполучить chat id можно также при помощи сторонних ресурсов, вроде сервиса cmsru/kak-poluchit-chat-id-telegram/. Для этого нужно отправить любое сообщение своему боту и указать bot token в соответствующем поле.
- Воспользуйтесь методом getUpdates для получения ID чата. Для привязки бота API к своему аккаунту, создавая его, скопируйте ключ-токен, который пришлёт вам Botfather. Затем напишите первое сообщение своему роботу, ID генерируется во время его отправки. Далее пропишите в адресной строке браузера: https://api.telegram.org/bot/getUpdates, где – это ваш ключ. Если запрос отправлен правильно, после всех манипуляций вы получите в ответ массив, содержащий также ID. Когда идентификатор получен, можно продолжать дальнейшую работу с ним, например, попробовать отправить себе сообщение, воспользовавшись методом sendMessage.
Большинству пользователей информация об идентификаторе без надобности, видимо, потому опция и не включена разработчиками «Телеграмма». Но если вам вдруг понадобится ID, теперь вы знаете, как его получить.
Как узнать ID в Telegram быстро и без проблем!
Способ, как узнать ID в Telegram, есть только один — это использование специального бота. Почему так и для чего вообще нужен этот идентификатор в мессенджере, вам станет ясно после прочтения этой статьи. Мы собрали здесь всю необходимую информацию.
Что такое user ID в Телеграмме и зачем он нужен?
Вы уже знаете, что в этом мессенджере можно устанавливать собственный идентификатор — имя пользователя: по нему можно искать друг друга в глобальной сети Телеграмм и общаться без обмена номерами телефона. Это имя доступно для просмотра и редактирования, а также позволяет сделать ссылку для быстрого перехода в чат.
User ID Telegram — это также идентификатор, но уже не для людей, а для системы. Он прикрепляется к профилю пользователя / чату / группе в момент их создания и позволяет образовывать нужные связи:
- Между пользователями.
- Между пользователями и группами, в которые они вступают.
- Между пользователями и используемыми ими ботами.
То есть ID в Телеграмме отвечает за корректное взаимодействие профилей в сети — пересылка сообщений, загрузка истории переписок, возможность добавлять кого-то или добавляться самому (в чат или группу) и так далее.
ID, в отличие от имени пользователя,полностью состоит из цифр, а изменен быть не может. Кроме того, он недоступен для просмотра обычным путем (через настройки, как имя пользователя), без применения дополнительных инструментов. Поэтому далее речь пойдет о том, как узнать ID в Телеграмме с помощью специального бота.
Как узнать свой ID
Ботов для этих целей создано много, но далеко не все они работают корректно. Наша инструкция будет приведена на примере @getmyid_bot (Get My ID) — на данный момент он функционирует исправно, результат выдает буквально за секунду.
Как узнать свой айди в Телеграмме:
- В строку поиска в приложении вводим “ @getmyid_bot ”.

- В выдаче выбираем результат, полностью совпадающий с указанным именем пользователя.
- Чтобы активировать бота, жмем на “Запустить” .

- В окне чата сразу отобразится Ваш ID — в строке “Your user …” , а также идентификатор диалога с ботом — в строке “Current chat …” .

Как видите, узнать свой ID в Телеграмм совсем не сложно. А если вы удалили первое сообщение от бота, то получить информацию снова можно отправив в чат с ним “/start”. Так можно делать бесконечное количество раз.
Как узнать ID другого пользователя
Это не сложнее, чем узнать свой ID Telegram. Для примера возьмем опять же @getmyid_bot — он универсальный, можно и свои данные проверить, и другого пользователя..
Как в Телеграмме посмотреть чужой ID:
- Ищем и запускаем бота по инструкции выше.
- Переходим к списку контактов и открываем диалог с человеком, идентификатор которого нужно узнать.
- В чате выбираем любое полученное сообщение и жмем на “Переслать” .

- Адресатом назначаем @getmyid_bot .

- Сообщение отобразится как пересылаемое боту. Жмем на “Отправить” .

- В диалоговом окне вы увидите уже три строки — “Your user …”, “Current chat …” и “Forwarded from …”. Что значат первые две, мы писали выше, а третья — это и есть идентификатор вашего собеседника.*

Если подключение к интернету стабильное, то ответ от бота поступит менее, чем через секунду. В отдельных случаях на получение информации может понадобиться 2-3 секунды.
Как узнать ID чата или канала
А вот тут нам понадобится другой помощник. Бот, о котором шла речь выше, может выдать только наши собственные идентификационные данные и данные какого-то конкретного человека, пославшего сообщение в чат (личный или публичный). Чтобы получить аналогичную информацию о публичном чате или группе, воспользуемся услугами @username_to_id_bot .
Как узнать ID Telegram chat:
- Через поисковую строку ищем @username_to_id_bot и запускаем его (кнопка “Запустить” ).

- Заходим в чат или группу, информацию о которой нужно получить.
- Жмем на “Дополнительно” (название канала), а в меню выбираем “Информация о группе” .

- В окне с общей информацией есть ссылка на чат. Копируем ее.

- Возвращаемся к нашему боту и отправляем ему скопированную ранее ссылку.
- В ответном сообщении вы получите основные данные о чате / группе. В самом низу будет строка с ID чата в Telegram.

У вас обязательно получится узнать ID канала Telegram, если пошагово следовать приведенным здесь инструкциям. Попробуйте!
ID в Telegram: что это, как узнать

Если вы рассматриваете Telegram как инструмент для ведения бизнеса или донесения информации до других пользователей, наверняка со временем у вас возникнет вопрос: как узнать свой ID в Telegram. Это необходимо для целого ряда действий, которые связаны с добавлением ботов, ведением каналов и другими функциями администрирования. В данной статье рассмотрим самый простой способ узнать ID в Телеграм.
Оглавление: 1. Что такое ID в Telegram 2. Как узнать свой ID в Telegram 3. Как узнать чужой ID в Telegram
Что такое ID в Telegram
Главная задача ID в Telegram — идентификация пользователя, канала, группы, чтобы их было возможно отличить от других аналогичных субъектов мессенджера. В отличие от ID ВКонтакте, пользователь не знает свой идентификационный номер. Он является системным и обычному пользователю не нужен.
В чем отличия ID от имени пользователя (@username):
- ID нельзя выбрать — он выдается каждому пользователю случайным образом;
- ID нельзя сменить, даже если текущий номер вас не устраивает;
- ID позволяет точно идентифицировать пользователя, у другого пользователя не может быть точно такой же ID.
Узнать ID просто в настройках своего профиля Telegram не получится, но есть специальные инструменты, которые позволяют это сделать.
Как узнать свой ID в Telegram
Чтобы узнать свой ID в Telegram, проще всего воспользоваться специальными ботами. Таких ботов в Телеграм несколько, в целом, они работают практически одинаково. Все, что нужно сделать, чтобы получить свой ID, направить боту запрос от своего имени.
Например, есть бот @my_id_bot. Чтобы узнать через него свой ID, просто откройте чат с ним, а после нажмите “Запустить”.

В чат с вашей стороны будет отправлена команда /start, после чего в ответ вы получите сообщение с вашим ID.

Это все, никаких дополнительных действий выполнять не нужно.
Как узнать чужой ID в Telegram
Если вам требуется узнать ID любого другого пользователя Telegram, то сделать это ничуть не сложнее. Для этого можно использовать бота @userinfobot.
Перешлите ему сообщение от любого пользователя (или канала), ID которого вы хотите узнать. Для этого надо нажать на пересылаемое сообщение и выбрать соответствующий пункт.

После чего указать отправку боту.

В ответ бот пришлет ID пользователя (или канала), сообщение которого было ему отправлено.
Как узнать ID любого человека в Telegram?

Для сбора данных об аккаунте Telegram нам требуется ID пользователя, но аккаунт может не иметь логина и нет возможности переслать сообщения, а ставить неофициальные клиенты совсем не хочется.
Добавляем бот в меню — клик сюда. Переходим в диалог c тем, чей ID вы хотите узнать, нажимаем Прикрепить и выбираем TestAttach.
В самом низу страницы нам доступен массив данных в формате JSON, в котором есть ID данного пользователя.
11 месяцев назад
И чего, кому-то интересно?
*зачем вообще люди в телегу народ нагнетают, там что реклама есть что ли.
раскрыть ветку (0)
tri.tochki 11 месяцев назад
это ни разу не баг, не взлом, не фича и даже не лайфхак, это стандартный функционал телеграм ботов(получать информацию о тех, с кем он каким-либо способом взаимодействует), и подобных ботов уже полно
402060060 11 месяцев назад
А по ай пи вычеслишь?
раскрыть ветку (0)
Похожие посты
monobogdan 1 месяц назад

Друзья! Ищем ништяки для контента, снова! 🙂 Китайские мобилки — сюда
Привет! Вероятно, половина обитателей Пикабу так или иначе уже видели и читали мои статьи — я пишу о подручном ремонте, моддинге, программировании и использовании гаджетов прошлых лет. Довольно большого количества статей возможно и не вышло бы без вашей помощи — именно читатели помогают мне найти некоторые достаточно экзотические гаджеты, про которые я готовлю подробный материал.
Прямо сейчас я составил небольшой список девайсов, которые могут быть вам не нужны, но которые были бы интересны для оживления и будущего контента. не стесняйтесь писать в комментах, если у вас есть что-то подобное, а то часто бывает что начинаю искать какой-то гаджет, а люди пишут «где ж ты был месяц назад! Я целый грузовик их выкинул!» 🙁
Китайские реплики флагманских и дорогих смартфонов начала 2010х годов. Сюда относятся китайские айфоны 4/4s/5/5s/5c/6/6s, galaxy s2/s3/s4/s5/mega/note, htc one x, подделки на Lumia и.т.п. Работали эти реплики на подрисованном в эппловскую систему Android’е и обычно не очень шустро.




Если у кого-то хорошая память на бренды, то вот известные китайцы: ORRO (именно так, не OPPO), SciPhone, Feiteng, HTM, Vinko, BML. Если ваш друг или знакомый когда-то торговал подобными гаджетами (почти в каждом городе были рынки с такими «серыми» телефонами) и ему приносили бракованные подобные девайсы — тоже можно скинуть контакт, поговорить, возможно куплю болячки там обычно не существенные.




Довольно ранние реплики на винде и самых первых андроидах (1.5-1.6). Про них большинство забыли за давностью лет:



И максимальная дичь — реплики айпадов, макбуков и прочей техники Apple. Да, я люблю подобные девайсы собирать в эдаку экосистему))


Показать полностью 13
Tony.Pizzicato 1 месяц назад
Лайфхак

ITcourse 1 месяц назад
Подборка SQL тренажёров
1. Интерактивный тренажер по SQL – Stepik
В курсе большинство шагов — это практические задания на создание SQL-запросов. Каждый шаг включает минимальные теоретические аспекты по базам данных или языку SQL, примеры похожих запросов и пояснение к реализации.
2. SQL Тренажер. Бесконечное приключение 00. Интро. – Stepik
Короткий тренажер, с интересным сценарием уроков.
В игровой форме закрепляются знания SQL. Необычные задачи от простого к сложному. Планируется целый цикл интересных историй, где каждое задание это необычный квест. Сейчас пока самые простые азы.
3. SQL Academy: онлайн курс SQL и тренажёр c упражнениями ( sql-academy.org )
Всесторонний курс по SQL, спроектированный так, чтобы навсегда изменить твоё отношение к SQL. Мы вместе пройдём путь, чтобы понять как этот язык работает, и получим все необходимые навыки для эффективного применения его на работе.
4. Упражнения по SQL ( sql-ex.ru )
Сайт поможет каждому, кто хочет приобрести или повысить свои навыки в написании операторов манипуляции данными языка SQL. Суть обучения состоит в том, что вы сами пишете операторы, которые должны вернуть или изменить данные, требуемые заданием.
5. Задачи по Python, SQL, программированию и Data Science | IT Resume
Сайт с платным доступом, но часть задач беспалтные.
[Тестовое Альфа-банк] Покупки телефонов в Туле по месяцам | IT Resume
6. Master Coding for Data Science — StrataScratch
Зарубежный сайт, напоминающий leetCode, есть бесплатная версия использования
Материал подготовлен участниками чата
Показать полностью
Vadim1700 2 месяца назад

Пишем приложение на Mi Band 7 с сервисной частью
Недавно я купил себе Mi band 7, по началу хотел купить 6-ую версию, пока не узнал, что на 7-ой обновилась операционная система и теперь она поддерживает установку приложений. Да, официально они об этом не заявили, но умельцы уже сделали множество приложений. Они ставят их как циферблаты, и это вполне обычные приложения. Но все эти приложения работают только локально на самом MiBand 7, не имея возможности взаимодействовать ни с телефоном, ни с интернетом. Я углубился в байткод приложения и документацию по Zepp OS чтобы найти способ создавать приложения, взаимодействующие с интернетом, в этой статье я опишу свой путь. В итоге у меня получилось сделать запрос в интернет с часов и даже запустить мост для отладки приложений.

Сразу скажу, что я уже публиковал эту статью на Хабр. Но хочу теперь попробовать начать писать статьи на Пикабу, так что я буду очень рад любым комментариям и отзывам. Надеюсь пользователям Пикабу эта статья тоже зайдет)
Эта статья написана чисто в ознакомительных целях. Я не призываю никого к переработке кода для добавления новых функций с целью использования и распространения переделанного ПО.
Почему приложения официально не поддерживаются?
Мне интересен этот вопрос, но к сожалению я не знаю причин. Похоже что Xiaomi Band 7 сделала для xiaomi компания zepp. И им было проще не поддерживать другую операционную систему, а использовать уже имеющиеся наработки для часов zepp. Поэтому на этих часах стоит система ZeppOS. Вероятно Xiaomi решила не платить за все фишки системы и поэтому функционал часов программно ограничен.
Начало
Для начала, чтобы разобраться как работает система, я попробовал поставить пару приложений от MelianMiko. Ставил самым простым способом, через приложение для установки циферблатов, подробности можете почитать на 4PDA. Я немного поразбирался в структуре приложений и вот что я понял: приложение это bin файл, который является простым zip архивом с, как минимум, несколькими файлами: app.json(Manifest), app.js(Код инициализации и деинициализации приложения при запуске), index.js(Код страницы),icon.png. Далее я пошел на сайт официальной документации по ZeppOS, там описано как включать режим отладки через приложение ZeppApp. Но попробовав подключить часы через это приложения я получил ошибку:

Я решил на этом не останавливаться, скачал это приложение версии 7.0.1, декомпилировал через apktool в байткод и через jadx в java код:
apktool d com.huami.watch.hmwatchmanager_7.0.1-play_100802.apk jadx com.huami.watch.hmwatchmanager_7.0.1-play_100802.apk -d com.huami.watch.hmwatchmanager_7.0.1-play_100802_JADX
Далее для исследование кода проще использовать результат jadx, но скомпилировать обратно получится только результат apktool, поэтому изменения придется делать в байткоде.
Для начала я убедился что это приложение поддерживает ну или когда-то поддерживало MiBand. Для этого я нашел несколько упоминаний MiBand 7 (Официально он называется Xiaomi Smart Band 7). Его кодовое название в приложении “MILI_L66”.

Далее я решил обмануть приложение(пока без его изменения) и попробовал подключить свои часы к приложению, притворившись другими часами. Для этого я отсканировал qr для сетапа на своих часах я получил такую ссылку:

В ней указан мак адресс, pnpNumber, pnpVersion — это похоже какие-то идентификаторы устройства. Я пробовал их заменить, но это не помогло, поэтому я решил посмотреть, какие qr коды у других устройств zepp при сетапе. В гугл я нашел видео в привязкой Amazfit Band 7, отсканировал код, получил такую ссылку:
Эта ссылка ссылается совсем на другое доменное имя. Далее я решил попробовать просто подставить в этот URL macAddress из своего qr кода и сделать с этого url qr код. И это помогло, мои часы подключились, приложение засетапило их как Amazfit Band 7.

Я обнаружил что весь функционал из приложения Xiaomi здесь есть и я могу полноценно настраивать свои часы. Но после сетапа приложения понимало что у меня не Amazfit а Mi Band и не давало возможности ставить никакие приложения и циферблаты для Amazfit. Поэтому дальше я решил переделать приложение.
Перекомпиляция приложения
Чтобы приложение дало мне возможность ставить mini apps на часы, я решил заставить его думать что у меня не Xiaomi Smart Band 7, а Amazfit Band 7. Для этого таже как и для Mi Band 7, нашел кодовое название для Amazfit Band 7 — “MiliBari”:

Далее нашел все упоминания MILI_L66 и MILI_BARI. Самым интересным показался класс HMDeviceSource:

Вы можете в нем увидеть коды соответствующие разным типам устройств — их идентификаторы.
Далее необходимо переключиться на байткод, который нам выдал apktools.
Здесь я тоже нашел байткод класса HMDeviceSource$a.smali и изменил в нем 3 строки как на скриншотах:


Теперь можно собрать его обратно, подписать, установить. Оригинальное приложение придется сначала удалить, так как подпись теперь не оригинальная.
apktool b com.huami.watch.hmwatchmanager_7.0.1-play_100802 —use-aapt2 apksigner sign —ks-key-alias alias_name —ks-pass pass:123456 —ks release-key.keystore com.huami.watch.hmwatchmanager_7.0.1-play_100802/dist/com.huami.watch.hmwatchmanager_7.0.1-play_100802.apk adb install com.huami.watch.hmwatchmanager_7.0.1-play_100802/dist/com.huami.watch.hmwatchmanager_7.0.1-play_100802.apk
Теперь можно снова логиниться в приложении и подключать Mi Band как я описывал выше, изменяя qr код.
Работа перекомпилированного приложения
После этих манипуляций приложение начало отображать функционал как для amazfit band 7! Ура! На изображении сначала будет Mi Band 7, но если поменять циферблат, то оно сменится на amazfit band 7. У меня циферблат от Аmazfit встал как родной.


Также теперь появилась кнопка App Store, там можно поставить приложения из магазина для amazfit band 7. Не все заработали идеально, но большинство. Их почему-то в магазине пока только 5. Видимо пока весьма маленькое сообщество разработчиков)

Далее я уже пытался поставить свое приложение, с сервисной частью, сначала я пошел по сложному пути, подменяя файлы приложения. Позже понял, что можно воспользоваться мостом в режиме разработчика на приложении, что гораздо проще и позволяет выводить логи. Вероятно разработчики могут прекратить поддерживать отладку через мост, когда эта версия приложения устареет. Но в этой статье я опишу только путь попроще, через мост. Если вам будет интересно, могу потом описать второй путь.
Создание проекта
На 4PDA я нашел проекты пользователя MelianMiko. Он сделал и симулятор mi band, и множество приложений, и утилиту для сборки проектов — zmake. Можете ими воспользоваться для создания простых приложений, но как я понял zmake создает проекты только без сервисной части, выполняемой на телефоне. Еще в отличии от официального сборщика он, не сжимает код в bin файл, а оставляет в формате js(Тут может ошибаюсь, поправьте если не так). Симулятор к сожалению не работает под Linux и MacOS, поэтому я им не пользовался, вместо него использовал официальный симулятор Amazfit band 7.
Для создания проекта я использовал официальную утилиту zeus для ZeppOS. Новый проект можно создать командой zeus create project-name. Необходимо выбрать “1.0 API”, апи второй версии MiBand 7 не поддерживает.
Далее опишу содержимое собранного приложения, это не очень нужная информация, просто для общего ознакомления.
Когда проект будет готов, его можно собрать командой zeus build. В папке dist появится архив в формате zab, его можно открыть как простой zip архив. В нем манифест с описанием приложения и архив common.zpk, который тоже открывается как zip архив. В нем уже можно увидите основные составляющие приложения:

- Файл device.zip содержит код выполняемый на часах, ему можно сменить формат на bin и поставить даже через приложение для установки циферблатов.
- Файл app-side.zip сожержит код выполняемый на стороне телефона.
- Вроде еще может быть файл, описывающий настройку mini app с помощью приложения телефона.
Отличный набор примеров приложений, в том числе с сервисной частью, есть на github. Я, как основу, взял пример “fetch-api”.
Настройка моста
Тут нет ничего особенного, все из документации ZeppOS. Необходимо залогиниться в один аккаунт в приложении на телефоне и в приложении симуляторе. Включить режим разработчика в приложении и потом выбрать часы в списке устройств, открыть внизу настройки разработчика и в выпадающем списка нажать кнопку включения моста. После подключиться к мосту надо и в приложении симуляторе, нажав кнопку Bridge.

Теперь можно пользоваться консольной утилитой zeus для отладки проекта:
Запрос в интернет по кнопке на часах.
Как я уже писал выше, я взял за основу пример проекта с официального гитхаб аккаунта zepp os, “fetch-api”. Изменив код в app-side, я сделал запрос с телефона на домен ident.me, чтобы получить мой текущий внешний ip, ради примера.

Вывод
В итоге я получил небольшое приложение на часах, которое может когда угодно выводить мне мой внешний ip. Это конечно не та цель, к которой я стремился. Моей целью было продемонстрировать, то что на самом деле у часов Mi Band 7 есть скрытый, программно ограниченный функционал. Эти часы могут не просто менять циферблаты, но и работать с приложениями. И даже отправлять данные через телефон в интернет и получать ответ. Такие приложения можно использовать например для управления умным домом) Вероятно в будущих версиях часов об этом официально заявят, но пока такого нет. Даже на Band 7 Pro официально не стоит zepp os.

P.S. Это была моя первая статья. Надеюсь вам было интересно, пишите комментарии, буду рад любой критике!
Недавно я создал телеграм канал. Там я планирую регулярно делиться интересными мыслями по темам информационной безопасности, программирования и нейросетей. Если вам интересны такие темы, присоединяйтесь) буду делиться там подобным контентом.
Показать полностью 16
monobogdan 2 месяца назад

Сам себе Linux смартфон: Как я выкинул Android и написал свою прошивку с нуля

К огромному сожалению, старые смартфоны всё чаще и чаще находят своё пристанище в мусорном баке. К прошлым, надежным «друзьям» действует исключительно потребительское отношение — чуть устарел и сразу выкинули, словно это ненужный мусор. И ведь люди даже не хотят попытаться придумать какое-либо применение гаджетам прошлых лет! Отчасти, это вина корпораций — Google намеренно тормозит и добивает довольно шустрые девайсы. Отчасти — вина программистов, которые преследуют исключительно бизнес-задачи и не думают об оптимизации приложений совсем. В один день я почувствовал себя Тайлером Дёрденом от мира IT и решил бросить вызов проприетарщине: написать свою прошивку для уже существующего смартфона с нуля. А дабы задачка была ещё интереснее, я выбрал очень распространенную и дешевую модель из 2012 года — Fly IQ245 (цена на барахолках — 200-300 рублей). Кроме того, у этого телефона есть сразу несколько внешних шин, к которым можно подключить компьютер или микроконтроллер, что даёт возможность использовать его в качестве ультрадешевого одноплатника для DIY-проектов. Получилось ли у меня реализовать свои хотелки? Читайте в статье!
Мотивация
Честно сказать, идея попытаться реализовать свою прошивку мне пришла ещё давно. Однако, дабы не завлекать опытного читателя кликбейтом, я сразу поясню, в чём заключается «прошивка с нуля»:
- Мы всё ещё используем Linux: в качестве ядра мы продолжаем использовать образ Linux, предоставленный нам производителем. Написание прошивки полностью с нуля заняло бы очень много времени (особенно без схемы на устройство). Однако, мы вообще не загружаем Android никаким образом.
- Мы не используем библиотеки AOSP: наша прошивка без необходимости не использует никаких библиотек уже имеющегося образа Android. Вся работа с железом происходит с помощью низкоуровневого API Linux. Это значит, что отрисовка графики, звук, управление ресурсами и питанием ложится полностью на нас.
- Прошивка может запускать только нативные программы: да, это тоже камень в сторону Android. Изначально, наша прошивка умеет запускать только нативные программы, написанные на C. Причём она экспортирует собственное C API — дабы приложения могли использовать всю мощь нашего смартфона в виде простого и понятного набора методов.

Проектов по выкидыванию Android из, собственно, Android-смартфонов как минимум несколько: UBPorts — бывший Ubuntu Touch, FireFox OS и его наследник Kai OS и конечно же, postmarketOS. Отчасти можно сюда отнести и Sailfish OS — но там образы имеются в основном на смартфоны от Sony. Все эти проекты объединяет сложность портирования и невозможность их завести на устройствах без исходного кода ядра. Даже если у вас есть исходный код ядра, но, например, устройство использует ядро 2.6 — навряд-ли вы сможете завести современный дистрибутив на нём.
Другой вопрос в том, что можно использовать полу-baremetal подход, когда от Linux берется практически минимальный функционал. Всё, что мы имеем — busybox, libc и низкоуровневый доступ к железу, благодаря API самого ядра. Как под это всё программировать — я рассказывал впрошлойстатье. Этот же подход мы будем использовать и сейчас — как иллюстрация реального применения подобного способа.
Итак, что наша прошивка должна уметь:
- Отрисовывать произвольную графику: графическая подсистема нашей прошивки должна работать с фиксированным форматом пикселя, уметь загружать прозрачные и непрозрачные изображения, отрисовывать картинки с альфа-блендингом и т. п.
- Уметь звонить и работать с модемом: общение с модемом происходит посредством AT-команд — общепринятого в индустрии стандарта. Однако в случае нашего устройства, есть м-а-а-а-ленький нюанс, о котором я расскажу позже.
- Иметь механизм приложений: мы ведь не будем хардкодить все «экраны» в прошивке в виде кучи стейтов, верно? Для этого у нас должен быть простой и понятный механизм слинкованных с прошивкой приложений.
- Обрабатывать ввод: обработка тачскрина и жестов — это задача подсистемы ввода.
- Реализовывать анимированный UI: здесь всё очевидно, наша прошивка должна иметь готовые элементы пользовательского интерфейса для будущих приложений: кнопки, текстовые поля и т. д. О деталях реализации этой подсистемы, я расскажу ниже (а реализовал я её очень необычно для такой системы).
Начинаем мы с хардварной части. Именно здесь я покажу вам, как использовать внешние шины вашего устройства.
Аппаратная часть
В качестве смартфона для нашего проекта, я выбрал популярную бюджетную модель из 2012 года — Fly IQ245 Wizard. Это простенький китайский смартфон, который работал на базе популярного в прошлом 2G-чипсета: MediaTek MT6573, да и стоил около 2х тысяч рублей новым. Однако вот в чём суть: мне удалось заставить работать «медиатековский» модем и даже позвонить с него на свой основной телефон, но… только ввод и вывод данных из звукового тракта модема происходит через звуковую подсистему Android — к которой доступа у нас нет!

Именно поэтому, мы идём на очень хитрый и занимательный костыль: мы распаяем внешний модем сами! В качестве радиомодуля у нас выступит модуль SIM800 от компании SIMCOM. И даже он очень близок к нашему смартфону в аппаратном плане: ведь в основе этого модуля лежит популярнейший чипсет из кнопочников тех лет: MediaTek MT6261D. Преимущество SIM800 в его цене — он стоит пару сотен рублей, так что по карману выбор модема не влияет.

На весу паять крайне неудобно. В финальном варианте перепаяю нормально.
Но как его подключать? SIM800 общается с другими устройствами посредством протокола UART — универсальный асинхронный приемо-передатчик. И вот тут мы включаем смекалочку. Разбираем устройство и видим то, что я пытаюсь долгое время донести до моих читателей — аж два канала UART: один практически посередине, второй справа. Нам нужны пятачки TXD4 и RXD4:

Обычно на этот канал UART летят логи ядра, которые можно без проблем отключить минорной правкой U-Boot в HEX-редакторе. Впрочем, модем никак не реагирует на «мусор» из консоли и просто отвечает ошибками — хватит лишь очистить буфер сообщений для того, чтобы все работало нормально. Подпаиваемся к UART’у с помощью преобразователя — у меня оным выступает ESP32 с выпаянным чипом.


Увидели логи? Замечательно, пора попытаться что-то отправить на ПК и с ПК. UART работают без тактовых сигналов и зависит исключительно от старт/стоп битов и бодрейта, который на устройствах MediaTek равен 921600. TXD4 и RXD4 обнаруживаются в системе на консоли/dev/ttyMT3. Пробуем что-то отправить: всё работает!

Вот теперь-то можно подключить наш внешний модем и попытаться пообщаться с ним, отправив тестовую командуAT. Модем отвечаетOK! На этот раз я работаю с смартфоном из режимаFactory mode— практически тоже самое, что и режим recovery, но позволяющий, например, получить доступ к камере устройства. Простая и понятная схема, поясняющая что и куда подключать:

На этом модификация аппаратной частипоказакончена. Пора переходить к реализации софта! Я решил разделить материал на каждый модуль, который я реализовывал — дабы вам был понятен процесс разработки и отладки прошивки!
Заставляем смартфон запускать нашу прошивку
На этот раз я решил загружать смартфон из режима рекавери. Однако никто не мешает в будущем просто прошить раздел recovery вместо boot и получить прямую загрузку прямо в нашу прошивку. Время такой загрузки будет заниматься ~3-4 секунды с холодного старта. Очень даже ничего.

Я взял уже готовый образ TWRP для своего смартфона и пропатчил его, дабы сам рекавери не мешал своим интерфейсом. Для этого я распаковал образ recovery.img с помощью MtkImgTools и убрал в init.rc запуск службы /sbin/recovery. После этого, я залил прошивку обратно на устройство и получил подобную свободу действий — консоль через USB и чистый холст в виде смартфона! Старые смартфоны на чипсетах MediaTek шьются через USB только после замыкания тест-поинта — на моем аппарате его местонахождение очевидно. Замыкаем контакты между собой, подключаем смартфон без АКБ к ПК и ждем прошивки:

Теперь можно деплоить программы! Важный нюанс: в отличии от Makefile из прошлой статьи, для Android 2.3 параметр -fPIE нужно убрать — иначе динамический линкер (/sbin/linker) будет вылетать в segmentation fault.

❯ Графическая подсистема
В комментариях под прошлой статьёй меня похвалили за то, что я делюсь достаточно профильными знаниями касательно эффективной отрисовки 2D-графики. Собственно, к реализации графической подсистемы я подошёл ответственно и постарался реализовать достаточно шустрый рендерер, к которому затем можно подключить другие модули.

Как я уже говорил ранее, графическая подсистема должна уметь загружать картинки, выводить некоторые примитивы, выводить картинки с прозрачностью и без, загружать и отрисовывать заранее подготовленные шрифты, а также управлять отрисовкой бэкбуфера на экран.
В случае с этим устройством (и большинством старых устройств), формат пикселя оказался RGB565 — т. е. 5 бит красный, 6 бит синий, 5 бит зеленый. Конвертация форматов пикселей всегда была занозой в заднице для программных рендереров, поскольку занимает дополнительное время, которое обратно зависимо от размера дисплея. Изначально я решил выделить буфер в том же формате, что и фреймбуфер, но затем решил сделать классический и самый портативный формат — RGB888 (24х-битный цвет), а при копировании кадра на экран, на лету делать преобразования цвета:

Очень важный нюанс, который я не упомянул в предыдущей статье: на устройствах прошлых лет для обновления фреймбуфера необходимо послать структуру var_screeninfo, где хотя бы что-то изменено, иначе никаких изменений мы не увидим. Этот же костыль используется в родном recovery для отрисовки, а судя по исходникам драйвера fb, «правильный» способ обновить экран — послать драйверу ioctl (который я пока что не пробовал).
После того, как я смог управлять дисплеем, я решил загрузить и отобразить какую-нибудь картинку. Пусть это будут обои для нашей прошивки:

Загрузчик TGA сильно не поменялся: я таскаю его в неизменном виде из проекта в проект. Он поддерживает любые форматы пикселя, кроме палитровых, но я его искусственн ограничиваю на RGB888 и RGBA8888 — для поддержки обычных картинок и картинок с альфа-каналом. После этого, я написал не очень шустрые, но достаточно универсальные методы для отрисовки картинок. Для больших участков кода, я буду использовать pastebin, поскольку на Пикабу до сих пор не добавили ни подсветки синтаксиса, не нормальный перенос форматирования табов 🙁
PutPixel желательно заинлайнить в будущем. В целом, сама отрисовка работает достаточно быстро, но поскольку рендеринг выполняется на ЦПУ — рано или поздно мы упремся в количество картинок на экране. Есть некоторые оптимизации: например, непрозрачные картинки можно просто коприовать сканлайнами прямо в задний буфер.
Сразу же реализовываем методы для рисования шрифтов: они у нас будут совсем простенькими — только моноширинные (все символы имеют одинаковую ширину) и растровыми (для каждого размера придется «запекать» несколько шрифтов). Для этого я написал маленькую программку, которая рисует виндовые шрифты прямо в наш самопальный формат:

1 байт говорит нам о размере шрифта и далее идут 255 изображений символов. Да, это не очень эффективно т.к попадают пустые символы из ASCII-таблицы, но в будущем это можно поправить.
Прозрачность в символах обеспечивает фоновый цвет Magena — ярко-розовый. Я не стал делать дополнительный альфа-канал, т. к. иначе будут серьезные лаги при выводе большого количества текста.
Теперь у нас есть отображение картинок и текста! Что с этим можно сделать?
❯ Обработка ввода


Пока что здесь не хватает обработки «хардварных» кнопок — домой, меню, назад и т. п. Однако в будущем это всё можно реализовать!
❯ Анимация
Не забыл я и про анимации. Ну кому с такими ресурсами нужен неанимированный топорный интерфейс? Пусть лучше будет анимированный, пусть и примитивный!
Аниматор напоминает оный из ранних версий Android: он имеет фиксированный набор свойств, которые умеет интерполировать в промежутках определенного времени. Если простыми словами: то он оперирует линейными отрезками времени a и b, в промежутке которых мы имеем значение «прогресса» — которое даёт нам результат от 0.0f (начало анимации) до 1.0f (конец анимации). Пока время тикает до необходимого интервала (duration), аниматор интерполирует заранее назначенные ему поля до нужных значений.
Именно так и получается плавность! Похожим образом реализованы анимационные системы во многих играх и мобильных ОС, только там они гораздо более комплексны: есть сериализация/десериализация из файлов, поддержка кейфреймов (несколько последовательных состояний на одном промежутке времени), поддержка кастомных свойств и т. п.

❯ Модем
Как я уже говорил раннее, работа с модемом происходит посредством AT-команд. Лучше всего обрабатывать ввод-вывод модема из отдельного потока, поскольку он может отвечать довольно медленно и тормозить UI-поток основной программы, вызывая лаги. В SIM800 уже реализован весь GSM-стек, в том числе декодирование и вывод звука через встроенный усилитель с фильтром — остается только подключить динамики и микрофон от нашего телефона. Пока что я подсобрал аудиотракт на том, что было под рукой — микрофон от нерабочего смартфона и динамик от планшета, но для проверки этого хватает:

Важный нюанс: по умолчанию, tty-устройства в Linux работают по терминальному принципу — т. е. дробят транзакции по символу окончания строки (\n), имеют ограниченный буфер и т. д. Для нормальной работы в условиях модема — когда фактически длина ответа неизвестна, а в сам ответ могут «вклиниваться» Unsolicited-команды (своеобразные флаги о состоянии от модема, которые могут прийти в произвольное время — т. е. при входящем звонке, модем начнёт флудить RING в терминал), необходимо иметь возможность точно прочитать весь буфер до конца и парсить данные «по месту». Для этого используется raw-режим терминала:
После чего можно запросить состояние модема:

И продолжить работу дальше. После этого, можно переходить к реализации самой прослойки между модемом и вашей программой:
Пытаемся позвонить с помощью метода Dial и видим, что всё работает! Это очень круто! А теперь, конечно же, самое время переходить к реализации того, чего вы ждали — пользовательского интерфейса!
❯ Главный экран
К выбору концепции для интерфейса, я поступил максимально просто — «слизал» дизайн первых версий iOS. Как по мне, это одни из самых красивых версий iOS вообще — все эти приятные градиенты и переливания. Конечно, я не так крут, как инженеры Apple, да и мощного UI-фреймворка у меня пока что нет, поэтому я приступил к реализации с «минимальным» функционалом.

Начал я с разделения главного экрана на модули и продумывания архитектуры основного «лаунчера». У нас есть статусбар, который рисуется поверх всех приложений, полка с приложениями — AppDrawer и сами экраны приложений, унаследованные от суперкласса CScreen.
На данный момент, отрисовка достаточно примитивная: сначала рисуются фоновые обои, затем, если нет никаких активных экранов — AppDrawer и в самом конце рисуется статусбар и всевозможные оверлеи.
Практически сразу я решил обкатать анимационную «систему» и добавить первые анимашки — выезжающий статусбар и анимация а-ля айфон:
animator = new CAnimator();
animator->SetTranslation(0, -imFiller->Height, 0, 0);
animator->Run();
Выглядит симпатичненько. Если я смогу поднять хардварный GLES, то это получится сделать в разы плавнее и шустрее — не хуже айфонов тех лет! Реализация самого статусбара примитивненькая, но вполне рабочая:
gLauncher->Graphics->DrawImage(imFiller, animator->X, animator->Y);
gLauncher->Graphics->DrawImage(imBattery[(int)gLauncher->PowerManager->GetBatteryLevel()], imFiller->Width — imBattery[0]->Width — 5, animator->Y + 5);
char timeFmt[64];
time_t _time = time(0);
tm* _localTime = localtime(&_time);
strftime((char*)&timeFmt,
sizeof(timeFmt), «%R», _localTime);
gLauncher->Graphics->DrawString(gLauncher->Font, (char*)&timeFmt, 0, 0);
Кроме этого, я сразу же реализовал предварительный механизм приложений в системе — пока что они слинкованы статически с основным лаунчером. Для этого есть структура CAppDesc, которая содержит минимально-необходимую информацию для показа информации о приложении и фабрику для создания его основного экрана.
Обратите внимание на удобство примененного подхода Immediate GUI. Нам понадобился новый элемент интерфейса, который описывает кнопку номеронабирателя? Мы просто реализовываем ещё один метод, который берет за основу стандартную кнопку и дорисовывает к ней текст. Всё крайне просто и понятно, хотя на данный момент слишком захардкожено. 🙂
❯ Звоним!
Пришло время совершить первый звонок с нашей по настоящему кастомной прошивки. Набираем номерок и…

Да, всё работает и мы без проблем можем дозвониться 🙂
❯ Заключение
Конечно же, это далеко не весь функционал, необходимый любому современному смартфону. Здесь много чего еще нужно реализовать хотя бы для соответствия уровню бюджетных кнопочных телефонов: телефонную книгу, поддержку СМС/ММС, мультимедийный функционал с играми. Однако начало уже положено и самая необходимая часть модулей реализована. Этот проект очень занимательный для меня и я горд, что смог не на словах, а на деле показать вам, моим читателям, возможности моддинга совершенно NoName-устройств, без каких либо опознавательных знаков…
Моя задача заключается в том, чтобы показать вам возможности использования старых телефонов не только в потребительских, но и в гиковских DIY-сферах. Судите сами: огромный классный дисплей, емкостной тачскрин, готовый звук, камера — и всё это за каких-то пару сотен рублей. Главное показать людям, как всю эту мощь использовать в своих целях и делать совершенно новые устройства из существующих, а не выбрасывать их на помойку!
Сейчас смартфоны, подобные Fly из этого поста стоят копейки, а портировать на них прошивку можно без каких-либо трудностей. Я очень надеюсь, что после этого поста читатели попытаются сделать что-то своё из старых смартфонов, благо свои наработки я выкладываю на GitHub!
Показать полностью 22 2
AntonVime 2 месяца назад
ADB AppControl — для удаления неудаляемого на Android
ADB AppControl — это новая программа для ПК, которая позволит вам легко удалить системные приложения на Android устройстве при помощи adb, например Google сервисы, ненужные встроенные приложения.
Не требует Root.
Поддерживает Windows 7, 8, 8.1, 10, 11.
Списки что можно удалить есть на 4PDA.
Есть приложение для Android TV.


Показать полностью 2
YdachniiPrimer 2 месяца назад
Удачный пример почесушек
Больше видео
haoooooooos 3 месяца назад
Кто-то смотрит youtube с моего компьютера
Началось все пару месяцев назад. Кто-то смотрел совершенно рандомные видео с моего аккаунта.

В роликах не наблюдается совершенно никакой логики. Будто это смотрит бот.
Пробовал менять пароль, писать в поддержку, чистить от вирусов компьютер. Ничего не помогает. А теперь происходит следующее.. Открывается вторая вкладка Google Chrome и кто-то, или что-то просматривает видео в реальном времени. Вкладку никак нельзя раскрыть на полный экран. Просто существует два Google Chrome.
Если кто-то встречался с так же проблемой или знает, что делать, буду очень признателен
Показать полностью 1 1
Stan11109 3 месяца назад
Автоматическое включение VPN на iPhone
Двое человек в комментариях попросили рассказать, как сделать автоматическое включение. Ранее это было доступно только для ограниченно числа приложений, сейчас — свобода. За идею и возможность спасибо @storminside.
Острожно! Дальше много скринов!
Для начала заходим в приложен «Команды» переходим снизу в пункт «автоматизация» и создаем новую, нажав на «+» сверху справа.

Далее выбираем нужное приложение: instagram, TikTok, Safari и т.д.; обращаем внимание на пункт «Открыто»

Далее выбираем активность — в поиске вводим и выбираем VPN

Обязательно выбирайте какой именно vpn нужен:

Обязательно убрать «вредную» галку с пункта «спрашивать до запуска», а то заколебет и каждый раз придется уже из пункта уведомления подключать

Аналогичную автоматизацию создать для отключения, чтоб при закрытии впн вырубался.
Из замеченных сбоев. При создании одной из автоматизаций можно указать выполнение одной и той же активности: и при закрытии, и при открытии — в таком случае может не запуститься. Лечится снятием одной из галочек.

А и еще, опция появилась недавно. Тестировал на iOS 16.4.1. Но на относительно новой 16.1.2 пункт с впн отсутствует. В таком случае только обновляться.
Круто вообще, что такая штука появилась. Да и выпендриться можно среди близких и девушек, что вы погромист 😀 При быстром впн, будто и нет блокировок, и весь интернет свободен и вся жизнь впереди)
Показать полностью 6
ZooMMaX 3 месяца назад
Ответ на пост «Как с вероятностью 95% оценить, что ваше устройство взломано?»
Подробно.
В комментариях под оригинальным постом описаны пожалуй все минусы этой идеи и почему она не работает.
WireShark — узкоспециализированное, профессиональное программное обеспечение, которым пользуются сетевые инженеры, системные администраторы и т.д. Оно нужно для отслеживания целых потоков сетевого трафика. В нем есть масса сложных фильтров, и оно предоставляет уйму технической информации.
ВНИМАНИЕ! WireShark НЕ подходит для отслеживания вирусов.
WireShark в процессе работы за одну ночь соберет Вам список в несколько десятков тысяч IP адресов, если отслеживать ПК, а если отслеживать смартфон, то таких IP будет несколько сотен тысяч! Проверять такой список вручную — самоубийство.
Кроме всего прочего, оригинальный пост — просто пиар телеграм канала.
У меня тоже есть телеграм канал. Некоторые пикабушники его знают, как впрочем и мой никнейм. Так что ссылок на него не будет.
Поговорим о зловредах и способах защиты.
Сразу скажу, что тема очень обширна, и в одном посте ее не охватить полностью. Так что самое основное ниже, где я +/- сосредоточусь на устройствах (если зайдет, то позже напишу отдельно про интернет, приложения и т.д.)
Давайте рассуждать. Что нужно хакеру?
Ответ прост. Ему нужны деньги. Все. Я серьёзно.
Путем логических рассуждений не трудно понять векторы атаки.
Что хакеру НЕ интересно:
- Ваши фото из отпуска;
- Ваши видео, на котором вы пропалываете грядки;
- Ваши музыкальные файлы;
- и т.п.
Хакеру интересны те данные, которые впоследствии можно превратить в деньги.
- Документы, в которых есть конфиденциальные данные;
- Факт существования устройства;
- Вычислительная мощность вашего устройства.
Пожалуй это самое основное, чем может заинтересовать именно устройство, как таковое.
Теперь сделаем выводы из того, что хакеру интересно — как защищаться.
Согласно первому пункту интересов — не следует хранить на устройстве (особенно в НЕзашифрованном виде): логины, пароли, данные банковских карт и счетов, данные паспорта и снилс (упаси Вас хоть кто-то от хранения этих данных в виде фото), интимные фото и хоум-видео. Такие данные могут позволить Вас обокрасть, взять кредит, шантажировать, вымогать деньги.
Согласно второму и третьему пункту — не скачивайте непонятно что из не очень понятных источников, используйте антивирус (антивирус на устройстве должен быть всего один: когда их несколько, то они друг другу мешают). Самая частая угроза — это превращение устройства в бота, входящего в ботнет. Ботнеты, в основном, используются для совершения DDoS атак, реже (на сегодняшний день) — для майнинга криптовалют (касательно третьего пункта интересов хакера).
Хочу заметить, что зловред, делающий из устройства бота для DDoS атак, практически не заметен. Он может быть одной из программ, которой Вы полноценно пользуетесь и, скорее всего, никак Вам не помешает. Зловред для майнинга гораздо более заметен, и большинство антивирусов обнаружит такие зловреды. Отличительная особенность вируса-майнера — это не сетевой трафик, а усиленное потребление ресурсов процессора и/или видеокарты. Если антивирус его не находит, а потребление ресурсов есть — отнесите устройство к мастеру.
Есть такие вирусы, которые никто сразу поймать не сможет. Примером таких вирусов могут послужить вирусы-шифраторы (они сначала шифруют все файлы на устройстве, а потом требуют денег для того, чтобы эти файлы расшифровать). Это как ковид, увы! Случается резко, многим плохо — но всё это неизбежно.
Думаю, пока достаточно. Переваривайте.
Маякните, если продолжить. 😉
Показать полностью
JustPeople 3 месяца назад
Ответ на пост «Как с вероятностью 95% оценить, что ваше устройство взломано?»
То, что посоветовал ТС — лютая клоунада. Но если же вам действительно хочется проверить, а не сливается ли чего лишнего с вашего компьютера, то рекомендую обратить внимание на Simple Wall. Простой интерфейс, удобная настройка, открытый исходный код — то что нужно, чтобы закрыть все исходящие соединения для непрошенных гостей и чуть больше контролировать, что творится в вашей системе. Ссылочка на гитхаб для роднуль

Ну а если мы серьёзные ребята, хотим мониторить всё и вся, да ещё и не только на виндовом десктопе, но и на линуксовом сервере и маковском нотубуке — посмотрите в сторону Safing Postmaster. Он платный, но исходники так же доступны, работает на уровне ядра ОС и везёт с собой ещё вагон различных полезных фич. Сайт и гитхабчик так же прилагаю
Никаких ссылок на тг, дзен и прочую кошачью залупу, ван хандрен пёрсент авторский контент
Показать полностью 1 1
user7189881 3 месяца назад

Заголовок съел журавль

alllhimic 3 месяца назад
Подборка из 82-х полезных нейросетей

Чехов сказал: «Краткость — сестра таланта», поэтому держите подборку из 82-х полезных нейросетей, которые можно попробовать и чуточку ощутить будущее, которое уже наступило. Постарался разделить по категориям, чтобы вам было удобнее ориентироваться.
➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖
Необычные нейросети:
● The Dream Keeper — Оживи свой сон.
└ Визуализируйте свой сон по запросу
● AiOrNot — Полиция в сфере ИИ.
└ 95% распознает работу ИИ
● SkyBox Blockade Labs — Создай «мир».
└ Введи текст, ИИ сгенерирует «мир»
➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖
Работа с изображениями:
● 3DFY — Генератор 3D-объектов.
└ Напиши слово и получи 3D-объект
● Kandinsky 2.1 — Генератор картинок.
└ Генерируйте по текстовому запросу
● CleanUp — Удаляет водяные знаки.
└ Можно вырезать целые объекты
● Uncrop — Расширяет фон.
└ Напоминает Generative Fill
● Mokker — Генерирует фон.
└ Загрузи фото, ИИ заменит фон
● Anything AI — Меняет объекты/фон.
└ Пару кликов прямо в браузере
● FotoFix / Restore Photos / Face PR.
└ Улучшайте качество изображений
● VectoRizer — Векторизация фото.
└ Превращает в векторную графику
● PicWish / BigJpg — Повысить пиксели.
└ Сделайте фото в 4 раза лучше
● CountThings — Считает объекты.
└ ИИ считает объекты на фото
● Зрение Mail — Ч/Б в цветное.
└ Отреставрируйте старые фото
● Synthesys X — Копирует оригинал.
└ Создайте похожее изображение
● SwitchLight — Меняет свет.
└ Меняйте цвет, угол и интенсивность
● Runway — Генерирует фон для изображения.
└ По текстовым запросам
● Aalab — Фотошоп на максималках.
└ Имеется пробная версия на 3 дня
➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖
Работа со звуком:
● Audioread — Текст в аудио.
└ ИИ генерирует текст в аудио
● ElevenLabs / DupDub — Озвучка для видео.
└ Генератор качественной озвучки
● Whisper JAX — Аудио в текст.
└ Вставьте ссылку или видео = текст
● SonGR — Генератор музыки.
└ ИИ создаст текст, вокал и бит
● RiverSideFM — Аудио в текст.
└ Загрузите видео, получите текст
● VocalRemover — Удаление вокала.
└ Вырезать можно не только вокал
● Podcastle AI — Озвучка для видео.
└ Генератор качественной озвучки
● Ambient — Заметки после диалога.
└ Из речи собеседника (напр. в Zoom)
➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖
Работа с видео:
● Video Editing Tool — Создай ролик.
└ Загрузи картинки, получи ролик
● ZebraCat Al — Генератор роликов.
└ Генерируйте видео через текст
● Zeroscope — Генератор видео.
└ Генерируйте эпичные видео
● Kapwing AI — ИИ-видеоредактор.
└ Монтируйте с помощью ИИ
● VOT — Закадровый перевод.
└ Работает через Tampermonkey
● Eightify — Резюмирует видео.
└ Расширение для Google Chrome
● Descript — Редактор видео и аудио.
└ Редактируйте с ИИ, свои подкасты
➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖
Работа с документами:
● ChatGPT — Работа с документами.
└ Задавайте вопросы по документу
● Quizard Al — ИИ решит ваши тесты.
└ Загрузи фото вопроса, получи ответ
● ChatBCG — Генератор презентаций.
└ За 1 клик создавайте презентацию
● Explanepaper — Диплом вкратце.
└ Загрузи документ = Краткая статья
● OpenResume / KickResume — Резюме.
└ Генерируйте качественное резюме
● Roam Around — Генератор текста.
└ Задайте тему, ИИ пишет материал
● Tutorle.Al — ИИ по точным наукам.
└ 10 запросов/день на английском
➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖
Для программистов:
● 60SECsite — Генератор сайтов.
└ Напиши идею, ИИ сгенерирует сайт
● html.to.design — Генератор шаблонов.
└ Превратит любой сайт в Figma-шаблон (Figma на 2 года бесплатно)
● Piggy Magic — Генератор дизайна.
└ ИИ напишет дизайн сайта по запросу
● uKit AI — Генератор редизайна.
└ Проанализирует ЦА и напишет дизайн
● ChatGPT Prompts — Сборник промптов.
└ Настройте веб-дизайнера из ChatGPT
● Fronty — Конвертирует в HTML CSS.
└ Загрузите картинку или наброски
● Indigo.Design — Дизайн в код.
└ Конвертирует дизайн в код
● Website Builder — Конструктор сайтов.
└ Создайте сайт через ИИ-конструктор
● GhostWriter — Поиск ошибок в коде.
└ Ищет/комментирует ошибки в коде
● Adrenaline — Поиск ошибок в коде.
└ Работает в браузере и на устройстве
● Code GPT — Генерирует блоки кодов.
└ По вашим текстовым запросам
● Galileo Al — Генератор интерфейсов.
└ По вашим текстовым запросам
➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖
✅ Если хотите поблагодарить автора — подпишитесь в Telegram.