#  Re: Пишу ноду ii/idec на go
Peter (syscall,1) → Peter  –  12:09:26 2020-09-08

Новое на стенде: Появились ЛС! Как реализовано?

Эха, которая начинается с . (.private - на сервере). Это такая эха, в которой пользователь видит только свои сообщения, сообщения написанные ему и сообщения адресованные All

Такие эхи отдаются на фетч только по строке: /point/authstr/u/e/список эх

Список эх может включать не только приватные эхи, но и другие

В веб это смотрится довольно гармонично!

Итого, из моих планов -- осталось только шлифануть порефакторить и написать документацию :)

#  Re: Пишу ноду ii/idec на go
Peter (syscall,1) → Difrex  –  08:25:37 2020-09-08

С аватарками есть проблема. Как именно идентифицировать пользователя?
Сначала, я сделал по адресу. Потом по полю From. Оба решения не ахти.
Мне кажется, пока у нас нет отдельных register серверов, аватарки можно делать только кустарно-индивидуально. А так, мне тоже аватарки нравятся. )))
#  Re: Пишу ноду ii/idec на go
Difrex (dynamic,1) → Peter  –  07:05:46 2020-09-08

Аватарки - это круть же! Может апи серверный какой придумать в расширениях, чтоб можно было постом аватарку пропихнуть на свою ноду?

-XPOST /x/avatar -d "pauth=authstring&xpm=$(echo "$XPM" | base64)"

Правда это небезопасная штука может быть.
#  Re: Пишу ноду ii/idec на go
Peter (syscall,1) → Difrex  –  07:14:33 2020-09-08

> Я бы предложил это как-то стандартизировать в расширениях.
> Можно добавить текстовые теги. Типа,

Я только за! Сейчас у меня такие _нестандартные_ теги:

1) @base64: имя файла - всё, что после этой строки берется как base64 аттач демка тут: http://club.syscall.ru:8080/jaHRwm0sPfK2w6n8jqhm#jaHRwm0sPfK2w6n8jqhm

2) @spoiler: строка - показать спойлер (В веб версии это реверс-строки и бледный цвет

3) XPM2 и XPM3 как есть воспринимаются, в соответствии с их форматом

@ мне нравятся, так как это аналог @repto:

#  Re: Пишу ноду ii/idec на go
Difrex (dynamic,1) → Peter  –  06:51:03 2020-09-08

Я бы предложил это как-то стандартизировать в расширениях.
Можно добавить текстовые теги. Типа,

-*- xpm; -*-
static char * x_xpm[] = {
"32 32 17 1",
" c None",
". c #18293E",
"+ c #112C39",
...
-*- xpm; -*-


Чтоб в клиентах можно было вырезать(или отрисовывать) это, например.
#  Re: Пишу ноду ii/idec на go
Peter (syscall,1) → Difrex  –  17:50:51 2020-09-07

Прикрутил автатарки. Их можно загружать тоже в xpm и хранятся они в points.txt в текстовой форме.

http://club.syscall.ru:8080/IAXXN7yBVRqHzb9iG4Af/1
#  Re: Пишу ноду ii/idec на go
Peter (syscall,1) → Difrex  –  16:13:18 2020-09-07

Нормально смотрятся только небольшие. 32x32 или 64x64

Вот, например - ещё более менее: http://club.syscall.ru:8080/m/HUwMVOKfbms85NMXfkcy#HUwMVOKfbms85NMXfkcy

Короче, я на этом скоро сделаю аватарки :)
#  Re: Пишу ноду ii/idec на go
Difrex (dynamic,1) → Peter  –  13:37:24 2020-09-07

Сырое сообщение, конечно, трэшовенько смотрится =)
#  Re: Пишу ноду ii/idec на go
Peter (syscall,1) → Peter  –  08:18:42 2020-09-06

На ii-go завезли котиков!

Не знаю зачем, но теперь в теле сообщения детектятся xpm. Как это выглядит - можно посмотреть на стенде. Можно постить котиков, но помните: лучше всего котика делать с 1 символом на цвет. (64-цветные палитры, например).

Котики тут: http://club.syscall.ru:8080/t5KocgBVCe3m37eRsXjd/1
#  Re: Пишу ноду ii/idec на go
Peter (syscall,1) → Peter  –  16:17:32 2020-09-05

Что нового и вообще, что в ноде особенного на данный момент.

