Marshal's channel
853 subscribers
288 photos
46 videos
8 files
328 links
About me: @ilya_marshal
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Редактирование (читать "превращение") сообщения с контактом в сообщение с изобажением баг Telegram сервера или фича?

Напомню, что при редактировании нельзя ничего прикреплять, если ничего не было прикреплено при отправке сообщения. Но, например, изменить изображение в сообщении на pdf разрешено.

Связка с гифки: InlineQueryResultArticle с InputContactMessageContent. Потом в CallbackQueryHandler edit_message_media по inline_message_id с InputMediaPhoto

UPD:

Не позволяют добавить фото (только обновляет текст через edit message media):
- InputLocationMessageContent
- InputTextMessageContent

Добавляют фото:
- InputVenueMessageContent
- InputContactMessageContent
Forwarded from tgcalls
First stable release — Telethon support, ability to implement custom MTProto bridges and more

Introduce

All libraries were updated to 1.0.0 version. Now pytgcalls supports both the most popular MTProto clients! Pyrogram and Telethon

Starting from 1.0.0 you are able to implement your own MTProto bridges as easy as you wish!

New installing options

Starting from installing the library, you need to choose with which client you will work.

For Pyrogram: pip3 install pytgcalls[pyrogram]
For Telethon: pip3 install pytgcalls[telethon]

Of course, you can manually install requires, but please pay your attention to minimal required version of these libs.

FAQ

Q: Will previous code base work with new version of library?
A: Everything is individual. I made backward compatibility for the old code, which will notify the user about outdated ways of creating instances, but this will not save you from dirty hacks that could be used in your code.

Q: How to use this library with Telethon?
A: We already have a code snippet in the main README file. Also, we have pretty and simple examples what works with Telethon too!

Q: What was done in this version?
A: In this version was optimized requests to MTProto, reworked system of connection, reconnection and disconnection. Now you can stop connection at any time and so on. Was added working with default_join_as value. Was fixed several bugs.

Happy coding ❤️
Forwarded from Telegram Crawler
New changes on Telegram sites

📝 core.t.tlinks.run/method/messages.forwardMessages
📝 core.t.tlinks.run/schema
📝 core.t.tlinks.run/schema/json
📝 core.t.tlinks.run/type/Updates

View diff on GitHub...
Период жизни — Telegram. Раньше проходили такое с сервисом Яндекс.Музыка. Когда-нибудь закончится и начнётся новый

Напоминаю, что каждый день посты тут
This media is not supported in your browser
VIEW IN TELEGRAM
Type Language Object

Переписал за несколько часиков чтение формата TLO. Если в двух словах, то у Telegram есть парсер Type Language схем. На выходе у него сериализованный объект в бинарном формате (подробнее о формате тут). Работать с этим куда приятнее, чем со своим собственным костыльным парсером. Всё преобразуется в объекты (конструкторы, функции, аргументы, типы и т.д.). Уже используя такие данные можно очень красиво написать генераторы кода для MTProto клиентов на шаблонах, например. Более подробно в README 🙃

Библиотека для Python и JavaScript/TypeScript.

https://github.com/MarshalX/tlo
Forwarded from Marshal's live
Резюмируя проект tlo видно, что вложены абсолютно все выходные. Python выступил первопроходцем. Код писался со включённым мозгом. В конце время ушло на поиск бага. В TypeScript’e мозг не включался потому что я переписывал уже со своей Python версии. То есть если набагал в первой реализации, то перенёс и во вторую 🤡 Мозг включился на пару минут, чтобы написать лучше, чем на Python’e. Потому что тут красиво можно использовать смещения у DataView и ArrayBuffer. В Python’e я сделал на срезах 🌚 Проблемы с TS тоже были. Пришлось погрузиться в то как тут всё устроено с точки зрения доставки пакетов. Их упаковки. Нескольких загрузочных модулей (esm, umd. На остальные забил). Каждый требует свой вариант сборки. Ко всему прочему ещё разные версии ES. Познакомился с rollup. Офигенная штука с полезными плагинами для решения проблем, добавления поддержки ts, babel и пр. А от самого TS’a новых знаний не получил. Только, опять же, узнал как декларации типов присоединяют к модулям существующим. Как их доставляют в npm
Forwarded from OpenSource ❤️
pytgcalls - работа с голосовыми чатами Telegram

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

GitHub

