LINUX.ORG.RU

Первый альфа выпуск Protox, Tox клиента для децентрализованного обмена сообщениями для мобильных платформ.

 , protox, , toxcore


2

2

Protox - мобильное приложение для обмена сообщениями между пользователями без участия сервера на основе протокола Tox (toktok-toxcore). На данный момент поддерживается только OC Android, однако, так как программа написана на кросс-платформенном фреймворке Qt с использованием QML, в будущем возможно портировать и под другие платформы. Программа является альтернативой Tox клиентам Antox, Trifa, Tok - почти все из которых были заброшены.

В альфа версии НЕ реализованы cледующие возможности протокола:

  • Отправка файлов и аватаров. Самая высокоая по приоритету задача в следующих версиях.
  • Поддержка конференций (групп).
  • Видео и голосовое общение.

Известные проблемы в альфа версии:

  • Поле ввода сообщений при использовании переносов строк не имеет скроллбара и имеет бесконечную высоту. Пока что не удалось решить эту проблему.
  • Неполная поддержка форматирований сообщений. На самом деле в Tox протоколе не существует стандарта форматирования, однако аналогично клиенту для рабочего стола qTox поддерживается форматирование: ссылок, жирный текст, подчеркивание, зачеркивания, цитаты.

Чтобы приложение не отключалось от сети, необходимо убрать ограничение активности приложения в настройках OC Android.

>>> Подробности

★★★★★

Проверено: anonymous_incognito ()
Последнее исправление: anonymous_incognito (всего исправлений: 4)
Ответ на: комментарий от eternal_sorrow

В gtkmm тоже есть сигналы и слоты, но нет moc.

Почему их нет в основной графической библиотеке, а все фичи в GTK сделаны мелкими расширениями? Это не вы мне только что затирали про фрагментированность? К тому же, использовать сигналы и слоты, и подобные им фичи на чистом C в несколько раз сложнее, как и писать UI на любом низкоуровневом языке в принципе, поэтому были придуманы moc и uic. Ах, да, С++ не_нужен же. (c)

P.S. В Qt, конечно, можно писать интерфейс на обычном C++, но большинство обычно рисуют графический интерфейс в .ui файлах, а потом uic-ом собирают в код, либо используют QML язык для создания интерфейса. Оба варианта хорошие и обоих в GTK не существует.

Qt фундаментально лучше GTK, но GTK фанатикам это хрен докажешь. К тому же GTK не имеет никакого отношения к мобильным приложениям.

Skullnet ★★★★★
() автор топика
Последнее исправление: Skullnet (всего исправлений: 11)
Ответ на: комментарий от Skullnet

Почему их нет в основной графической библиотеке,

Почему нет? Есть, правда не в GTK, а в Glib, и называются неколько иначе. g_signal_connect коннектит коллбек к сигналу. В целом, это сделано там довольно многословно, как и всё в C.

а все фичи в GTK сделаны расширениями?

GTKmm это не расширение а биндинг GTK к C++. Это к слову про

Ах, да, С++ не_нужен же. (c)

В Qt, конечно, можно писать интерфейс на обычном C++, но большинство обычно рисуют графический интерфейс в .ui файлах,

в GTK не существует.

Существует. Когда то давно для этого использовалась libglade, но уже давно это встроенная фича GTK и называется она GtkBuilder

eternal_sorrow ★★★★★
()
Ответ на: комментарий от eternal_sorrow

Существует. Когда то давно для этого использовалась libglade, но уже давно это встроенная фича GTK и называется она GtkBuilder

Который все равно менее юзабелен, чем аналогичная реализация в Qt потому что:

  1. Сигналы плохо проработаны и жалобы на это из каждого утюга.

  2. В GtkBuilder интерфейс пишется не на нормальном языке, а на .xml (!) при этом не предоставлен софт, чтобы визуально редактировать макет интерфейса, который даже у glade был, но glade сам по себе плох.