0) Ни одной внешней зависимости.
1) Вся база - это бандл. Бандлы легко мержить друг с другом, переносить и так далее. Индекс создается автоматически но он не является необходимым, так как при удалении создается заново автоматически.
2) Есть тулза для работы с базами если это понадобится
3) Нода - это фактически форум с видом по тредам
4) Можно редактировать сообщения. При этом ничего не меняется, а просто в базу добавляется новый вариант сообщения с тем же ID. Более актуальной считается всегда более новая версия. Blacklist делается так же.
5) Многопоточный фетчинг
6) Адаптивный фетчинг, это когда пробуем по одному сообщению с каким то шагом, постоянно умножая его на *2 и уходим в глубь до тех пор, пока не найдутся те сообщения, что у нас есть в базе. Например: -16:1 -32:1 -64:1 -128:1 (увидели, что сообщение есть в нашей базе!), Сделали: -128:128
7) Простая web морда, нормально выглядит и на мобильном и в eww
8) Никакого js!
9) Предпросмотр сообщений при редактировании и создании новых
10) Простота разворачивания

Продолжаю работать. То, что хочется сделать.

>> Читать далее
#  Re: Yet another idec client
Peter (syscall,1) → Peter  –  10:44:19 2020-09-05

> Мой прототип можно пошатать здесь: http://club.syscall.ru:8080

> Можно и нужно его пошатать, если кому-то есть на это время/интерес. )

Только, конечно, не подключайте фетч на свои боевые ноды! Сейчас там тестирование. Можно ломать. :)
#  Re: Yet another idec client
Peter (syscall,1) → Peter  –  10:34:27 2020-09-05

Мой прототип можно пошатать здесь: http://club.syscall.ru:8080

Можно и нужно его пошатать, если кому-то есть на это время/интерес. )
#  Re: Yet another idec client
Peter (syscall,1) → Andrew Lobanov  –  18:50:51 2020-09-04

> Давно я не трогал этот клиент, хотя и пользуюсь сейчас только им. Пётр вдохновил и я снова взял в руки шашку.

Отлично! Надо будет заценить.

У меня тоже процесс идёт хорошо. Скоро будет нода моей мечты. :))
#  Re: Yet another idec client
Andrew Lobanov (tavern,1) → Andrew Lobanov  –  04:14:19 2020-09-04

Давно я не трогал этот клиент, хотя и пользуюсь сейчас только им. Пётр вдохновил и я снова взял в руки шашку.

Список изменений:

* Исправлена ошибка на странице настроек, возникающая при неудачной попытке получить списки конференций с сервера.
* Добавлена страница списка сообщений в эхе.
* На главной странице и странице отдельного сообщения добавлена кнопка ответа.
* На главной добавлена ссылка на сообщение.

Из запланированных фич остались только избранные сообщения и карбонка. Потом, возможно, добавлю построение тредов в эхах. Не определился пока насколько оно нужно.
#  Re: Пишу ноду ii/idec на go
Difrex (dynamic,1) → vit01  –  16:18:21 2020-09-03

> Глянул в документацию - оказалось, что Github стал неправильно рендерить Markdown, и там отображается с большой, хотя в исходнике осталось всё как надо
Походу дела нужно @ экранировать.
#  Re: Пишу ноду ii/idec на go
Andrew Lobanov (tavern,1) → vit01  –  04:00:29 2020-09-03

>>> @repto вместо @Repto
Difrex>> Разве у нас в стандарте с большой буквы прописано? В тех же iing и ii-php реализованно с маленькой.
vit01> Всегда было с маленькой. Глянул в документацию - оказалось, что Github стал неправильно рендерить Markdown, и там отображается с большой, хотя в исходнике осталось всё как надо

Прикольно :)

>>> StdBASE64 вместо URLBase64 в get запросе
Difrex>> Там ескейпится потом. Не помню уже почему именно так сделано было.
vit01> Для кодирования самого сообщения вроде как раз urlbase64 и используется. Для хэшей же идёт полная подмена символов, чтобы избежать знаков препинания

Из документации это не следует никоим образом.
#  Re: Пишу ноду ii/idec на go
vit01 (mira, 1) → Difrex  –  01:44:41 2020-09-03

>> @repto вместо @Repto
Difrex> Разве у нас в стандарте с большой буквы прописано? В тех же iing и ii-php реализованно с маленькой.

