2024-05-02-23-30
This commit is contained in:
parent
19e66d83e4
commit
b553275330
BIN
data/media/social_media/kevachat-npsapp.png
Normal file
BIN
data/media/social_media/kevachat-npsapp.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 33 KiB |
@ -98,6 +98,21 @@ nc 201:23b4:991a:634d:8359:4521:5576:15b7 1915
|
|||||||
* [[https://github.com/YGGverse/nex-php|nex-php]], [[https://github.com/YGGverse/nps-php|nps-php]] - PHP 8 / Composer библиотеки для разработки веб-приложений
|
* [[https://github.com/YGGverse/nex-php|nex-php]], [[https://github.com/YGGverse/nps-php|nps-php]] - PHP 8 / Composer библиотеки для разработки веб-приложений
|
||||||
* [[https://github.com/ratchetphp/Ratchet|Ratchet]] - универсальная библиотека PHP 8 / Composer для разработки асинхронных серверов
|
* [[https://github.com/ratchetphp/Ratchet|Ratchet]] - универсальная библиотека PHP 8 / Composer для разработки асинхронных серверов
|
||||||
|
|
||||||
|
===== Проксирование =====
|
||||||
|
|
||||||
|
В виду простоты протокола, передаваемые данные легко проксируются любым сервером, поддерживающим маршрутизацию потоков TCP
|
||||||
|
|
||||||
|
==== Nginx ====
|
||||||
|
|
||||||
|
<file - /etc/nginx/nginx.conf>
|
||||||
|
stream {
|
||||||
|
server {
|
||||||
|
listen 1915;
|
||||||
|
proxy_pass [201:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]:1915;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</file>
|
||||||
|
|
||||||
===== Внутрисетевые ресурсы =====
|
===== Внутрисетевые ресурсы =====
|
||||||
|
|
||||||
* %%nex://[301:23b4:991a:634d::1900]/index.gmi%% - блог проекта YGGverse в формате [[:gemini_protocol#gemtext|gemtext]]
|
* %%nex://[301:23b4:991a:634d::1900]/index.gmi%% - блог проекта YGGverse в формате [[:gemini_protocol#gemtext|gemtext]]
|
||||||
|
@ -21,18 +21,45 @@ KevaChat - приватно-ориентированный, устойчивый
|
|||||||
|
|
||||||
==== geminiapp ====
|
==== geminiapp ====
|
||||||
|
|
||||||
Появился экспериментальный клиент/сервер для пользователей протокола [[:gemini_protocol|Gemini]].
|
Появился экспериментальный сервер для пользователей протокола [[:gemini_protocol|Gemini]].
|
||||||
|
|
||||||
На данный момент, проект находится в разработке, но уже доступен онлайн для тестирования.\\
|
На данный момент, проект находится в разработке, но уже доступен онлайн для тестирования.\\
|
||||||
Реализованы все базовые функции веб-версии: просмотр комнат, мультимедиа (в зависимости от поддержки браузером) а также добавление новых публикаций.
|
Реализованы все базовые функции веб-версии: просмотр комнат, мультимедиа (в зависимости от поддержки браузером) а также добавление новых публикаций.
|
||||||
|
|
||||||
|
==== npsapp ====
|
||||||
|
|
||||||
|
CLI версия сервера для протокола [[:nex_protocol#nps|NPS]], на базе библиотеки многопоточных сокетов - Ratchet.
|
||||||
|
|
||||||
|
В рамках данной реализации, публикация сообщений бесплатна, в качестве защиты от спама используется ASCII каптча.\\
|
||||||
|
Есть возможность выбора любой комнаты из указанных администратором по blacklist или whitelist.
|
||||||
|
|
||||||
|
Как следует из протокола, сервер ориентирован на приём и отправку сообщений.\\
|
||||||
|
Если требуется читать ресурсы посредством командной строки, удобно подключиться к инстансу Gemini, используя например клиент [[https://github.com/makew0rld/amfora|Amfora]] и аналогично - [[https://ru.wikipedia.org/wiki/Lynx_(браузер)|Lynx]] или [[https://github.com/browsh-org/browsh|Browsh]] - для HTTP.
|
||||||
|
|
||||||
|
**Клиент**
|
||||||
|
|
||||||
|
Отправлять сообщения можно CLI утилитами %%telnet%% или %%ncat%%, последний лучше поддерживает кириллицу.\\
|
||||||
|
Для обращения к адресам Yggdrasil/IPv6 посредством %%netcat%%, возможно потребуется доустановить из репозиториев пакет %%netcat-openbsd%%.
|
||||||
|
|
||||||
|
Пример:
|
||||||
|
|
||||||
|
<code>
|
||||||
|
nc 201:23b4:991a:634d:8359:4521:5576:15b7 1915
|
||||||
|
</code>
|
||||||
|
|
||||||
|
Интерфейс:
|
||||||
|
|
||||||
|
{{:social_media:kevachat-npsapp.png?400|kevachat/npsapp}}
|
||||||
===== Модель =====
|
===== Модель =====
|
||||||
|
|
||||||
Для публикации сообщений используется общий кошелек, который могут пополнять пользователи или администрация узла по мере его расходования на публикации.\\
|
Зависит от сервера. Например, для публикации сообщений может взыматься плата за пост или использоваться общий кошелек, который пополняют пользователи или администрация по мере его расходования на публикации.\\
|
||||||
В виду того, что майнинг KevaCoin осуществляется посредством алгоритма randomx, при текущем хешрейте, публикацию сообщений можно условно считать бесплатной.
|
В виду того, что майнинг KevaCoin осуществляется посредством алгоритма randomx, при текущем хешрейте, публикацию сообщений можно условно считать бесплатной.
|
||||||
|
|
||||||
На случай удорожания монеты (если это будет иметь место в перспективе), владельцы узлов могут предоставлять альтернативную модель для публикации сообщений:\\
|
На случай удорожания монеты (если это будет иметь место в перспективе), владельцы узлов могут предоставлять альтернативную модель для публикации сообщений:\\
|
||||||
например, выписывать за каждое сообщение в пуле уникальный адрес для оплаты отправителем, получая от каждой транзакции комиссию и монитизировать ресурс.
|
например, выписывать за каждое сообщение в пуле уникальный адрес для оплаты отправителем, получая от каждой транзакции комиссию и монитизировать ресурс.
|
||||||
|
|
||||||
|
В прочем, целесообразно воспринимать блокчейн как общедоступную базу данных, которую всегда можно портировать на альтернативный и более актуальный для своего времени носитель.
|
||||||
|
|
||||||
===== Хранение данных =====
|
===== Хранение данных =====
|
||||||
|
|
||||||
Не смотря на то, что протокол KevaCoin предусматривает [[wpru>CRUD|CRUD]] операции, как показал опыт, такие команды как _KEVA_DELETE_ лишь скрывают сообщение в кошельке, при этом физические данные остаются в блоках перманентно.
|
Не смотря на то, что протокол KevaCoin предусматривает [[wpru>CRUD|CRUD]] операции, как показал опыт, такие команды как _KEVA_DELETE_ лишь скрывают сообщение в кошельке, при этом физические данные остаются в блоках перманентно.
|
||||||
@ -95,9 +122,10 @@ composer create-project kevachat/webapp KevaChat
|
|||||||
|
|
||||||
===== Узлы =====
|
===== Узлы =====
|
||||||
|
|
||||||
* http://[201:23b4:991a:634d:8359:4521:5576:15b7]/kevachat/ | %%gemini://[301:23b4:991a:634d::1965]%%
|
* YGGverse
|
||||||
* http://kevachat.ygg | %%gemini://kevachat.ygg%%
|
* http://[201:23b4:991a:634d:8359:4521:5576:15b7]/kevachat/ | %%gemini://[301:23b4:991a:634d::1965]%%
|
||||||
* %%ncat 201:23b4:991a:634d:8359:4521:5576:15b7 1915%% - [[:nex_protocol|NPS]] сервер
|
* http://kevachat.ygg | %%gemini://kevachat.ygg%%
|
||||||
|
* %%[201:23b4:991a:634d:8359:4521:5576:15b7]:1915%% - [[:nex_protocol#nps|NPS]] сервер
|
||||||
|
|
||||||
===== Каналы =====
|
===== Каналы =====
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user