#python #cpp
Больше года я оставался backend разработчиком для VR приложений который ни разу не был в VR'e. Моя компания решила исправить этот момент и заслать мне standalone шлем. Самые первые впечатления о виртуальной реальности я записал в live канале. А сейчас я странствую по различным приложениям, местами нашим конкурентам, изучая предметную область для будущих и текущих проектов компании
Forwarded from Marshal's live
Media is too big
VIEW IN TELEGRAM
bigscreen

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

10/10
Я иногда принимаю музыкальные ванны вызывая у себя фриссон. Это блаженство по ощущениям лучше любого секса. Ложусь, включаю громка-громко любимую классическую музыку и наслаждаюсь. Мурашки за мурашами, уши так и норовят сместиться на затылок, слёзы бьют ручьём.

Помню как меня позвали в костёл на какую-то новогоднюю службу. Пришлось потом объяснять почему я сидел и рыдал под органную музыку.

Конечно фриссон вызывает не только классическая музыка (да и не только музыка). Яркий пример это Someone Like You от Adele. Только что переслушал. Пробило с первых нот.

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

А как у вас обстоят дела с удовольствием от музыки и прекрасного?
Marshal's channel
Что в вашем внерабочем времени?
А что лучше, что хотелось бы?)
Forwarded from Йобушкин
Media is too big
VIEW IN TELEGRAM
00:00 — Всем привет
00:25 — Это Йобушкин
01:10 — Фичи Телеги:
- 01:38 — Новое форматирование текста (спойлер)
- 02:13 — Переводы сообщений с разных языков
- 02:50 — QR коды для каналов
03:30 — В гостях (реально в гостях) Antonio Marreti шеф-редактор @tginfo
- 04:35 — Лучший малоизвестный канал: @yobushkin (редакция не разделяет эту позицию)
- 04:50 — Код Дурова (@D_code) — главное СМИ про Telegram

В этом выпуске я особенно внимательно читаю:

@tginfo
@D_code
@lobushkin
@laoself

Это пародийный ролик на выпуск Лобушкина от 19.12.2021
Хилимся-живём!

Картинка нравится у @tgcallslib (с нуля за год).

Остальные:
- @music_yandex_channel
- @marshalr
- @ilya_marshal (завёл в июне. Зачем туда подписываются — загадка).
- @tgcrawl (завёл в апреле)

Всех с наступающим Новым Годом
Marshal's channel
Мой 2020 - мост между студ жизнью и РАБотой Прочитал свой пост за 2019 и просто вааау. Куча воспоминаний. Не знаю удалось ли переплюнуть самого себя, но, как минимум, свои вопросы я решил. Стал ли год глобальнее? Нууу, лол, трында в жизни поменялось, офк…
Мой 2021 - год tgcalls и первый год без учёбы!

Перечитал пост за прошлый год, вот это да конечно. Мне даже особо нечем крыть прошлогоднего Илью, но кое-что есть 🤤

