DS Helper GameAP: различия между версиями

Материал из HLDM Wiki
Перейти к навигации Перейти к поиску
 
(не показано 16 промежуточных версий этого же участника)
Строка 1: Строка 1:
 
[[Категория:АдминПанель]]
 
[[Категория:АдминПанель]]
[[Категория:Документация_GameAP]]
 
 
[[Категория:Документация для разработчиков]]
 
[[Категория:Документация для разработчиков]]
 
 
Набор функций для работы с выделенным сервером.
 
Набор функций для работы с выделенным сервером.
  
'''Расположение файла'''
+
== Расположение файла ==
 
  application/helpers/ds_helper.php
 
  application/helpers/ds_helper.php
  
'''Загрузка помощника'''
+
== Загрузка помощника ==
 
<syntaxhighlight lang="php">
 
<syntaxhighlight lang="php">
 
$this->load->helper('ds');
 
$this->load->helper('ds');
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 +
== Управление файлами ==
 +
 +
Функции, помогающие управлению файлами. Позволяют производить чтение, запись файлов.
  
 
=== get_ds_file_path ===
 
=== get_ds_file_path ===
  
Получение полного пути к исполняемым файлам панели.
+
Получение полного пути к игровому серверу.
  
 
  string get_ds_file_path( array $server_data )
 
  string get_ds_file_path( array $server_data )
 
:'''server_data'''
 
:'''server_data'''
 
:: Данные сервера.
 
:: Данные сервера.
 +
 +
'''Пример:'''
 +
<syntaxhighlight lang="php">
 +
$server_id = 5;
 +
$this->servers->get_server_data($server_id);
 +
$path =  get_ds_file_path($this->servers->server_data);
 +
echo $path; // Вернет что-то вроде /home/servers/my_server01/
 +
</syntaxhighlight>
  
 
=== get_file_protocol ===
 
=== get_file_protocol ===
Строка 27: Строка 37:
 
:'''server_data'''
 
:'''server_data'''
 
:: Данные сервера.
 
:: Данные сервера.
 +
 +
'''Пример:'''
 +
<syntaxhighlight lang="php">
 +
$server_id = 5;
 +
$this->servers->get_server_data($server_id);
 +
$protocol =  get_file_protocol($this->servers->server_data);
 +
echo $protocol; // вернет ftp, sftp или local
 +
</syntaxhighlight>
  
 
=== get_file_protocol_config ===
 
=== get_file_protocol_config ===
Строка 35: Строка 53:
 
:: Данные сервера.
 
:: Данные сервера.
  
=== get_last_command ===
+
'''Пример:'''
  
Последняя отправленная команда на выделенный сервер.
+
<syntaxhighlight lang="php">
  string get_last_command()
+
$server_id = 5;
 +
$this->servers->get_server_data($server_id);
 +
$config = get_file_protocol_config($this->servers->server_data);
  
=== get_sended_commands ===
+
print_r($config);
 
+
/* Array
Список отправленных команд на выделенный сервер.
+
(
array get_sended_commands()
+
    [driver] => sftp
 +
    [hostname] => localhost
 +
    [port] => 22
 +
    [username] => root
 +
    [password] => 12345678
 +
) */
 +
</syntaxhighlight>
  
 
=== list_ds_files ===
 
=== list_ds_files ===
Строка 57: Строка 83:
 
:'''extensions'''
 
:'''extensions'''
 
::Массив со списком расширений файлов.
 
::Массив со списком расширений файлов.
 +
 +
'''Пример:'''
 +
<syntaxhighlight lang="php">
 +
$server_id = 5;
 +
$this->servers->get_server_data($server_id);
 +
$dir = get_ds_file_path($this->servers->server_data) . '/cstrike/logs/';
 +
 +
$files_list = list_ds_files($dir, $this->servers->server_data, true, array('txt', 'log'));
 +
print_r($files_list);
 +
/*
 +
Array
 +
(
 +
    [0] => Array
 +
        (
 +
            [file_name] => file1.log
 +
            [file_time] => 1400096079
 +
            [file_size] => 0
 +
        )
 +
 +
    [1] => Array
 +
        (
 +
            [file_name] => file2.log
 +
            [file_time] => 1400096113
 +
            [file_size] => 9
 +
        )
 +
 +
)
 +
*/
 +
 +
$files_list = list_ds_files($dir, $this->servers->server_data, false, array('txt', 'log'));
 +
print_r($files_list);
 +
