? Editing: Post:21.body Save Delete Cancel
Initial sync in progress...

Newest topics

Follow in NewsfeedFollowing
+ Start new topic
Loading...
stickied

Title

Body
^1 ^2 added ━ started by user_name
More topics

 

Follow in NewsfeedFollowing

Infonesy — ход работ

Просто всякая текучка.

^1 ^2 balancer73 posted on Aug 20, 2017
Please sign innew comment
Sign in as...
Submit comment
You are running out of your allowed space, please contact the site's admin at unknown to raise your limit.
user_nameadded ^1 ^2
Reply
Body
balancer73on Apr 10, 2018 ^1 ^2
Reply

Я вот тут 5 лет назад писал про форумные движки: http://forums.balancer.ru/tech/forum/2016/01/t88085--forumnye-dvizhki.4072.html

С тех пор, правда, очень много изменилось. Я разочаровался во Flarum, в топе остались только Vanilla и MyBB. Хотя, не смотря на страшные карму и архитектуру, немного присматриваюсь к PhpBB3.

balancer73on Apr 10, 2018 ^1 ^2
Reply

pozya: Тут тоже можно запилить, в localStorage.

Можно. Но когда речь о готовых решениях — то оно так, как оно есть :)

...

Я бы скорее предложил картинки на Зеро-форумах сделать. Это намного востребованнее :)

pozyaon Apr 10, 2018 ^1 ^2
Reply

balancer73: Мля. Набил большой ответ со сравнением альтернатив и всё пропало по Ctrl-R. К пропавшему тексту как раз дополнением — у Vanilla есть регулярное сохранение черновика, в таком случае ничего бы не пропало :D

Тут тоже можно запилить, в localStorage.

balancer73on Apr 10, 2018 ^1 ^2
Reply

geekless: Vanilla Forums? Кококонитортхипстерыневзлетит. [...]

Мля. Набил большой ответ со сравнением альтернатив и всё пропало по Ctrl-R. К пропавшему тексту как раз дополнением — у Vanilla есть регулярное сохранение черновика, в таком случае ничего бы не пропало :D

geeklesson Apr 08, 2018 ^1 ^2
Reply

Vanilla Forums? Кококонитортхипстерыневзлетит.

А действительно, почему?

balancer73on Apr 07, 2018 ^1 ^2
Reply

Пересмотрев концепцию запустил наскоро первый вариант трансляции топиков. Как раз подвернулся случай, появилась идея завести «оппозиционный» форум :)

Альтернативный форум на движке Vaniila: https://reformist.forums.a0z.ru/

Транслируется под видом обычного форума на Авиабазу: http://www.tanzpol.org/viewforum.php?id=241

Пока всё начерно и на коленке собрано, даже не через механизмы файлового обмена Infonesy, простым запросом JSON с данными по cron, но вполне работает.

Надо будет ещё парочку форумов также подсоединить :)

balancer73on Jan 05, 2018 ^1 ^2
Reply

Продолжаю обдумывать идеологические моменты кросстрансляций форумов.

Чем больше думаю и экспериментирую, тем больше прихожу к мысли, что первоначальная задумка полной трансляции топиков — неверна. Задумывалась она как средство дупликации и резервирования ценной информации, но чем дальше идёт дело, тем больше понимаю, что этим никто на практике заниматься не будет. Никому не интересно хранить мои 5 миллионов сообщений и несколько сот гигабайт аттачей.

Поэтому первостепенной становится просто задача информационного обмена дружеских форумов. Чтобы можно было писать что-то новое на одном и читать/отвечать на другом. И тут вылезает вторая проблема — неравномерность активности. Если один форум очень активный, а второй — тихая заводь со своей атмосферой, то первый легко забьёт всё во втором, так что свои там друг друга уже не найдут.

Думаю, тут нужно использовать выборочную синхронизацию. Например, кидать на форум из Infonesy только новые топики, но не всё обсуждение в них. Вот если кто-то на «чужом» форуме ответит в такую тему — тогда можно переслать этот ответ на форум-источник и постить позже в «приёмник» прямые ответы первого уровня на такие сообщения. Этот подход поставит выше основной контингент пользователей, не заглушит старые коллективы, но при этом даст им возможность взаимодействовать с новыми участниками.

balancer73on Sep 10, 2017 ^1 ^2
Reply

Мысли по поводу UUID. Раньше я использовал простой а ля Java-package namespace формат. Имя ноды и имя ресурса в ноде, разделённые точками. Ну, типа, ru.balancer.forums.post.12345. Но теперь думаю, что для удобства нужно в UUID иметь чёткое разделение на ноду и путь в ней. Да, имя ноды хранится в данных объекта, но иногда удобно видеть это имя сразу, по имени/UUID объекта.

Очевидное решение — аналог URI. Например, zeronet://1F4WVHDpQYxuJL6xEY3EZTYkZds9TTjVHC/28_1PniNzyi8fygvwyBaLpA9oBDVWZ5fXuJUw. Или infonesy://zeronet.1F4WVHDpQYxuJL6xEY3EZTYkZds9TTjVHC/28_1PniNzyi8fygvwyBaLpA9oBDVWZ5fXuJUw

Но, опять же, удобно иметь UUID совместимый с именами файлов. Так проще искать нужно в репозиториях. Не нужно грузить все файлы. Значит — ограничение на используемые символы.

Может быть использовать первоначальный вариант, но, например, разбивать ноду и путь двойным минусом? (двойным, поскольку одиночный может использоваться и в имени ноды, и в пути):

ru.balancer.forums--post.12345
zeronet.1F4WVHDpQYxuJL6xEY3EZTYkZds9TTjVHC--28_1PniNzyi8fygvwyBaLpA9oBDVWZ5fXuJUw
balancer73on Aug 21, 2017 ^1 ^2
Reply

