Раньше тонна такого была. Вообще, вы же даже сами используете base64, вот так любые, в том числе, бинарные данные и отправляются. Причем, если использовать sms как транспорт, то нормальное e2e с автоматическим обменом ключами можно использовать.
Вообще, я бы сделал в приложении поддержу стандартного api для транспортов, а вот сами транспорты уже можно было бы собирать разные, sms, email, matrix, cloud, да что угодно.
И не хватает десктопных версий под мак и лин тогда уж.
Концепция "одного контейнера" сразу запирает нас как раз в одном контейнере и усложняет дальнейшее масштабирование, если это понадобится (допустим, все больше родственников присоединяется), приходится уже отдельно расширять медиа-хранилище, или выносить livekit отдельно, а когда все уже в одном контейнере, получается боль. Думаю, что как будет свободное время - попробую также допилить функции установки самого докера и настройку nftables, чтоб реально, в одну команду все было, хотя чем дальше рассуждаю, тем больше нюансов вижу: по идее, нужно ещё настраивать ssh по ключу, а ещё лучше с knock-knock (забыл как называется схема с условными сигналами для разрешения подключения по ssh). В общем, тут подумать нужно, потому как уже больше похоже как раз на готовый сервис от провайдера.
Хех, "такая же коробочка" окупится сильно быстрее, чем за год, если считать по их тарифу 3500 в год, благо, есть варианты и подешевле, да и не требуется для семейной связи таких ресурсов.
Они как конференция, но звонок в приложение поступает, так что все ок. Из минусов - всегда по умолчанию видеорежим и нет нормального звонка без громкой связи.
Сырой, аудиозвонков нет, удобство поиска пользователей сомнительное, интерфейс со всеми этими комнатами тоже откуда-то из нулевых. Нельзя назначить имена контактам, хотя, это, пожалуй, проблема самого протокола.
Да уж, люди начинают мыслить одинаково. Буквально на днях допилил небольшой проект, который на выходе даёт один bash скрипт в одну команду устанавливающий в docker synapse + livekit (да, настраивал сразу под свежий стандарт звонков) + certbot, хотя, конечно, нужен вариант "для домохозяек", чтобы в один клик сразу запускалось. Для моей поделки требуется только наличие docker и прав админа, ну и умение настраивать файерволл, если есть желание. Все полностью запускается в контейнерах. Не стал включать конфигурирование веб-улмента, хотя, говорят, довольно просто там все, может, добавлю, если кому потребуется. Для семейных звонков и переписки вполне хватает старой доброй конфигурации 2 ядра 2 гига, но для надёжности добавил ещё 2 гига свопа, который, к слову, пока даже и не использовался. Ссылку давать не буду, тут рекламу, даже собственных разработок не любят, но кому интересно найдут на гитхабе проект self-hosted-matrix.
Вот только не надо про Django, у нас в компании с этого тормознутого монстра пытаются уже год на микросервисы на fastapi перейти (результат пока сильно ограниченный). И проблема не в самом Django, он хорош для прототипирования, но потом бизнес решает, что у него не прототип, а отличная платформа, которую нужно поддерживать и развивать, ровно до тех пор, пока сам фреймворк не начинает вставлять палки в колеса.
Тоже испытываю смешанные чувства к fsd, тоже стремлюсь отделить логику от содержания, результатом моих изысканий стал проект VueEnt (доступен на GitHub), тут пару статей про него писал, есть отличия, нет из коробки use-cases или flow, но реализуемо, если нужно. Там, все же опора на реактианость Vue. Но есть много общего. Возможно, вам будет интересно ознакомиться. Что касается вашего подхода, то попытка перетащить стриминг в веб выглядит интересно, но интересно следующее: насколько высок оверхед, который приходится платить за соблюдение вашего подхода? В последнее время испытываю много боли в попытках оптимизировать работу фронтенда, а виной всему огромные бандлы.
Возможно я ошибаюсь, но, насколько помню, Go на стеке размещает не только примитивные типы. Структура тоже может быть на стеке, если не возвращать указатель на созданную внутри функции структуру.
Парочка go-специфичных вещей типа того, что если создать переменную внутри функции на стэке, а потом вернуть указатель на нее, то она будет перемещена в кучу, при этом передача указателя на локальную переменную при обычном вызове функции такого эффекта не имеет и работает также, как передача указателя в C. И да, про выделение статичного куска памяти и ручное управление выделением освобождением, минуя сборщик мусора, тоже было бы интересно почитать, а ведь такое есть.
Указатели нужны чтобы обойти ограничение передачи аргументов в функцию по значению. Если просто передать в функцию целочисленную переменную, например, то изменение аргумента внутри функции никак не повлияет на переменную снаружи, так как при вызове значение было просто скопировано. Передача же указателя копирует значение указателя - адрес ячейки памяти, а имя адрес, можем изменить исходную переменную уже внутри функции. То есть в обоих случаях аргументы передаются по значению, только в первом значение - само число, а во втором - адрес переменной.
На самом деле, сам по себе ассемблер достаточно прост, но именно из-за его простоты, если не сказать примитивности, на нем довольно сложно писать большие проекты, так как отсутствие абстракций увеличивает когнитивную нагрузку.
А прототипное наследование - это не наследование от экземпляра? Про прикладной смысл согласен - он около нулевой. Все ждал, что написано будет что-то вроде "можно использовать return для раннего выхода из функции-конструктора". Статья больше похожа на графоманию, по моему мнению.
Так ПО и не закрыли, исходники ядра доступны, можно делать форк. А политика условного сообщества, которое, по факту уже давно является околокоммерческой организацией - это немного другое. Принимать патчи от людей определенной национальности или гражданства (так как Russian это и русский, и россиянин) лицензия не обязывает. Ну а сам Линус успешно прошел путь от F*** NVidia, до "я вообще-то финн, и вы понимаете, как я отношусь к российской агрессии". Как сейчас модно говорить: выводы делайте сами. Придется допиливать Hurd ))
Раньше тонна такого была. Вообще, вы же даже сами используете base64, вот так любые, в том числе, бинарные данные и отправляются. Причем, если использовать sms как транспорт, то нормальное e2e с автоматическим обменом ключами можно использовать.
Вообще, я бы сделал в приложении поддержу стандартного api для транспортов, а вот сами транспорты уже можно было бы собирать разные, sms, email, matrix, cloud, да что угодно.
И не хватает десктопных версий под мак и лин тогда уж.
Концепция "одного контейнера" сразу запирает нас как раз в одном контейнере и усложняет дальнейшее масштабирование, если это понадобится (допустим, все больше родственников присоединяется), приходится уже отдельно расширять медиа-хранилище, или выносить livekit отдельно, а когда все уже в одном контейнере, получается боль. Думаю, что как будет свободное время - попробую также допилить функции установки самого докера и настройку nftables, чтоб реально, в одну команду все было, хотя чем дальше рассуждаю, тем больше нюансов вижу: по идее, нужно ещё настраивать ssh по ключу, а ещё лучше с knock-knock (забыл как называется схема с условными сигналами для разрешения подключения по ssh). В общем, тут подумать нужно, потому как уже больше похоже как раз на готовый сервис от провайдера.
Добро пожаловать в Россию, где давно уже толком ничего не работает, а мобильный интернет рандомно отключается по районам.
Хех, "такая же коробочка" окупится сильно быстрее, чем за год, если считать по их тарифу 3500 в год, благо, есть варианты и подешевле, да и не требуется для семейной связи таких ресурсов.
Они как конференция, но звонок в приложение поступает, так что все ок. Из минусов - всегда по умолчанию видеорежим и нет нормального звонка без громкой связи.
А какие ПД хранит сервер matrix не подскажете?
Сырой, аудиозвонков нет, удобство поиска пользователей сомнительное, интерфейс со всеми этими комнатами тоже откуда-то из нулевых. Нельзя назначить имена контактам, хотя, это, пожалуй, проблема самого протокола.
Батарейка телефона вам спасибо за все эти p2p не скажет, да и технические ограничения сильно портят пользовательский опыт.
Требования начинаются, когда к переписке присоединяются видеозвонки, а так да, жрет немного, версия на rust, говорят, ещё менее прожорлива.
Да уж, люди начинают мыслить одинаково. Буквально на днях допилил небольшой проект, который на выходе даёт один bash скрипт в одну команду устанавливающий в docker synapse + livekit (да, настраивал сразу под свежий стандарт звонков) + certbot, хотя, конечно, нужен вариант "для домохозяек", чтобы в один клик сразу запускалось. Для моей поделки требуется только наличие docker и прав админа, ну и умение настраивать файерволл, если есть желание. Все полностью запускается в контейнерах. Не стал включать конфигурирование веб-улмента, хотя, говорят, довольно просто там все, может, добавлю, если кому потребуется. Для семейных звонков и переписки вполне хватает старой доброй конфигурации 2 ядра 2 гига, но для надёжности добавил ещё 2 гига свопа, который, к слову, пока даже и не использовался. Ссылку давать не буду, тут рекламу, даже собственных разработок не любят, но кому интересно найдут на гитхабе проект self-hosted-matrix.
Вот только не надо про Django, у нас в компании с этого тормознутого монстра пытаются уже год на микросервисы на fastapi перейти (результат пока сильно ограниченный). И проблема не в самом Django, он хорош для прототипирования, но потом бизнес решает, что у него не прототип, а отличная платформа, которую нужно поддерживать и развивать, ровно до тех пор, пока сам фреймворк не начинает вставлять палки в колеса.
Тоже испытываю смешанные чувства к fsd, тоже стремлюсь отделить логику от содержания, результатом моих изысканий стал проект VueEnt (доступен на GitHub), тут пару статей про него писал, есть отличия, нет из коробки use-cases или flow, но реализуемо, если нужно. Там, все же опора на реактианость Vue. Но есть много общего. Возможно, вам будет интересно ознакомиться. Что касается вашего подхода, то попытка перетащить стриминг в веб выглядит интересно, но интересно следующее: насколько высок оверхед, который приходится платить за соблюдение вашего подхода? В последнее время испытываю много боли в попытках оптимизировать работу фронтенда, а виной всему огромные бандлы.
Возможно я ошибаюсь, но, насколько помню, Go на стеке размещает не только примитивные типы. Структура тоже может быть на стеке, если не возвращать указатель на созданную внутри функции структуру.
А где win98 в списке?!
Парочка go-специфичных вещей типа того, что если создать переменную внутри функции на стэке, а потом вернуть указатель на нее, то она будет перемещена в кучу, при этом передача указателя на локальную переменную при обычном вызове функции такого эффекта не имеет и работает также, как передача указателя в C. И да, про выделение статичного куска памяти и ручное управление выделением освобождением, минуя сборщик мусора, тоже было бы интересно почитать, а ведь такое есть.
Указатели нужны чтобы обойти ограничение передачи аргументов в функцию по значению. Если просто передать в функцию целочисленную переменную, например, то изменение аргумента внутри функции никак не повлияет на переменную снаружи, так как при вызове значение было просто скопировано. Передача же указателя копирует значение указателя - адрес ячейки памяти, а имя адрес, можем изменить исходную переменную уже внутри функции. То есть в обоих случаях аргументы передаются по значению, только в первом значение - само число, а во втором - адрес переменной.
На самом деле, сам по себе ассемблер достаточно прост, но именно из-за его простоты, если не сказать примитивности, на нем довольно сложно писать большие проекты, так как отсутствие абстракций увеличивает когнитивную нагрузку.
А прототипное наследование - это не наследование от экземпляра? Про прикладной смысл согласен - он около нулевой. Все ждал, что написано будет что-то вроде "можно использовать return для раннего выхода из функции-конструктора". Статья больше похожа на графоманию, по моему мнению.
Нацизм не подразумевает автоматом антисемитизм.
Так ПО и не закрыли, исходники ядра доступны, можно делать форк. А политика условного сообщества, которое, по факту уже давно является околокоммерческой организацией - это немного другое. Принимать патчи от людей определенной национальности или гражданства (так как Russian это и русский, и россиянин) лицензия не обязывает. Ну а сам Линус успешно прошел путь от F*** NVidia, до "я вообще-то финн, и вы понимаете, как я отношусь к российской агрессии". Как сейчас модно говорить: выводы делайте сами. Придется допиливать Hurd ))