/*
 +
Array
 +
(
 +
    [0] => file1.log
 +
    [1] => file2.log
 +
)
 +
*/
 +
</syntaxhighlight>
  
 
=== read_ds_file ===
 
=== read_ds_file ===
Строка 77: Строка 142:
 
:'''server_data'''
 
:'''server_data'''
 
::Данные сервера
 
::Данные сервера
 +
 +
== Отправка команд ==
 +
 +
Функции для отправки команд на выделенный сервер. Эти функции позволяют отправить команду на сервер и получить ответ.
 +
 +
=== get_last_command ===
 +
 +
Последняя отправленная команда на выделенный сервер.
 +
string get_last_command()
 +
 +
=== get_sended_commands ===
 +
 +
Список отправленных команд на выделенный сервер.
 +
array get_sended_commands()
  
 
=== replace_shotcodes ===
 
=== replace_shotcodes ===

Текущая версия на 14:55, 15 мая 2014

Набор функций для работы с выделенным сервером.

Расположение файла

application/helpers/ds_helper.php

Загрузка помощника

$this->load->helper('ds');

Управление файлами

Функции, помогающие управлению файлами. Позволяют производить чтение, запись файлов.

get_ds_file_path

Получение полного пути к игровому серверу.

string get_ds_file_path( array $server_data )
server_data
Данные сервера.

Пример:

$server_id = 5;
$this->servers->get_server_data($server_id);
$path =  get_ds_file_path($this->servers->server_data);
echo $path; // Вернет что-то вроде /home/servers/my_server01/

get_file_protocol

Получение названия протокола передачи файлов (FTP, SFTP, Local).

string get_file_protocol( array $server_data )
server_data
Данные сервера.

Пример:

$server_id = 5;
$this->servers->get_server_data($server_id);
$protocol =  get_file_protocol($this->servers->server_data);
echo $protocol; // вернет ftp, sftp или local

get_file_protocol_config

Получение данных для соединения с sftp или ftp.

string get_file_protocol_config( array $server_data )
server_data
Данные сервера.

Пример:

$server_id = 5;
$this->servers->get_server_data($server_id);
$config =  get_file_protocol_config($this->servers->server_data);

print_r($config);
/* Array
(
    [driver] => sftp
    [hostname] => localhost
    [port] => 22
    [username] => root
    [password] => 12345678
) */

list_ds_files

Список файлов в директории.

array list_ds_files(string $dir, array $server_data [, bool $full_info = false ] [, array $extensions ] )
dir
Директория на выделенном сервере
server_data
Данные сервера.
full_info
Полная информация о файле (дата создания, размер).
extensions
Массив со списком расширений файлов.

Пример:

$server_id = 5;
$this->servers->get_server_data($server_id);
$dir = get_ds_file_path($this->servers->server_data) . '/cstrike/logs/';

$files_list = list_ds_files($dir, $this->servers->server_data, true, array('txt', 'log'));
print_r($files_list);
/*
Array
(
    [0] => Array
        (
            [file_name] => file1.log
            [file_time] => 1400096079
            [file_size] => 0
        )

    [1] => Array
        (
            [file_name] => file2.log
            [file_time] => 1400096113
            [file_size] => 9
        )

)
*/

$files_list = list_ds_files($dir, $this->servers->server_data, false, array('txt', 'log'));
print_r($files_list);
/*
Array
(
    [0] => file1.log
    [1] => file2.log
)
*/

read_ds_file

Читает содержимое файла на выделенном сервере.

string read_ds_file ( string $file, array $server_data )
file
Файл на выделенном сервере
server_data
Данные сервера

write_ds_file

Записывает данные в файл на выделенном сервере.

bool write_ds_file ( string $file, string $contents, array $server_data )
file
Файл на выделенном сервере
contents
Данные файла
server_data
Данные сервера

Отправка команд

Функции для отправки команд на выделенный сервер. Эти функции позволяют отправить команду на сервер и получить ответ.

get_last_command

Последняя отправленная команда на выделенный сервер.

string get_last_command()

get_sended_commands

Список отправленных команд на выделенный сервер.

array get_sended_commands()

replace_shotcodes

Заменяет шоткоды в команде.

replace_shotcodes ( string $command, array $server_data )
command
Отправляемая команда с шоткодами
server_data
Данные сервера

send_command

Отправляет команду на сервер.

string send_command ( string $command, array $server_data [ , bool $path = false ] )
command
Отправляемая команда
server_data
Данные сервера
path
Путь. Перед отправкой команды будет выполнена смена на указанный путь.