- Регистрация
- 5 Ноя 2019
- Сообщения
- 732
- Реакции
- 12
- Баллы
- 62
- Возраст
- 21
- Веб-сайт
- kailhet.github.io
- Пол
- Мужской
- Семейное положение
- Свободен(а) как ветер
- Род занятий
- Веб разработчик
Доброго времени суток.
Сегодня я поведаю вам историю, которая произошла со мной в течение очень долгого времени. А именно - речь пойдет про Яндекс Музыку и ее интеграцию с Discord, чтобы сделать активность (скрин)
Загорелся я данной идеей еще до того, как появился Новый Клиент. Прошел через огромное количество страданий, боли и мучений и все таки, не без помощи русских разработчиков, в основном Александра Черкашина (GitHub), за что огромнейшая благодарность за помощь и терпение. (хотя он наверняка это никогда не прочитает)
Проект, кстати, лежит в открытом доступе на моем GitHub
Да, в моей реализации были проблемы и баги, которые нельзя было исправить из-за самой Яндекс Музыки и отсутствия официального НОРМАЛЬНОГО API, но самое главное, что все работало.
После выхода Нового Клиента я решил, что нужно обновить скрипт и добавить его поддержку. Однако на тот момент данной возможности не было, т.к. это бета клиент, в котором до сих пор нет всех функций. Но сегодня, я почитал беседы в тг, поспрашивал таких же, как я, разработчиков, и узнал о том, что появилась возможность получения треков из Нового Клиента, чему я очень обрадовался.
Целый день сегодня я сидел и кропотливо читал различные документации, спрашивал людей, т.к. по Новому Клиенту информации в интернете просто нет, были лишь намеки на то, что когда-нибудь напишут API сообщества на Python.
По итогу я пришел к 2 вариантам реализации моей задумки:
1. Перехват HTTP запросов
Для данной реализации требуется создать прокси сервер и перенаправлять трафик через него для перехвата
Проблема в том, что тк нельзя прописать прокси сервер в самом клиенте - придется при каждом обновлении клиента лезть в код
можно сделать перехват запросов абсолютно всего, что есть на пк, но опять же, проблема в том, что из-за однопоточности ноды - скорость работы пк будет урезаться.
На счет возможности многопоточности ноды - многопоток в ней полезен только для распределения нагрузки по процессору, а в случае с запросами это I/O (input/output) - это не сработает и даже в оф мануале написано, что можно не пытаться
2. Использование WebSockets - в приложении их на данный момент просто-напросто нет
Печально осознавать, но на данный момент реализовать интеграцию Discord и Новый Клиент не резонно.
Сегодня я поведаю вам историю, которая произошла со мной в течение очень долгого времени. А именно - речь пойдет про Яндекс Музыку и ее интеграцию с Discord, чтобы сделать активность (скрин)
Загорелся я данной идеей еще до того, как появился Новый Клиент. Прошел через огромное количество страданий, боли и мучений и все таки, не без помощи русских разработчиков, в основном Александра Черкашина (GitHub), за что огромнейшая благодарность за помощь и терпение. (хотя он наверняка это никогда не прочитает)
Проект, кстати, лежит в открытом доступе на моем GitHub
Да, в моей реализации были проблемы и баги, которые нельзя было исправить из-за самой Яндекс Музыки и отсутствия официального НОРМАЛЬНОГО API, но самое главное, что все работало.
После выхода Нового Клиента я решил, что нужно обновить скрипт и добавить его поддержку. Однако на тот момент данной возможности не было, т.к. это бета клиент, в котором до сих пор нет всех функций. Но сегодня, я почитал беседы в тг, поспрашивал таких же, как я, разработчиков, и узнал о том, что появилась возможность получения треков из Нового Клиента, чему я очень обрадовался.
Целый день сегодня я сидел и кропотливо читал различные документации, спрашивал людей, т.к. по Новому Клиенту информации в интернете просто нет, были лишь намеки на то, что когда-нибудь напишут API сообщества на Python.
По итогу я пришел к 2 вариантам реализации моей задумки:
1. Перехват HTTP запросов
Для данной реализации требуется создать прокси сервер и перенаправлять трафик через него для перехвата
Проблема в том, что тк нельзя прописать прокси сервер в самом клиенте - придется при каждом обновлении клиента лезть в код
можно сделать перехват запросов абсолютно всего, что есть на пк, но опять же, проблема в том, что из-за однопоточности ноды - скорость работы пк будет урезаться.
На счет возможности многопоточности ноды - многопоток в ней полезен только для распределения нагрузки по процессору, а в случае с запросами это I/O (input/output) - это не сработает и даже в оф мануале написано, что можно не пытаться
2. Использование WebSockets - в приложении их на данный момент просто-напросто нет
Печально осознавать, но на данный момент реализовать интеграцию Discord и Новый Клиент не резонно.
Я в курсе о существовании проекта DYMusic, мне данный вариант не подходит по 3 причинам:
1. Это КЛИЕНТ Яндекс Музыки, я же реализовываю простую утилиту для связи с дискордом
2. Данный проект создан на основе старого клиента, что мне, опять же, не подходит. Для старого клиента я все уже давно реализовал
3. Данный проект нарушает как правила Яндекс Музыки (сторонний клиент), так и TOS Discord (селф боты)
P.S. Я общался с автором данной модификации - он не заинтересован в помощи или идеях от меня. Хотя могло бы что-то получиться, наверное...
1. Это КЛИЕНТ Яндекс Музыки, я же реализовываю простую утилиту для связи с дискордом
2. Данный проект создан на основе старого клиента, что мне, опять же, не подходит. Для старого клиента я все уже давно реализовал
3. Данный проект нарушает как правила Яндекс Музыки (сторонний клиент), так и TOS Discord (селф боты)
P.S. Я общался с автором данной модификации - он не заинтересован в помощи или идеях от меня. Хотя могло бы что-то получиться, наверное...
Последнее редактирование: