Completed
Push — master ( 0678d0...c42f85 )
by Dmitry
08:36 queued 01:17
created

SmartAdTargets::get()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 12

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
nc 1
nop 3
dl 0
loc 12
rs 9.8666
c 0
b 0
f 0
1
<?php
2
/**
3
 * @author Dmitry Gladyshev <[email protected]>
4
 * @date 26/08/20120 21:34
5
 */
6
7
namespace Yandex\Direct\Service;
8
9
use ReflectionException;
10
use Yandex\Direct\Exception\ErrorResponseException;
11
use Yandex\Direct\Exception\Exception;
12
use Yandex\Direct\Service;
13
use function Yandex\Direct\get_param_names;
14
15
/**
16
 * Class SmartAdTargets
17
 *
18
 * Сервис предназначен для выполнения операций с фильтрами — условиями нацеливания для смарт-баннеров.
19
 *
20
 * @see https://yandex.ru/dev/direct/doc/ref-v5/smartadtargets/smartadtargets-docpage/
21
 */
22
final class SmartAdTargets extends Service
23
{
24
    /**
25
     * Создает фильтры — условия нацеливания для смарт-баннеров, назначает CPC,
26
     * CPA или приоритет для создаваемых фильтров.
27
     *
28
     * @param array $SmartAdTargets
29
     *
30
     * @return array
31
     *
32
     * @throws ReflectionException
33
     * @throws ErrorResponseException
34
     * @throws Exception
35
     *
36
     * @see https://yandex.ru/dev/direct/doc/ref-v5/smartadtargets/add-docpage/
37
     */
38
    public function add($SmartAdTargets)
39
    {
40
        $params = compact(get_param_names(__METHOD__));
41
42
        return $this->request([
43
            'method' => 'add',
44
            'params' => $params
45
        ]);
46
    }
47
48
    /**
49
     * Удаляет фильтры — условия нацеливания для смарт-баннеров.
50
     *
51
     * @param array $SelectionCriteria
52
     *
53
     * @return array
54
     *
55
     * @throws ErrorResponseException
56
     * @throws Exception
57
     * @throws ReflectionException
58
     *
59
     * @see https://yandex.ru/dev/direct/doc/ref-v5/smartadtargets/delete-docpage/
60
     */
61
    public function delete($SelectionCriteria)
62
    {
63
        $params = compact(get_param_names(__METHOD__));
64
65
        return $this->request([
66
            'method' => 'delete',
67
            'params' => $params
68
        ]);
69
    }
70
71
    /**
72
     * Возвращает параметры фильтров — условий нацеливания для смарт-баннеров.
73
     *
74
     * @param array $SelectionCriteria
75
     * @param array $FieldNames
76
     * @param array $Page
77
     *
78
     * @return array
79
     *
80
     * @throws ErrorResponseException
81
     * @throws Exception
82
     * @throws ReflectionException
83
     *
84
     * @see https://yandex.ru/dev/direct/doc/ref-v5/smartadtargets/get-docpage/
85
     */
86
    public function get(
87
        $SelectionCriteria,
88
        $FieldNames,
89
        $Page = null
90
    ) {
91
        $params = compact(get_param_names(__METHOD__));
92
93
        return $this->request([
94
            'method' => 'get',
95
            'params' => $params
96
        ]);
97
    }
98
99
    /**
100
     * Возобновляет показы по ранее остановленным фильтрам — условиям нацеливания для смарт-баннеров.
101
     *
102
     * @param array $SelectionCriteria
103
     *
104
     * @return array
105
     *
106
     * @throws ErrorResponseException
107
     * @throws Exception
108
     * @throws ReflectionException
109
     *
110
     * @see https://yandex.ru/dev/direct/doc/ref-v5/smartadtargets/resume-docpage/
111
     */
112
    public function resume($SelectionCriteria)
113
    {
114
        $params = compact(get_param_names(__METHOD__));
115
116
        return $this->request([
117
            'method' => 'resume',
118
            'params' => $params
119
        ]);
120
    }
121
122
    /**
123
     * Назначает CPC, CPA и приоритеты для фильтров.
124
     *
125
     * @param array $Bids
126
     *
127
     * @return array
128
     *
129
     * @throws ErrorResponseException
130
     * @throws Exception
131
     * @throws ReflectionException
132
     *
133
     * @see https://yandex.ru/dev/direct/doc/ref-v5/smartadtargets/setBids-docpage/
134
     */
135
    public function setBids($Bids)
136
    {
137
        $params = compact(get_param_names(__METHOD__));
138
139
        return $this->request([
140
            'method' => 'setBids',
141
            'params' => $params
142
        ]);
143
    }
144
145
    /**
146
     * Останавливает показы по фильтрам — условиям нацеливания для смарт-баннеров.
147
     *
148
     * @param array $SelectionCriteria
149
     *
150
     * @return array
151
     *
152
     * @throws ErrorResponseException
153
     * @throws Exception
154
     * @throws ReflectionException
155
     *
156
     * @see https://yandex.ru/dev/direct/doc/ref-v5/smartadtargets/suspend-docpage/
157
     */
158
    public function suspend($SelectionCriteria)
159
    {
160
        $params = compact(get_param_names(__METHOD__));
161
162
        return $this->request([
163
            'method' => 'suspend',
164
            'params' => $params
165
        ]);
166
    }
167
168
    /**
169
     * Изменяет параметры фильтров — условий нацеливания для смарт-баннеров.
170
     *
171
     * @param array $SmartAdTargets
172
     *
173
     * @return array
174
     *
175
     * @throws ErrorResponseException
176
     * @throws Exception
177
     * @throws ReflectionException
178
     *
179
     * @see https://yandex.ru/dev/direct/doc/ref-v5/smartadtargets/update-docpage/
180
     */
181
    public function update($SmartAdTargets)
182
    {
183
        $params = compact(get_param_names(__METHOD__));
184
185
        return $this->request([
186
            'method' => 'update',
187
            'params' => $params
188
        ]);
189
    }
190
}
191