129
129
130
130
КонецФункции
131
131
132
+ Функция УдалитьКлавиатуру (Сообщение ) Экспорт
133
+
134
+ Удаление = Новый Структура("remove_keyboard" , Истина );
135
+
136
+ Сообщение.Вставить("reply_markup" , Удаление);
137
+
138
+ КонецФункции
139
+
132
140
Процедура ДобавитьКлавиатуру (Сообщение , Клавиатура ) Экспорт
133
141
134
142
Сообщение.Вставить("reply_markup" , Клавиатура);
180
188
181
189
КонецПроцедуры
182
190
191
+ Процедура ОтветитьНаСообщение (Сообщение , message_id ) Экспорт
192
+
193
+ Сообщение.Вставить("reply_to_message_id" , message_id);
194
+
195
+ КонецПроцедуры
196
+
183
197
Функция НовыйПринудительныйОтвет (Избирательно = Ложь ) Экспорт
184
198
185
199
СоответствиеВнутреннее = Новый Соответствие;
215
229
216
230
КонецФункции
217
231
232
+ // Формирует данные для создания удаляемого сообщения
233
+ // (Метод deleteMessage)
234
+ //
235
+ // Параметры:
236
+ // ЧатИД - Число - id чата, где находится сообщение
237
+ // СообщениеИД - Число - id удаляемого сообщения
238
+ //
239
+ // Возвращаемое значение:
240
+ // Структура - для передачи в УдалитьСообщение() в классе ТелеграмБот
241
+ //
242
+ Функция УдаляемоеСообщение (ЧатИД , СообщениеИД ) Экспорт
243
+
244
+ Структура = Новый Структура;
245
+ Структура.Вставить("chat_id" , ЧатИД);
246
+ Структура.Вставить("message_id" , СообщениеИД);
247
+
248
+ Возврат Структура;
249
+
250
+ КонецФункции
251
+
218
252
// Создает каркас для нового опроса (не добавляет варианты ответа!)
219
253
// (Метод sendPoll)
220
254
//
221
255
// Параметры:
222
256
// ПолучательИД - Число - chat_id получателя
223
- // ТекстВопроса - Строка - Текст вопроса, длинна 1-255 символов
224
- // Анонимныей - Булево - Если Ложь, то показывается какой вариант ответа выбрал участник опроса
257
+ // ТекстВопроса - Строка - Текст вопроса, длина 1-255 символов
258
+ // Анонимный - Булево - Если Ложь, то показывается какой вариант ответа выбрал участник опроса
225
259
// ВозможенМножественныйОтвет - Булево - Если Истина, то участник может проголосовать за несколько вариантов
226
260
// БезОповещения - Булево - Если Истина, то сообщение будет переслано без оповещения получателя
227
261
//
228
262
// Возвращаемое значение:
229
263
// Структура - Структура, которую дополнительно нужно передать в функцию ДобавитьВариантОтветаНаОпрос()
230
264
//
231
- Функция НовыйОпрос (ПолучательИД , ТекстВопроса , Анонимныей = Истина , ВозможенМножественныйОтвет = Ложь , БезОповещения = Ложь ) Экспорт
265
+ Функция НовыйОпрос (ПолучательИД , ТекстВопроса , Анонимный = Истина , ВозможенМножественныйОтвет = Ложь , БезОповещения = Ложь ) Экспорт
232
266
233
267
Опрос = Новый Соответствие;
234
268
Опрос.Вставить("chat_id" , ПолучательИД);
235
269
Опрос.Вставить("question" , ТекстВопроса);
236
- Опрос.Вставить("is_anonymous" , Анонимныей );
270
+ Опрос.Вставить("is_anonymous" , Анонимный );
237
271
Опрос.Вставить("allows_multiple_answers" , ВозможенМножественныйОтвет);
238
272
Опрос.Вставить("disable_notification" , БезОповещения);
239
273
МассивВариантовОтвета = Новый Массив();
243
277
244
278
КонецФункции
245
279
280
+ // Создает каркас для нового опроса квиз (не добавляет варианты ответа!)
281
+ // (Метод sendPoll)
282
+ //
283
+ // Параметры:
284
+ // ПолучательИД - Число - chat_id получателя
285
+ // ТекстВопроса - Строка - Текст вопроса, длинна 1-255 символов
286
+ // Анонимный - Булево - Если Ложь, то показывается какой вариант ответа выбрал участник опроса
287
+ // БезОповещения - Булево - Если Истина, то сообщение будет переслано без оповещения получателя
288
+ //
289
+ // Возвращаемое значение:
290
+ // Структура - Структура, которую дополнительно нужно передать в функцию ДобавитьВариантОтветаНаОпрос(),
291
+ // по умолчанию признак правильного ответа будет являться первый добавленный ответ,
292
+ // в случае когда требуется явное указание правильного ответа Структуру необходимо передать
293
+ // дополнительно в функцию ДобавитьПравильныйОтветКвиз()
294
+ //
295
+ Функция НовыйОпросКвиз (ПолучательИД , ТекстВопроса , Анонимный = Истина , БезОповещения = Ложь ) Экспорт
296
+
297
+ Опрос = НовыйОпрос(ПолучательИД, ТекстВопроса, Анонимный, , БезОповещения);
298
+ Опрос.Вставить("type" , "quiz" );
299
+
300
+ Возврат Опрос;
301
+
302
+ КонецФункции
303
+
246
304
// Добавляет варианты ответа на опрос
247
305
// Необходимо поочередно добавить от 2 до 10 вариантов
248
306
// (Метод sendPoll)
249
307
//
250
308
// Параметры:
251
309
// Опрос - Структура - То, что вернулось от НовыйОпрос()
252
- // ВариантОтвета - Строка - Текст варианта ответа, длинна 1-100 символов
310
+ // ВариантОтвета - Строка - Текст варианта ответа, длина 1-100 символов
253
311
//
254
312
// Возвращаемое значение:
255
313
// Структура - Структура, готовая для передачи в ОтправитьОпрос() в классе ТелеграмБот
260
318
261
319
Возврат Опрос;
262
320
263
- КонецФункции
321
+ КонецФункции
322
+
323
+ // Добавляет правильный вариант ответ на опрос
324
+ // Правильный ответ может быть только один
325
+ // (Метод sendPoll)
326
+ //
327
+ // Параметры:
328
+ // Опрос - Структура - То, что вернулось от НовыйОпрос()
329
+ // ПравильныйОтвет - Строка - Текст правильного ответа, длина 1-100 символов
330
+ //
331
+ // Возвращаемое значение:
332
+ // Структура - Структура, готовая для передачи в ОтправитьОпрос() в классе ТелеграмБот
333
+ //
334
+ Функция ДобавитьПравильныйОтветКвиз (Опрос , ПравильныйОтвет ) Экспорт
335
+
336
+ МассивВариантовОтвета = Опрос["options" ];
337
+
338
+ МассивВариантовОтвета.Добавить(ПравильныйОтвет);
339
+ Опрос.Вставить("correct_option_id" , МассивВариантовОтвета.ВГраница());
340
+
341
+ Возврат Опрос;
342
+
343
+ КонецФункции
344
+
345
+ // Команда бота (BotCommand), элемент массива устанавливаемых команд
346
+ // (Метод setMyCommand)
347
+ //
348
+ // Параметры:
349
+ // Имя - Строка - Имя команды, длина 1-32 символа
350
+ // Описание - Строка - Описание команды, длина 3-256 символов
351
+ //
352
+ // Возвращаемое значение:
353
+ // Структура - команда, добавляемая в массив команд
354
+ //
355
+ Функция КомандаБота (Имя , Описание ) Экспорт
356
+
357
+ Структура = Новый Структура;
358
+ Структура.Вставить("command" , Имя);
359
+ Структура.Вставить("description" , Описание);
360
+
361
+ Возврат Структура;
362
+
363
+ КонецФункции
0 commit comments