Всегда было с маленькой. Глянул в документацию - оказалось, что Github стал неправильно рендерить Markdown, и там отображается с большой, хотя в исходнике осталось всё как надо

>> StdBASE64 вместо URLBase64 в get запросе
Difrex> Там ескейпится потом. Не помню уже почему именно так сделано было.

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

+++ Отправлено через IDEC Mobile
+++ GNU/Linux, Android, physics, MLP:FIM
#  Re: Пишу ноду ii/idec на go
Peter (syscall,1) → Difrex  –  20:46:40 2020-09-02

> Разве у нас в стандарте с большой буквы прописано? В тех же iing и ii-php реализованно с маленькой.

Вот это интересный момент. В стандарте с большой вроде бы написано. Давайте определим, как именно правильно. А то я пока закодил и то и другое.

> Хм, но там только одна внешняя зависимость и только для тестов - httpmock. Сама либа полностью на стандартной либе написана.

Угу, ошибся.

> Там ескейпится потом. Не помню уже почему именно так сделано было.

Да я видел. Я в итоге сделал всё таки urlsafe для get варианта.
#  Re: Пишу ноду ii/idec на go
Difrex (dynamic,1) → Peter  –  19:11:56 2020-09-02

Но вообще ты меня подбил на то, чтобы почитать код go-idec :). Нашел несколько мест, которые можно определенно улучшить. Ну, и коверадж надо бы добить до 99% =)
#  Re: Пишу ноду ii/idec на go
Difrex (dynamic,1) → Peter  –  19:03:17 2020-09-02

> 1) Хочу другую лицензию (MIT)
На этом можно было и остановиться на самом деле :D GPL не хочу менять на MIT точно.

> @repto вместо @Repto
Разве у нас в стандарте с большой буквы прописано? В тех же iing и ii-php реализованно с маленькой.

> StdBASE64 вместо URLBase64 в get запросе
Там ескейпится потом. Не помню уже почему именно так сделано было.

> Subg вместо Subj
Это у меня исторически сложилось еще с perl клиента :)

> 3) Наличие внешних зависимостей (противоречит моей цели)
Хм, но там только одна внешняя зависимость и только для тестов - httpmock. Сама либа полностью на стандартной либе написана.
#  Re: Пишу ноду ii/idec на go
Peter (syscall,1) → Difrex  –  17:09:20 2020-09-02

> Опять предлагаю развивать библиотеку вместе: https://github.com/idec-net/go-idec

Я с неё начал, сейчас фактически моя реализация покрывает твою. Почему я это сделал.

1) Хочу другую лицензию (MIT)
2) Нашел некоторые странности (@repto вместо @Repto, StdBASE64 вместо URLBase64 в get запросе, точно не помню, может ещё что-то по мелочи, типа Subg вместо Subj...
3) Наличие внешних зависимостей (противоречит моей цели)
4) Субъективно, хотелось простоты =)
#  Re: Пишу ноду ii/idec на go
Difrex (dynamic,1) → Peter  –  08:47:26 2020-09-02

Это уже третья реализация годы на go будет :).

Опять предлагаю развивать библиотеку вместе: https://github.com/idec-net/go-idec
#  Пишу ноду ii/idec на go
Peter (syscall,1) → All  –  21:14:20 2020-09-01

Вот и до меня добралось. :)
В общем, пишу ноду на go.
Цели:
- никаких внешних зависимостей;
- экстремальная простота настройки и переноса базы;
- поддержка умного (адаптивного) fetch

На данный момент черновик ноды готов: https://github.com/gl00my/ii-go
Пока нет никакой морды, нет документации. Но решил показать что есть, вдруг кто-то pr накидает. ;)

Как посмотреть:

git clone https://github.com/gl00my/ii-go.git

cd ii-go/ii-tool

>> Читать далее
#  IDEC Mobile
vit01 (mira, 1) → All  –  18:06:58 2020-08-31

В обновлении от сегодня починены краши из-за конфликта версий ACRA и AndroidX

+++ IDEC Mobile в виртуальной машине
+++ GNU/Linux, Android, physics, MLP:FIM
#  Re: ... напал
Peter (syscall,1) → Peter  –  18:46:59 2020-08-03

Пока я поменял несколько сообщений, в сабжекте которых упоминался тот, чьё имя нельзя упоминать )

Powered by iii-php v0.11