Skullnet ★★★★★
() автор топика
Последнее исправление: Skullnet (всего исправлений: 1)
Ответ на: комментарий от eternal_sorrow

Есть, правда не в GTK, а в Glib, и называются неколько иначе. g_signal_connect коннектит коллбек к сигналу. В целом, это сделано там довольно многословно, как и всё в C.

Вот именно, заставляем пользователя мучиться с зависимостями. Это одна из причин, почему GTK нельзя нормально использовать нигде, кроме как на линуксе.

Skullnet ★★★★★
() автор топика
Ответ на: комментарий от Skullnet

Сигналы плохо проработаны и жалобы на это из каждого утюга.

С чего ты это взял?

пишется не на нормальном языке

Какой такой тебе нужен нормальный язык для декларативного описания интерфейса? И разве в Qt .ui файлы не на xml написаны?

при этом не предоставлен софт, чтобы визуально редактировать макет интерфейс

А glаde на что? GtkBuilder это тот же самый libglade, включённый в кодовую базу GTK с некоторыми изменениями. И для редактирования его файлов используется тот же самый glade. И чем это он плох?

eternal_sorrow ★★★★★
()
Ответ на: комментарий от Skullnet

пользователя мучиться с зависимостями

Никто никого не заставляет. О каких зависимостях речь? Glib? Ну так и Qt не единый пакет, а в большинстве дистрибутивов разбит на QtCore, QtGui и т.д. Заставляем мучиться с зависимостями?

eternal_sorrow ★★★★★
()
Ответ на: комментарий от eternal_sorrow

Какой такой тебе нужен нормальный язык для декларативного описания интерфейса? И разве в Qt .ui файлы не на xml написаны?

Да, но в QtCreator есть UI Designer, а для QML он вообще не нужен.

А glаde на что? GtkBuilder это тот же самый libglade, включённый в кодовую базу GTK с некоторыми изменениями. И для редактирования его файлов используется тот же самый glade. И чем это он плох?

В последний раз когда я писал на GTK, GTK3 не существовало. Но и тогда glade крашился, тормозил и юзать его было достаточно трудно по сравнению с Qt где все в проекте делается очень просто. Поэтому разработчики GTK приложений в 90% случаев плевали на него и писали GUI вручную.

С чего ты это взял?

Ну, во-первых, все сигналы нужно подключать ручками, а в Qt оно все делает само и весь это код в Qt очень легко сопровождать. Во-вторых, gtkmm сделал ту же ошибку, что и c++ - он переусложнен, поэтому кол-во приложений, которые его использовали было крайне мало. Как ситуация сейчас, я не знаю, но GTK не двигается в сторону прогресса, а только в сторону желания левой пятки разработчиков гнома.

Skullnet ★★★★★
() автор топика
Последнее исправление: Skullnet (всего исправлений: 2)
Ответ на: комментарий от eternal_sorrow

Никто никого не заставляет. О каких зависимостях речь? Glib? Ну так и Qt не единый пакет, а в большинстве дистрибутивов разбит на QtCore, QtGui и т.д. Заставляем мучиться с зависимостями?

В Qt зависимости разбиты логически. Если нам не нужен интерфейс и у нас консольное приложение, можно выбросить QtGui. Если нам не нужен сетевой стек, мы выбрасываем QtNetwork и так далее. В GTK целый огород библиотек, который не позволяет ему быть легко кросс-платформенным, хотя это не единственная причина.

Skullnet ★★★★★
() автор топика
Последнее исправление: Skullnet (всего исправлений: 1)
Ответ на: комментарий от Skullnet

Не понимаю. В стеке GObject библиотеки точно так же разбиты логически. В чём проблема собрать для других платформ нужные библиотеки?

eternal_sorrow ★★★★★
()
Ответ на: комментарий от Skullnet

В последний раз когда я писал на GTK, GTK3 не существовало.

Ну ты вспомнил тоже.