gomzik: Почему-то есть ощущение, что до ума довести через существующие утилиты не выйдет. Т.е. да, в каком-то виде это будет работать, но так, чтобы все хотелки были реализованны - нужно все делать по своему

Ну, у меня, как раз, основная идея в том, чтобы связывать разные движки без их переделывания. Ну, как вариант, через плагины там, где они поддерживаются. Всё равно делать качественные распределённые движки на все случаи жизни нереально. И не рационально с точки зрения распыления усилий. Поэтому и возникла идея разработать связь для уже имеющихся популярных и удобных движков :)

gomzikon Aug 21, 2017 ^1 ^2
Reply

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

balancer73on Aug 20, 2017 ^1 ^2
Reply

Проблема с трансляцией комментариев. Дело в том, что у HTMLy комментарии только внешние, через Disqus или Facebook. Но это не позволяет размещать чужие комментарии от своего имени :-/

Варианты:

  1. Делать ссылку на комменты в ZN через прокси. Самый простой вариант, но не особо красивый.
  2. Подбирать другой подобный движок, но со встроенными комментами. Плохо тем, что уж больно HTMLy удобен. Хотя можно подумать о Grav. В любом случае со временем полезно сделать драйвера Infonesy и для Grav, и для WordPress. А, может, задействовать что-то типа LiveStreet. Нужно подумать, но это долго.
  3. Вообще перейти к форумному формату. Запись в блоге — новый постинг. Комменты — ответы. Плохо тем, что меняется концепция. Форумы в виде ZeroTalk у нас итак есть :)
balancer73on Aug 20, 2017 ^1 ^2
Reply

Интересно. Я был уверен, что ZeroID всегда 34 символа. А вот попался вариант в 33: 1t6o5BVyJrSAtFGoXUkjfjCNyhyH8VcfT

balancer73on Aug 20, 2017 ^1 ^2
Reply

Ну, вот, пока начерно так: http://www.zites.cf/

Это пока частичный одноразовый экспорт, без комментариев и т.п.

Интересная особенность, которую только что заметил — у блогов (и зайтов вообще) нигде не указаны их владельцы. Т.е. зайты, по сути, анонимны. Поэтому я и блоги не могу увязать с какими-либо юзерами :)

balancer73on Aug 20, 2017 ^1 ^2
Reply

В принципе, также надо сделать экспорт из Facebook в блог HTMLy . С картинками только надо подумать. Можно штатно в HTMLy, можно в IPFS, но лучше для начала, наверное, оставить ссылки пока на FB в простой версии.

Ладно, пойду писать драйвер импорта Infonesy -> HTMLy :)

Экспорт выглядит сейчас примерно так:

const ZERO_DATA_DIR = "/home/balancer/src/ZeroNet/data";
$zero_blog_id = '1MaQ4W5D6G52TpBfPACU9k9QcB1DxvHZ5v';
$infonesy_push_dir = '/var/sync/Infonesy/Infonesy-ZeroBlogs/Balancer';

$zeroblog_storage = \Infonesy\Drivers\ZeroBlogStorage::factory(ZERO_DATA_DIR.'/'.$zero_blog_id);

$exporter = new \Infonesy\Transport\ObjectExporter($infonesy_push_dir);

$user = new \Infonesy\Drivers\ZeroBlog('1PniNzyi8fygvwyBaLpA9oBDVWZ5fXuJUw');
$user->set('title', 'Balancer');

$user->set('email_md5', md5('balancer@balancer.ru'));

foreach($zeroblog_storage->load_array(\Infonesy\Drivers\ZeroBlog::class, []) as $post)

{
    $post->set('infonesy_user', $user);

    $exporter->export_md($post);

}

$exporter->export($post->infonesy_container());

$exporter->export($user);
balancer73on Aug 20, 2017 ^1 ^2
Reply

Думаю, также, важно форсировать экспорт ZeroTalk с импортом результата в Vanilla. К сожалению, простого наглядного и лёгкого flat-file форума я не знаю, так что придётся делать сразу классический :)

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

balancer73on Aug 20, 2017 ^1 ^2
Reply

Почему тут, а не в обычном пока Интернете — сейчас основное направление — это гейтование с ZeroNet.

См. подробнее http://127.0.0.1:43110/1GQkPB8mFgxH7GQQbkNPJtvRaZZpVi65u1/?Post:20:Ход+работ

...

Вот так примерно сейчас выглядит файл экспорта:

---
Title: 'Восстание машин всё ближе'
UUID: zeronet.1MaQ4W5D6G52TpBfPACU9k9QcB1DxvHZ5v.post_59
Author:
    Title: Balancer
    EmailMD5: b00aed2adf22fd02381d0bb6bb6a8483
    UUID: zeronet.1PniNzyi8fygvwyBaLpA9oBDVWZ5fXuJUw
Date: 'Sat, 19 Aug 2017 03:18:34 +0300'
Type: Blog
---

# Восстание машин всё ближе

![](https://www.zerogate.tk/1MaQ4W5D6G52TpBfPACU9k9QcB1DxvHZ5v/data/img/post_59_photo_2017-08-18_01-18-43.jpg)

Относительные ссылки в ZeroNet я решил сейчас подменять на гейт. Ломал голову между 127.0.0.1:43110 и каким-то предопределённым гейтом и решил выбрать последнее. Принимающая сторона в общем случае может ничего про ZeroNet и гейты не знать и тогда надо подставлять рабочие ссылки. А если знает — может поменять потом на своё. В будущем, конечно, надо будет продублировать через IPFS. Но это позже. Если всё пытаться предусмотреть и заранее реализовать, то никогда не взлетим :)

This page is a snapshot of ZeroNet. Start your own ZeroNet for complete experience. Learn More