LINUX.ORG.RU

Вышел первый релиз Pica Pica Messenger

 , ,


7

5

Тихо и незаметно, после четырех лет разработки, вышел первый релиз Pica Pica Messenger — программного обеспечения для организации децентрализованной распределенной защищенной системы обмена мгновенными сообщениями.

В состав Pica Pica входят две программы: pica-node — сервер-узел (нода) распределенной сети и pica-client — графический клиент. pica-node написан на C, pica-client — C++ c применением фреймворка Qt.

Предполагается, что распределенная сеть нод pica-node будет поддерживаться на добровольных началах. Каждый желающий может установить на своем компьютере pica-node и обеспечивать передачу служебного трафика и сообщений между участниками сети (аналогично Tor, I2P, Freenet и пр.).

Исходный код

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



Проверено: Shaman007 ()
Последнее исправление: antonsv (всего исправлений: 3)

Ответ на: комментарий от Xenius

А если использовать OTR?

тогда не видит

А список нод где брать? Тогда пользователь будет привязан к корневой ноде...

Идея такая, что в дистрибутиве программы лежит список «затравочных» нод, которые были в рабочем состоянии на момент создания пакета. При первом запуске хотя бы одна из этих нод должна быть активна, чтобы сообщить список новых рабочих нод, после чего список нод поддерживается программой самостоятельно (в pica-node и в pica-client)

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

ой у меня опять двух символьный gmail.com угнали. Этот фетиш будет всегда и везде, за исключением tor там используются хеши 3eouoeu3244euoeu.onion

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

Как минимум - тем что не на жабе.

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

нафига pica-node в зависимость qt? как мне его на сервере в консольке запустить?

./configure --disable-client

собирается только node, зависимости qt не требуются

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

даже если это не для клиента, то зависимость от Qt, не подразумевает наличие гуя.

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

А есть какой-то список корневых, центральных нод, которые всегда будут доступны?

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

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

таки да = --disable-client Disable build of pica-client = под винду сборочку клиента бы....

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

Вам сообщения доходят? А то у меня не очень хорошие предчуствие...

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

antonsv
() автор топика

Подписываюсь на тему, позже потыкаю - отпишусь.

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

Тем, что не требует запускать i2p, а является самостоятельным p2p IM.

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

А есть какой-то список корневых, центральных нод, которые всегда будут доступны?

ну в данный момент в дистрибутиве записан адрес только одной ноды (под разными именами), которая на моем VPS. В файле nodelist_db_create.sql

Ноды не разделяются на корневые/не корневые, они все равноправны. Что они всегда будут доступны, никто не может гарантировать

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

Если планы по развитию серьезные, можешь и мою ноду добавить в список. ip все-равно постоянный. :)

Позже попробую водрузить.

Еще бы хорошо спецификацию протокола увидеть. Возможно возьмусь за гтк-клиент.

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

а как насчет скриншотов клиентской части?

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

библиотека выглядит интересной, поизучаю как-нибудь

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

Еще бы хорошо спецификацию протокола увидеть. Возможно возьмусь за гтк-клиент.

вот, выложил

http://picapica.im/proto.txt

некое подобие справочника по пакетам протокола. А вот в какой последовательности и куда их нужно посылать, это нужно оформить в каком-нибудь документе, пока нету

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

имхо было бы не плохо разделить протокол и гуй. Сделать какой-нибудь libpicapica без зависимостей от Qt. А потом писать для него фронтэнды на Qt, GTK, NCurses, WinAPI...

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

опять назад в icq, номера, пятизнаки, «ой у меня primary email украли!»?

Само собой! Никаких пятизнаков! Только sha1!

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

имхо было бы не плохо разделить протокол и гуй. Сделать какой-нибудь libpicapica без зависимостей от Qt

вообще как бы так и есть, только в виде библиотеки (.a или .so файла) не оформлено. Весь код работы с протоколом в файлах PICA_client.c, PICA_msgproc.c

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

Тогда почему бы не оформить?

Тогда желающих портировать резко прибавится. Только чтобы никаких привязок к тулкиту и ОС.

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

туннелирование трафика может делать?

в данный момент нет. Но эта фича в планах есть. Ещё передача файлов, голос, видео. В планах на не очень ближайшее будущее :)

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

Только SHA512

И как вы это собираетесь диктовать? То ли дело sha1!

helios ★★★★★
()

