Облачная сеть
Объект Cloud реализует ряд методов и свойств для создания ядра и клиентов облачной социальной сети, далее называемой Облаком Клиентов (ОК).
Для построения ОК требуется одна центральная ячейка (Ядро или Трекер), и более чем одна клиентская ячейка. Все типы ячеек строятся на ядре системы Friend и имеют одинаковый набор функций встроенного языка Friend.
В качестве устройства клиента и трекера могут быть использованы устройства под управлением ОС Windows или ОС Android.
Можно использовать мобильные смартфоны и планшеты подключенные к сети Интернет через динамические IP-адреса.
Логика работы трекера позволяет клиентам связываться друг с другом не имея статических ip-адресов, а превелегированным клиентам представлять свой ресурс еще и в сети Интернет как обычный сайт или сервер.
При этом, например, если имя клиентского ресурса ClientName, а имя домена социальной сети (облака) CloudName.com, то сайт превелегированного клиента Облака, будет доступен в сети Интернет по следующей ссылке CloudName.com/ClientName.
Для обеспечения работы превелегированных клиентов в корне трекера (папка WWW) должна находиться страничка с кодом обслуживания и именем
rederect.frd (имя запрошенного ресурса код страницы получает обычным образом, из массива REQUEST элемента frederect: REQUEST [‘frederect‘] )
Для учета и управления клиентами объект Cloud ведет базу данных, со следующими полями, которую нужно сохранять и загружать командами
Cloud.Save(file)
Cloud.Open(file)
Структура базы данных объекта Cloud:
name — логин клиента или сервера
fio — фамилия имя очество владельца
type — тип логина (любой тип кроме traker)
ip — актуальный адрес с сети Интернет или пустая строка
password — пароль логина
email — контактная почта логина
site — имя сайта для превелигерованных клиентов
money — актуальный баланс средств для платных клиентов
reiting — оценочный счет клиента в сети
block — логин заблокирован
Методы объекта Cloud
Получение фрейма сведений о клиенте по логину Cloud[Логин]
Получение значения именуемого поля клиента (например поля email ) Cloud[Логин][‘email‘]
Запись\изменение именуемого поля клиента Cloud.Set(Логин, Поле, Значение)
Добавление клиента Cloud.Add(login,password,ip, type,fio)
** Для создания самого себя клиенту или серверу необходимо указать тип «me»
***Для создания связи клиента со своим трекером, необходимо указать тип «traker»
Удаление клиента Cloud.Remove(login)
Проверка соответствия логина паролю (выдает true\false) Cloud.CheckPassword(login,password)
Получение актуального IP-адреса клиента\трекера или пустая строка Cloud.IP(login)
Регистрация сообщенного клиентом актуального IP-адреса Cloud.SetIP(login, IP)
Запрос от клиента к трекеру актуального IP для адресата X Cloud.QueryIP(X, blockLogin)
Генерация ответа клиенту от трекера на запрос актуального ip для адресата X Cloud.PayIP(login, password,X)
Генерация ссылки на сайт для превелегированного клиента Cloud.Site(login)
Включение\выключение режима клиентского квитирования трекера через заданное число минут Cloud.ClientMode(минут)
Резервированные имена страниц трекера и клиента
index.frd — ничего не значащая для работы представительская страница сервера или рабочая витрина клиента
mail.frd — обмен сообщениям
pressa.frd — канал социальной информации
queryip.frd — логика ответов на запросы актуальных IP-адресов
rederect.frd — логика обслуживания пемиум клиентов имеющих вход на свой сайт из сети Интернет
online.frd — логика периодического прослушивания позывных клиентов
ofline.frd — логика приема сообщения об добровольном отключении клиента
registr.frd — логика регистрации новых клиентов
command.frd — логика командного интерфейса трекера
help.frd — логика запроса клиентом служебной информации и обновлений