Во-вторых, gtkmm сделал ту же ошибку, что и c++ - он переусложнен

Не вижу, где он переусложнён

GTK не двигается в сторону прогресса, а только в сторону желания левой пятки разработчиков гнома

это твоё мнение. я вижу прогресс, почему ты его не видишь - вопрос.

eternal_sorrow ★★★★★
()
Последнее исправление: eternal_sorrow (всего исправлений: 1)
Ответ на: комментарий от eternal_sorrow

не нужно, к сожалению… а жаль, хорошего клиента tox очень не хватает

В очередной раз убеждаюсь в неадекватности пятизвёздочных регистрантов. QT единственный верный фреймворк, все остальные от шайтана. Аргументы что qt не отображается на gtk это проблемы gtk.

anonymous
()
Ответ на: комментарий от Skullnet

Большое Человеческое Спасибо. Помни что: все кто пишут тебе что это ненужно, что протокол плохой, просто агенты ЗОГ, которые не хотят чтобы был децентрализованный мессенджер на мобилке. Будь бы я на их месте, пошел бы на многое: угрозы, подкуп, физическое устранение. Реквекст фичей, не знаю от клиента или от протокола, но всё же.

  1. Интерфейс как у Телеграмм. Это поможет привлечь аудиторию хомяков.
  2. Стикеры, привлечь хомяков.
  3. Аудио звонки.
  4. Аудио-сообщения.
  5. Видеозвонки.
  6. Видео-сообщения. В 2020 году это джентельменский набор мессенджера.

П.с. сделай как я попросил и народ потянется, а главное не бросай работу ни при каких условиях.

Сделай клиент внешне вышлчди

anonymous
()

Как решена проблема перманентного потребления трафика DHT и, соответственно, ужора батарейки? Понятно, что лучше tox’а пока всё равно ничего не придумали, но ужор трафика сильно мешает мобильности.

Stanson ★★★★★
()
Последнее исправление: Stanson (всего исправлений: 1)
Ответ на: комментарий от Stanson

Как решена проблема перманентного потребления трафика DHT и, соответственно, ужора батарейки? Понятно, что лучше tox’а пока всё равно ничего не придумали, но ужор трафика сильно мешает мобильности.

А что ещё остались не пакетные тарифы с 100500 ГБ трафика? Разве ещё не все носят с собою пауэрбанку?

anonymous
()
Ответ на: комментарий от anonymous

Надо бы напомнить, что прежний Tox скорее мертв, чем жив

Ахинею несешь. qtox доступен и работоспособен, прекрасно работает, им пользуется много людей. Просто его использование не все афишируют.

hakavlad ★★★
()
Ответ на: комментарий от anonymous

А что ещё остались не пакетные тарифы с 100500 ГБ трафика?

А дело не в самом трафике, да его там и немного, а в ужоре батарейки при постоянном, хоть и небольшом трафике.

Разве ещё не все носят с собою пауэрбанку?

Прикинь, пауэрбанка это для хипстеров и тех, кто майнеров в телефон понаставил.

Ваще классика, конечно. «Отличный модный смартфон, 8 ядер 8 гигов. Но батарейки у него тяжё-ё-ё-ёлые…»

ЗЫ: вот появятся телефоны с топливнми ячейками, тогда и будет наплевать на ужор батарейки.

Stanson ★★★★★
()
Последнее исправление: Stanson (всего исправлений: 1)
Ответ на: комментарий от anonymous

Если они начнут писать программы для полутора гика то не взлетит, а так хоть что-то.

Ramil ★★★★
()

Итак, вышел новый криптопетушиный высер. Что забавно, только на ведро. Линуксоиды(те самые, которые меньше 1%, уже ожидаемо поделились на 100500 лагерей, каждый из которых по своему выражает мнение о том, что проект «ненужно»), остальные пользователи клиент не увидят еще скоро - ибо альфа альфы альфа пре-альфа билда. Успех проекту гарантирован, ящитаю.