децентрализованной распределенной защищенной системы обмена мгновенными сообщениями

О! Я давно такую думаю!

Casus ★★★★★
()

А файлы через него можно передавать?

Расширение возможностей с помощью плагинов предусмотрено?

Где пакет для моей уютненькой семерочки?

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

Если думаешь развивать, пиши хорошую документацию по протоколу! Скорейшая встройка его в месенджеры - лучшая популяризация. Плагин для пиджина можно за пару дней сваять. Но нужна документация.

hibou ★★★★★
()

Годнота.

По описанию - годно. Успехов в развитии. В 2013 попробую ноду поднять. Скринов клиента бы...

slayercccp
()

Алсо вместо того чтоб пилить свой клиент, думаю проще будет запилить поддержку в qutIM/Pidgin.

Stvad
()

Скайпокапец близок!

Ещё передача файлов, голос, видео.

Это тоже будет гоняться через ноды?

lucky_guy ★★★
()

я, пожалуй, продолжу использовать torchat

Jameson ★★★★★
()

Чем оно лучше I2P-Messenger?

upcFrost ★★★★★
()

# make gcc -DPACKAGE_NAME=\«Pica\ Pica\ Messenger\» -DPACKAGE_TARNAME=\«pica-pica\» -DPACKAGE_VERSION=\«0.5.1\» -DPACKAGE_STRING=\«Pica\ Pica\ Messenger\ 0.5.1\» -DPACKAGE_BUGREPORT=\"http://picapica.im/bugzilla/\" -DPACKAGE_URL=\"http://picapica.im\" -DPACKAGE=\«pica-pica\» -DVERSION=\«0.5.1\» -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_ARPA_INET_H=1 -DHAVE_LIMITS_H=1 -DHAVE_NETDB_H=1 -DHAVE_NETINET_IN_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_SOCKET_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_UNISTD_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MALLOC=1 -DHAVE_STDLIB_H=1 -DHAVE_REALLOC=1 -DHAVE_GETCWD=1 -DHAVE_INET_NTOA=1 -DHAVE_MEMMOVE=1 -DHAVE_MEMSET=1 -DHAVE_SELECT=1 -DHAVE_SOCKET=1 -DHAVE_STRCHR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -I. -DPICA_INSTALLPREFIX=\«/usr/local\» -DPICA_SYSCONFDIR=\«/usr/local/etc\» -DPICA_LOCALSTATEDIR=\«/usr/local/var\» -g -O2 -MT pica_node-PICA_nodeaddrlist.o -MD -MP -MF .deps/pica_node-PICA_nodeaddrlist.Tpo -c -o pica_node-PICA_nodeaddrlist.o `test -f 'PICA_nodeaddrlist.c' || echo './'`PICA_nodeaddrlist.c In file included from PICA_nodeaddrlist.c:5: PICA_nodeaddrlist.h:32: error: expected specifier-qualifier-list before 'time_t' PICA_nodeaddrlist.c: In function 'nodeaddr_load_sqlite_cb': PICA_nodeaddrlist.c:33: error: 'struct PICA_nodeaddr' has no member named 'port' PICA_nodeaddrlist.c:37: error: 'struct PICA_nodeaddr' has no member named 'last_active' PICA_nodeaddrlist.c:39: error: 'struct PICA_nodeaddr' has no member named 'next' PICA_nodeaddrlist.c: In function 'PICA_nodeaddr_save': PICA_nodeaddrlist.c:114: error: 'struct PICA_nodeaddr' has no member named 'port' PICA_nodeaddrlist.c: In function 'PICA_nodeaddr_list_free': PICA_nodeaddrlist.c:147: error: 'struct PICA_nodeaddr' has no member named 'next' *** Error code 1

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

ты так говоришь как будто это что-то плохое.

эта идея, пусть и придуманная в Skype, пожалуй одна из лучших

KivApple ★★★★★
()

Убери строку состояния. Она там нафиг не нужна, только вид портит (поставил и запустил).

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

иконки ставятся туда, куда xdg-utils считают нужными согласно стандарту XDG Desktop Menu

И при попытке обернуть твой инсталлер в ебилд он вылетит с красивым красненьким сообщением о нарушении сэндбокса. Гениально чо.

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

Чем это лучше i2p-Messenger?

Я бы сказал, джаббера. Ибо именно его сабж больше всего напоминает.

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