]> git.stg.codes - stg.git/blob - doc/help/ch11.xml
Use std::jthread and C++17.
[stg.git] / doc / help / ch11.xml
1 <chapter xml:id="ch11">
2     <title>Приложение Б</title>
3     <simplesect>
4         <title>Oписание формата файлов /var/stargazer/admins/*.adm.</title>
5         <para>В каталоге /var/stargazer/admins (путь может быть изменен в настройках плагина store_files) находятся файлы содержащие параметры администраторов системы. Имя файла имеет вид: &lt;login&gt;.adm, где &lt;login&gt; — логин администратора. Файл имеет формат «ключ-значение». Каждая строка файла содержит название параметра и его значение, разделенные знаком «=», или коментарий начинающийся с символа «#». Допустимы следующие параметры:</para>
6         <itemizedlist mark="opencircle">
7                 <listitem><para>Password — пароль администратора в зашифрованном виде;</para></listitem>
8                 <listitem><para>ChgStat — право на изменение статистики абонента, может принимать значения 0 и 1;</para></listitem>
9                 <listitem><para>ChgConf — право на изменение данных учетной записи абонента, может принимать значения 0 и 1;</para></listitem>
10                 <listitem><para>ChgCash — право на изменение состояния счета абонента, может принимать значения 0 и 1;</para></listitem>
11                 <listitem><para>ChgPassword — право на изменение пароля абонента, может принимать значения 0 и 1;</para></listitem>
12                 <listitem><para>UsrAddDel — право на добавление и удаление абонентов, может принимать значения 0 и 1;</para></listitem>
13                 <listitem><para>ChgAdmin — право на изменение параметров администраторов системы а также их добавление и удаление, может принимать значения 0 и 1;</para></listitem>
14                 <listitem><para>ChgTariff — право на добавление, удаление и изменение тарифов, может принимать значения 0 и 1.</para></listitem>
15         </itemizedlist>
16         </simplesect>
17         <simplesect>
18         <title>Описание формата файлов /var/stargazer/users/*/*.</title>
19         <para>Данные абонентов хранятся в каталогах вида /var/stargazer/users/&lt;login&gt;, где &lt;login&gt; — логин абонента. В каталогах содержатся файлы conf, stat, stat.&lt;YYYY&gt;.&lt;MM&gt;, stat2.&lt;YYYY&gt;.&lt;MM&gt;, log, log2 и подкаталоги messages и detail_stat. Файл conf содержит данные учетной записи абонента, файл stat содержит статистику абонента за последний месяц, файлы stat.&lt;YYYY&gt;.&lt;MM&gt; и stat2.&lt;YYYY&gt;.&lt;MM&gt; содержат статистику абонента за предыдущие месяцы. Они различаются только полнотой представления — файл stat2.&lt;YYYY&gt;.&lt;MM&gt; содержит больше информации. Файлы log и log2 содержат журнал изменений (в том числе подключений и отключений). Файл log2 идентичен файлу log за исключением того что при отключении абонента в него пишется причина отключения. Подкаталог messages содержит файлы с сообщениями абоненту. Имена файлов представляют собой метку времени создания сообщения в формате UNIX Timestamp. Подкаталог detail_stat содержит в себе детальную статистику абонента, разбитую по годам, месяцам и дням: &lt;YYYY&gt;/&lt;MM&gt;/&lt;DD&gt;. Файлы учетной записи, статистики и детальной статистики представлены в формате «ключ-значение». Каждая строка файла состоит из названия параметра и его значения разделенных символом «=», пустые строки и строки начинающиеся с символа «#» (комментарии) игнорируются.</para>
20         <para>Описание параметров файла conf:</para>
21         <itemizedlist mark="opencircle">
22                 <listitem><para>Password — пароль абонента (в открытом виде);</para></listitem>
23                 <listitem><para>IP — список IP-адресов, разделенных запятой, с которых разрешена авторизация абонента (может содержать * — авторизация разрешена с любого адреса);</para></listitem>
24                 <listitem><para>Tariff — название текущего тарифного плана абонента;</para></listitem>
25                 <listitem><para>TariffChange — название тарифного плана, который будет установлен в начале следующего месяца (может быть пустым);</para></listitem>
26                 <listitem><para>Credit — величина кредита абоненту;</para></listitem>
27                 <listitem><para>CreditExpire — дата истечения срока кредитования абонента в формате UNIX Timestamp (может содержать 0 — «вечный» кредит);</para></listitem>
28                 <listitem><para>DisabledDetailStat — параметр, отключающий ведение детальной статистики для абонента, может принимать значения 0 и 1;</para></listitem>
29                 <listitem><para>Down — принудительное отключение абонента, может принимать значения 0 и 1;</para></listitem>
30                 <listitem><para>Passive — «заморозка» абонента (для таких абонентов запрещена авторизация и не снимается абонентская плата), может принимать значения 0 и 1;</para></listitem>
31                 <listitem><para>RealName — реальные ФИО абонента, текстовое поле;</para></listitem>
32                 <listitem><para>Address — почтовый адрес абонента в произвольном формате, текстовое поле;</para></listitem>
33                 <listitem><para>Phone — номера телефонов абонентов в произвольном формате, текстовое поле;</para></listitem>
34                 <listitem><para>Note — примечание, текстовое поле;</para></listitem>
35                 <listitem><para>Email — адрес электронной почты абонента, текстовое поле;</para></listitem>
36                 <listitem><para>Group — группа в которую входит абонент, текстовое поле;</para></listitem>
37                 <listitem><para>AlwaysOnline — включение доступа без авторизации, может принимать значение 0 или 1, для функционирования требует плагин auth_ao;</para></listitem>
38                 <listitem><para>CreationTime — момент создания учетной записи абонента, UNIX Timestamp;</para></listitem>
39                 <listitem><para>Userdata0 ... Userdata9 — дополнительные текстовые параметры которые могут содержать вспомогательную информацию.</para></listitem>
40         </itemizedlist>
41         <para>Описание параметров файла stat:</para>
42         <itemizedlist mark="opencircle">
43                 <listitem><para>U0 … U9, D0 … D9 — текущие данные о трафике абонента в байтах по направлениям;</para></listitem>
44                 <listitem><para>Cash — состояние счета абонента;</para></listitem>
45                 <listitem><para>FreeMb — количество «бесплатных мегабайт» у абонента (в деньгах);</para></listitem>
46                 <listitem><para>LastActivityTime — момент последней активности абонента, UNIX Timestamp;</para></listitem>
47                 <listitem><para>LastCashAdd — последнее изменение счета абонента;</para></listitem>
48                 <listitem><para>LastCashAddTime — момент последнего изменения счета абонента, UNIX Timestamp;</para></listitem>
49                 <listitem><para>PassiveTime — количество секунд проведенное в состоянии «заморожен».</para></listitem>
50         </itemizedlist>
51         <para>Описание параметров файла stat.&lt;YYYY&gt;.&lt;MM&gt;</para>
52         <itemizedlist mark="opencircle">
53                 <listitem><para>U0 … U9, D0 … D9 — данные о трафике абонента в байтах по направлениям на конец месяца;</para></listitem>
54                 <listitem><para>Cash — состояние счета абонента на конец месяца;</para></listitem>
55         </itemizedlist>
56         <para>Описание параметров файла stat2.&lt;YYYY&gt;.&lt;MM&gt;</para>
57         <itemizedlist mark="opencircle">
58                 <listitem><para>U0 … U9, D0 … D9 — данные о трафике абонента в байтах по направлениям на конец месяца;</para></listitem>
59                 <listitem><para>Cash — состояние счета абонента на конец месяца;</para></listitem>
60                 <listitem><para>FreeMb — количество «бесплатных мегабайт» у абонента (в деньгах) на конец месяца;</para></listitem>
61                 <listitem><para>LastActivityTime — момент последней активности абонента, UNIX Timestamp;</para></listitem>
62                 <listitem><para>LastCashAdd — последнее изменение счета абонента;</para></listitem>
63                 <listitem><para>LastCashAddTime — момент последнего изменения счета абонента, UNIX Timestamp;</para></listitem>
64                 <listitem><para>PassiveTime — количество секунд проведенное в состоянии «заморожен».</para></listitem>
65         </itemizedlist>
66         </simplesect>
67         <simplesect>
68         <title>Описание формата файлов /var/stargazer/tariff/*.tf.</title>
69         <para>Файлы /var/stargazer/tariffs/*.tf содержат информацию о тарифах. Имя файла имеет вид &lt;name&gt;.tf, где &lt;name&gt; — название тарифа. Файл имеет формат «ключ-значение». Каждая строка файла содержит название параметра и его значение разделенные символом «=», пустые строки и строки начинающиеся с символа «#» (коментарии) игнорируются.</para>
70         <para>Описание тарифа состоит из общих параметров и параметров специфичных для каждого направления. Параметры описывающие направления содержат в своем названии номер направления к которому они относятся.</para>
71         <para>Описание параметров файла тарифов:</para>
72         <itemizedlist mark="opencircle">
73                 <listitem><para>Fee — величина абонентской платы;</para></listitem>
74                 <listitem><para>Free — количество «бесплатных мегабайт» входящих в абонентскую плату (в деньгах);</para></listitem>
75                 <listitem><para>PassiveCost — стоимость «заморозки» абонента;</para></listitem>
76                 <listitem><para>TraffType — тип тарификации трафика:</para>
77                         <itemizedlist mark="square">
78                                 <listitem><para>up+down — входящий и исходящий трафик тарифицируется суммарно;</para></listitem>
79                                 <listitem><para>up — тарифицируется только исходящий трафик;</para></listitem>
80                                 <listitem><para>down — тарифицируется только входящий трафик;</para></listitem>
81                                 <listitem><para>max — тарифицируется большее количество трафика;</para></listitem>
82                         </itemizedlist>
83                 </listitem>
84                 <listitem><para>PriceDayA0 … PriceDayA9 — цена трафика по соответствующему направлению в дневной период до превышения порога;</para></listitem>
85                 <listitem><para>PriceDayB0 … PriceDayB9 — цена трафика по соответствующему направлению в дневной период после превышения порога;</para></listitem>
86                 <listitem><para>PriceNightA0 … PriceNightA9 — цена трафика по соответствующему направлению в ночной период до превышения порога;</para></listitem>
87                 <listitem><para>PriceNightB0 … PriceNightB9 — цена трафика по соответствующему направлению в ночной период после превышения порога;</para></listitem>
88                 <listitem><para>Threshold0 … Threshold9 — величина порога по каждому из направлений в байтах;</para></listitem>
89                 <listitem><para>Time0 ... Time9 — интервал времени считающийся «дневным» (остальное время считается «ночным») в формате HH1:MM1-HH2:MM2;</para></listitem>
90                 <listitem><para>SinglePrice0 ... SinglePrice9 — отключает «пороговую» тарификацию (трафик при этом считается по допороговой цене), может принимать значения 0 и 1;</para></listitem>
91                 <listitem><para>NoDiscount0 … NoDiscount9 — отключает тарификацию по времени (трафик при этом считается по «дневной» цене), может принимать значения 0 и 1.</para></listitem>
92         </itemizedlist>
93         </simplesect>
94         </chapter>