anonymous
()
Ответ на: комментарий от hakavlad

Ахинею несешь. qtox доступен и работоспособен, прекрасно работает, им пользуется много людей. Просто его использование не все афишируют.

не все афишивуют - звучит как будто скрывают. Я не скрываю. Мне что рекламму в яндексе купить с сообщением что я пользуюсь токсом?

anonymous
()
Ответ на: комментарий от anonymous

пока новая официальная команда токса лепит вот это: https://toktok.ltd

Все сидят на старом добром tox. Новый отклик дистры даже в репы не включают.

tox например клиент qtox дает все что надо:

Чат

Телефонию

Видео звонки

Обмен файлами

И все без серверов которые РКН банит, а товарищ майор постоянно трясет какой-то ключ.

В tox есть только ты и твой собеседник. А рекламовпариветелей и майоров нет.

TOX это все что надо для общения двух людей.

anonymous
()
Ответ на: комментарий от aplay
  • Нет синхронизации сообщений между устройствами? Или хотя бы один аккаунт на нескольких устройствах.
  • Нет возможности работать через NAT?
Result-Code
()
Ответ на: комментарий от anonymous

В генте есть qtox. (Очень давно не обновлялся ни он, ни либа toxcore.) Что впрочем не отменяет нездоровости всей этой возни. Снесу пожалуй, один хрен не юзаю.

dimgel ★★★★★
()

это первый Tox-клиент с лицензией GNU GPL. поздравляю. и спасибо авторам проекта

anonymous
()
Ответ на: комментарий от anonymous

В айти еще хоть немного, да перелезают на Matrix (причем даже компании вроде мозиллы и kde). В реале правит телега и ватсап. На что надеются хипсторы?

И айти и реал частично перелезают на неожиданно Discord, но ни TokTok, ни Tox тут опять же ни при чём.

Gentooshnik ★★★★★
()
Ответ на: комментарий от Im_not_a_robot

Ну как бы сложно сделать то, что не описано в протоколе.
Как правило такое делается через костыли и работает через раз.

WatchCat ★★★★★
()
Ответ на: комментарий от Stanson

А дело не в самом трафике, да его там и немного, а в ужоре батарейки при постоянном, хоть и небольшом трафике.

На постоянную отправку траффика зондами глаза закрывают, а вот к бессерверному мессенджеру прицепились - видите-ли, батарейку жрет))

anonymous
()
Ответ на: комментарий от ololoid

Спасибо за труды. Возможна ли миграция профиля с других клиентов tox?

Я в данный момент как раз пишу меню выбора профиля. На самом деле даже в релизнутой версии можно, нужно только заменить profile.tox в /sdcard/.protox/ и профиль откроется - пока что так.

Skullnet ★★★★★
() автор топика
Последнее исправление: Skullnet (всего исправлений: 2)
Ответ на: комментарий от anonymous

На постоянную отправку траффика зондами глаза закрывают, а вот к бессерверному мессенджеру прицепились - видите-ли, батарейку жрет))

Для справедливости, зонды гораздо лучше оптимизированы в этом плане. Батарейку подъедает да, но не так чтобы выставлять это критическим недостатком. Можно в будущем оптимизации подогнать, нужно только придумать как они буду работать.

P.S. Android убьет процесс раньше чем он успеет сожрать батарейку.

https://dontkillmyapp.com/

Skullnet ★★★★★
() автор топика
Последнее исправление: Skullnet (всего исправлений: 1)
Ответ на: комментарий от anonymous

это первый Tox-клиент с лицензией GNU GPL. поздравляю. и спасибо авторам проекта

У реализации протокола toxcore GNU GPL лицензия, значит и все клиенты должны быть под GNU GPL лицензией. Мне GPL не нравится, если бы была возможность проект был бы под BSD или любой другой свободной лицензией, но пока что временно под GPL.