Пожалуй, просто списком, а не по месяцам. Попытался в хронологическую последовательность:
⁃ Довёл до первого стабильного релиза Yandex Music API перед тем как выкатывать новый проект из приватного репозитория.
⁃ Получил от Польши положительное решение по моему делу (дополнительная защита).
⁃ Взял отпуск на недельки две ради публичного релиза tgcalls.
⁃ Запустил первый проект на английском собрав сообщество, выпустив библиотеку в релиз после открытого бета теста без ожидания в целый год (как это было с ЯМ). На опыте вышло красиво и куда лучше ЯМ. Дока, ридми, примеры, CI и всё остальное уже было в проекте с самого старта.
⁃ Проникся WebRTC в совокупности с Telegram, позалипал в C++. Написал расширение для Python’a.
⁃ Собрал колеса на pypi под все операционные системы и архитектуры (ARMv7 прости, но потом) с помощью QEMU, manylinux и GitHub Actions.
⁃ Отходил на языковые курсы польского (2 месяца).
⁃ Отходил на языковые курсы английского (3 месяца).
⁃ Купил мак.
⁃ Удивительным образом после опыта с WebRTC на личном проекте начал заниматься им на работе. Разрабатывали онлайн конференции в и из виртуальной реальности. Люди без VR’a могут погрузиться в весь флекс интерактивного обучения подключившись с любого устройства. Версия первая, браузерый вебртс.
⁃ Побаловался кофеином и л-теанином. Сейчас в исключительных случаях пью.
⁃ Опубликовал проект за выходные: @tgcrawl.
Обустроил рабочее место дома купив там трекпад, клаву.
⁃ Начал тестировать live streams в Telegram и готовиться добавлять поддержку видео в библиотеку.
⁃ Поработал с новой платформой Verizon для образования на работе.
⁃ Вакцинировался.
⁃ Первый раз сходил на чистку лица и начал его увлажнять кремом и т.д.
⁃ Отправился на море почиллив и обыграв мем для tgcalls сообщества.
⁃ Опубликовал проект за выходные: Type Language Object.
Пил энергетик каждый день, рекордное сидение дома за всю жизнь (полтора месяца не выходя) и кодинг поддержки видео для библиотеки.
⁃ Разобрался с умными указателями вместе с нативным расширением для Python’a (проект до этого страдал от сегфолтов).
⁃ С работы заслали VR шлем, первый раз попробовал что это такое, изучил возможности и начал предлагать идеи поняв что происходит и какие возможности у этого есть.
⁃ Получил польское ВНЖ, открыл банковские счета, провёл домашний интернет, перешёл везде на польский регион у сервисов.
⁃ Купил айфон, уши, часы, да даже карандаш. Короче скупил весь магазин эппла.
⁃ Съездил в Германия на дней 10.
⁃ Подсел на кейтеринг.
⁃ Изучил судоку и его модификации, написал утилиты для анализа существующих уровней и их решений, консольный разноцветный дебаг для необычных групп ячеек (не 3х3 квадраты, а произвольные). Генерация судоку. Разработка системы очков для судоку.
⁃ Разочарование в нужде личных проектов, полная остановка всего. Уход в лекции по алгоритмизации, структурам. Решение задач с LeetCod’a.
⁃ WebRTC для VR версия вторая. Уже нативная, так как понадобилось независимость от платформы (привет standalone шлемы, вы классные).
⁃ С марта соблюдаю режим сна. С ~0 до ~8. Трекинг сна, его улучшение и прочие бонусы от apple watch.
⁃ Провалы года: проект с tdlib биндингом, поддержка tgcalls со стороны Telegram, чистая Python реализация WebRTC не смогла в Telegram звонки, производительность pytgcalls.

Сорян за весьма сумбурный, неполный список и маленькое количество ссылок. На каждый пункт можно сослаться на пост из live канала... Очень много нового для себя открыл, изучил и применил за этот год, но с каждым годом я ощущаю себя всё тупее и тупее, такое ощущение, что знания с годами сжимаются и ничего не остаётся 😅

Я точно знаю с чего начну свой 22й 😏 И что-то это вновь open source, НО!! НО!! Сюрприз-сюрприз, наконец-то без Telegram! Но с WebRTC. Ох он мне понравился.

Всех с наступающим, а кого-то уже с наступившим!

Сделайте свой следующий год ЛУЧШЕ, ЧЕМ ЭТОТ!!!

Итоги прошлых лет: 20202019
Channel photo updated
Channel name was changed to «Marshal's channel»
Python WebRTC

Ровно месяц назад, 3 января, я сделал первый коммит в закрытый репозиторий и сегодня готов поделиться им со всеми. Суммарно на проект было потрачено чуть больше 75 часов (спасибо WakaTime).

Сам проект представляет собой Python расширение написанное на C++, которое работает с нативной WebRTC библиотекой и соединяет (биндит) два языка. Что позволяет в конечном итоге использовать оригинальную WebRTC прямо из Python.

Я стараюсь соблюдать W3C спецификацию, но с поправками на Python, чтобы не возникало много вопросов по использованию библиотеки и не надо было придумывать своего (как и писать документацию с нуля).

Работы ещё очень много. Очень... Я поработал над проектом 19 дней и каждый день описывал в своём лайв канале. Там целая цепочка из сообщений, а вот её текущий конец.

https://github.com/MarshalX/python-webrtc
Следим за Telegram

Ровно год назад был запущен проект @tgcrawl. Изначально задумывалось отслеживать только изменения сайтов, но этого оказалось мало. Так проект лишился “Web” в названии и…

Вот чем он теперь занимается:
1. Отслеживает ресурсы бета-версий клиента под Android. Строки локализации и карту ресурсов.
2. Распаковывает Assets.car файл бет клиента для macOS занося хэши ассетов и ресурсов под GIT. Файлы локализации тоже на месте.
3. Следит за изменениями ответов некоторых MTProto методов связанных с конфигурацией клиентов.
4. Ведёт историю хэшей всех медиа файлов загруженных на сайты.
5. Собирает постраничную информацию о строках доступных на платформе перевода.
6. Анализирует страницы сайтов и JS скрипты в поисках скрытых и новых ссылок.
7. Версионирует HTML, CSS, JS, JSON и прочий контент с текстовым содержимым.

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

Поднимаем дата майнинг в тг с колен!