Skullnet ★★★★★
() автор топика
Последнее исправление: Skullnet (всего исправлений: 2)
Ответ на: комментарий от anonymous

Мобильный P2P-клиент - все время держать инет включенным (всем). Не взлетит.

У меня взлетит, интернет на смартфоне включен 24/7

torvn77 ★★★★★
()
Ответ на: комментарий от WatchCat

Какие стикеры в tox? Они там разве были?

Стикеры - это изображения. Думаю, когда сделаю передачу файлов, можно будет отправлять их другим пользователям. Посмотрим.

Skullnet ★★★★★
() автор топика
Ответ на: комментарий от Skullnet

Что по поводу: аудио звонков, аудио сообщений, видео звонков, видео сообщений? Какая версия андроида нужна? У меня на четвертом не запустился.

anonymous
()
Ответ на: комментарий от anonymous

Что по поводу: аудио звонков, аудио сообщений, видео звонков, видео сообщений? Какая версия андроида нужна? У меня на четвертом не запустился.

Я пока что не реализовал звонки и передачу файлов. Минимальная версия - Android 6.0 (API 23). На самом деле в теории можно понизить требования до 5го андроида, но последняя попытка это сделать провалилась и программа вылетела по неизвестной причине. Ниже 5ки не могу физически, текущая версия Qt требует Android 5 как минмум.

Обновление, если производитель телефонов не дает это сделать - боль, а Android в целом - кусок говна. Увы.

Skullnet ★★★★★
() автор топика
Последнее исправление: Skullnet (всего исправлений: 1)
Ответ на: комментарий от Skullnet

Я пока что не реализовал звонки и передачу файлов.

В принципе это планируешь, можешь сделать? Или может это зависит от протокола а не от клиента, или ещё не знаешь?

На самом деле в теории можно понизить требования до 5го андроида,

Легче купить новый.

anonymous
()
Ответ на: комментарий от anonymous

В принципе это планируешь, можешь сделать? Или может это зависит от протокола а не от клиента, или ещё не знаешь?

Я планирую реализовать все возможности протокола. Со временем.

Skullnet ★★★★★
() автор топика
Ответ на: комментарий от Skullnet

Я планирую реализовать все возможности протокола. Со временем.

Я не знаю возможности протокола, я конкретные вещи спросил. Если не можешь сказать точно, так и скажи.

anonymous
()
Ответ на: комментарий от anonymous

Это да. Одна надежда на Librem 5.

Андроид самая популярная мобильная ОС. Либрем использует полтора землекопа. Л - Логика.

anonymous
()
Ответ на: комментарий от anonymous

Андроид самая популярная мобильная ОС. Либрем использует полтора землекопа.

С учетом, что L5 и выслали полутра землекопам, то неудивительно. Первая массовая серия (модификация Evergreen) ожидается только к середине августа. Промежуточные модификации - обкатка.
Насчет популярности: массовость - не признак, что это правильно.

anonymous
()

Не нужно. tox протокол сам по себе уже давно мёртв

Heimdall
()
Ответ на: комментарий от anonymous

Нет ни в одном репозитории Ubuntu. За 10 лет так и нехватило времени добавить. Jami (Ring) есть, Matrix есть, а этого нет.

Это скорее показывает не ненужность токса, а кумовство и клановость современного СПО, когда заведомо неюзабельные до уровня неработоспособности Matrix и Ring объявляют основными мессенжерами проектов, потому что они свои, а так или иначе практически работающий и кдобный qTox так и не разместили в репозитарии основных дистров.

torvn77 ★★★★★
()
Последнее исправление: torvn77 (всего исправлений: 1)

Спасибо за вашу работу.

Один вопрос:

Чтобы приложение не отключалось от сети, необходимо убрать ограничение активности приложения в настройках OC Android

Т.е. оно будет постоянно держать открытым соединение с сервером? Сказывается ли это на потреблении батареи?

trex6 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.