mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2024-11-28 09:08:38 +02:00
Преобразование OPI -> OInt (workflow)
This commit is contained in:
parent
0b3a1119d7
commit
83399a4110
16
.github/workflows/oint_test.yml
vendored
16
.github/workflows/oint_test.yml
vendored
@ -730,10 +730,26 @@ jobs:
|
||||
if: ${{ cancelled() }} == false
|
||||
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./OInt/tests/Modules/internal/OPI_Тесты.os "Слак_ОтправитьУдалитьСообщение"
|
||||
|
||||
- name: Отправить/Удалить эфимерное
|
||||
if: ${{ cancelled() }} == false
|
||||
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./OInt/tests/Modules/internal/OPI_Тесты.os "Слак_ОтправитьУдалитьЭфимерное"
|
||||
|
||||
- name: Получить отложенные сообщения
|
||||
if: ${{ cancelled() }} == false
|
||||
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./OInt/tests/Modules/internal/OPI_Тесты.os "Слак_ПолучитьОтложенныеСообщения"
|
||||
|
||||
- name: Создать/Архивировать канал
|
||||
if: ${{ cancelled() }} == false
|
||||
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./OInt/tests/Modules/internal/OPI_Тесты.os "Слак_СоздатьАрхивироватьКанал"
|
||||
|
||||
- name: Получить список каналов
|
||||
if: ${{ cancelled() }} == false
|
||||
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./OInt/tests/Modules/internal/OPI_Тесты.os "Слак_ПолучитьСписокКаналов"
|
||||
|
||||
- name: Открыть/Закрыть диалог
|
||||
if: ${{ cancelled() }} == false
|
||||
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./OInt/tests/Modules/internal/OPI_Тесты.os "Слак_ОткрытьЗакрытьДиалог"
|
||||
|
||||
Encode:
|
||||
runs-on: ubuntu-latest
|
||||
needs: Testing-Twitter
|
||||
|
@ -42,8 +42,6 @@
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ПолучитьИнформациюОБоте(Знач Токен) Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
|
||||
|
||||
URL = "https://slack.com/api/auth.test";
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
@ -57,18 +55,20 @@
|
||||
// Получает список рабочих областей, в которых подключен бот
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Курсор - Строка - Указатель из предыдущего запроса, если строк результата > 100 - cursor
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ПолучитьСписокРабочихОбластей(Знач Токен) Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
|
||||
Функция ПолучитьСписокРабочихОбластей(Знач Токен, Знач Курсор = "") Экспорт
|
||||
|
||||
URL = "https://slack.com/api/auth.teams.list";
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
Ответ = OPI_Инструменты.Get(URL, , Заголовки);
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("cursor", Курсор, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Get(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
@ -76,7 +76,7 @@
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область РаботаСЧатами
|
||||
#Область РаботаССообщениями
|
||||
|
||||
// Отправить сообщение
|
||||
// Отправляет сообщение в выбранный час
|
||||
@ -86,23 +86,23 @@
|
||||
// Канал - Строка - Идентификатор канала - channel
|
||||
// Текст - Строка - Текст сообщения - text
|
||||
// ДатаОтправки - Дата - Дата отправки для отложенного сообщения - date
|
||||
// МассивБлоков - Массив Из Структура - Массив описаний блоков - blocks - JSON массива описаний блоков
|
||||
// Блоки - Массив Из Структура - Массив описаний блоков - blocks - JSON массива описаний блоков
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ОтправитьСообщение(Знач Токен, Знач Канал, Знач Текст = "", Знач ДатаОтправки = "", Знач МассивБлоков = "") Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
|
||||
|
||||
ЕстьБлоки = ЗначениеЗаполнено(МассивБлоков);
|
||||
ЕстьДата = ЗначениеЗаполнено(ДатаОтправки);
|
||||
|
||||
Функция ОтправитьСообщение(Знач Токен, Знач Канал, Знач Текст = "", Знач ДатаОтправки = "", Знач Блоки = "") Экспорт
|
||||
|
||||
ЕстьДата = ЗначениеЗаполнено(ДатаОтправки);
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
Если ЗначениеЗаполнено(Блоки) И Не ТипЗнч(Блоки) = Тип("Строка") Тогда
|
||||
OPI_ПреобразованиеТипов.ПолучитьМассив(Блоки);
|
||||
КонецЕсли;
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("channel", Канал , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("text" , Текст , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("blocks" , МассивБлоков, "Коллекция", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("channel", Канал, "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("text" , Текст, "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("blocks" , Блоки, "Коллекция", Параметры);
|
||||
|
||||
Если ЕстьДата Тогда
|
||||
|
||||
@ -121,9 +121,58 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ИзменитьСообщение(Знач Токен, Знач Канал, Знач Отметка, Знач Текст = "", Знач МассивБлоков = "") Экспорт
|
||||
// Отправить эфимерное сообщение
|
||||
// Отправляет сообщение, которое приходит в канал, но видно
|
||||
// только конкретному пользователю
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - Идентификатор канала - channel
|
||||
// Текст - Строка - Текст сообщения - text
|
||||
// Пользователь - Строка - ID пользователя - user
|
||||
// Блоки - Массив Из Структура - Массив описаний блоков - blocks - JSON массива описаний блоков
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ОтправитьЭфимерноеСообщение(Знач Токен
|
||||
, Знач Канал
|
||||
, Знач Текст = ""
|
||||
, Знач Пользователь = ""
|
||||
, Знач Блоки = "") Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
|
||||
Если ЗначениеЗаполнено(Блоки) И Не ТипЗнч(Блоки) = Тип("Строка") Тогда
|
||||
OPI_ПреобразованиеТипов.ПолучитьМассив(Блоки);
|
||||
КонецЕсли;
|
||||
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("channel", Канал , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("text" , Текст , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("user" , Пользователь, "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("blocks" , Блоки , "Коллекция", Параметры);
|
||||
|
||||
URL = "https://slack.com/api/chat.postEphemeral";
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Изменить сообщение
|
||||
// Изменяет состав существующего сообщения
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - Идентификатор канала - channel
|
||||
// Отметка - Строка - Временная отметка сообщения - stamp
|
||||
// Текст - Строка - Новый текст сообщения - text
|
||||
// МассивБлоков - Массив Из Структура - Массив описаний блоков - blocks - JSON массива описаний блоков
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ИзменитьСообщение(Знач Токен, Знач Канал, Знач Отметка, Знач Текст = "", Знач МассивБлоков = "") Экспорт
|
||||
|
||||
Строка_ = "Строка";
|
||||
URL = "https://slack.com/api/chat.update";
|
||||
@ -154,7 +203,6 @@
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция УдалитьСообщение(Знач Токен, Знач Канал, Знач Отметка, Знач ЭтоОтложенное = Ложь) Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
|
||||
OPI_ПреобразованиеТипов.ПолучитьБулево(ЭтоОтложенное);
|
||||
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
@ -177,15 +225,24 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ПолучитьСписокОтложенныхСообщений(Знач Токен, Знач Канал) Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
|
||||
// Получить список отложенных сообщений
|
||||
// Получает список отложенных сообщений канала
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - Идентификатор канала - channel
|
||||
// Курсор - Строка - Указатель из предыдущего запроса, если строк результата > 100 - cursor
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ПолучитьСписокОтложенныхСообщений(Знач Токен, Знач Канал, Знач Курсор = "") Экспорт
|
||||
|
||||
URL = "https://slack.com/api/chat.scheduledMessages.list";
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("channel", Канал, "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("channel", Канал , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("cursor" , Курсор, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
@ -193,10 +250,18 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить ссылку на сообщение
|
||||
// Получает постоянный UTL к сообщению канала
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - Идентификатор канала - channel
|
||||
// Отметка - Строка - Временная отметка или ID сообщения - stamp
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ПолучитьСсылкуНаСообщение(Знач Токен, Знач Канал, Знач Отметка) Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
|
||||
|
||||
URL = "https://slack.com/api/chat.getPermalink";
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
@ -210,6 +275,372 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить список ответов на сообщение
|
||||
// Получает массив сообщений, которые являются ответом на указанное
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - Идентификатор канала - channel
|
||||
// Отметка - Строка - Временная отметка или ID сообщения - stamp
|
||||
// Курсор - Строка - Указатель из предыдущего запроса, если строк результата > 100 - cursor
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ПолучитьСписокОтветовНаСообщение(Знач Токен, Знач Канал, Знач Отметка, Знач Курсор = "") Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.replies";
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("channel", Канал , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("cursor" , Курсор , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("ts" , Отметка, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Get(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область РаботаСКаналами
|
||||
|
||||
// Получить список каналов
|
||||
// Получает список доступных каналов
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// ИсключатьАрхивированные - Булево - Признак исключения архивированных каналов - notarchived
|
||||
// Курсор - Строка - Указатель из предыдущего запроса, если строк результата > 100 - cursor
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ПолучитьСписокКаналов(Знач Токен, Знач ИсключатьАрхивированные = Ложь, Знач Курсор = "") Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.list";
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("exclude_archived", ИсключатьАрхивированные, "Булево", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("cursor" , Курсор , "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Get(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить список пользователей канала
|
||||
// Получает список пользователей указанного канала
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - Идентификатор канала - channel
|
||||
// Курсор - Строка - Указатель из предыдущего запроса, если строк результата > 100 - cursor
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ПолучитьСписокПользователейКанала(Знач Токен, Знач Канал, Знач Курсор = "") Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.members";
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("channel", Канал , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("cursor" , Курсор, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Get(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Создать канал
|
||||
// Создает новый канал
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Название - Строка - Наименование канала - title
|
||||
// Приватный - Булево - Создать канал приватным - private
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция СоздатьКанал(Знач Токен, Знач Название, Знач Приватный = Ложь) Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.create";
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("name" , Название , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("is_private", Приватный, "Булево", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Архивировать канал
|
||||
// Архивирует активный канал
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - ID канала - channel
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция АрхивироватьКанал(Знач Токен, Знач Канал) Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.archive";
|
||||
Ответ = УправлениеДиалогом(Токен, Канал, URL);
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить канал
|
||||
// Получает информацию о канале
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - ID канала - channel
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ПолучитьКанал(Знач Токен, Знач Канал) Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.info";
|
||||
Ответ = УправлениеДиалогом(Токен, Канал, URL, "GET");
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить историю канала
|
||||
// Получает информацию событиях канала
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - ID канала - channel
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ПолучитьИсториюКанала(Знач Токен, Знач Канал) Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.history";
|
||||
Ответ = УправлениеДиалогом(Токен, Канал, URL, "GET");
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Пригласить пользователей в канал
|
||||
// Добавляет указанных пользователей в канал
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - ID канала - channel
|
||||
// МассивПользователей - Массив Из Строка - Массив ID пользователей - users
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ПригласитьПользователейВКанал(Знач Токен, Знач Канал, Знач МассивПользователей) Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.invite";
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьКоллекцию(МассивПользователей);
|
||||
МассивПользователей = СтрСоединить(МассивПользователей, ",");
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("channel", Канал , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("users" , МассивПользователей, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Выгнать пользователя из канала
|
||||
// Удаляет указанного пользователя из канала
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - ID канала - channel
|
||||
// Пользователь - Строка - ID пользователя - user
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ВыгнатьПользователяИзКанала(Знач Токен, Знач Канал, Знач Пользователь) Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.kick";
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("channel", Канал , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("user" , Пользователь, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Вступить в канал
|
||||
// Добавляет текущего бота в канал
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - ID канала - channel
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ВступитьВКанал(Знач Токен, Знач Канал) Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.join";
|
||||
Ответ = УправлениеДиалогом(Токен, Канал, URL);
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Покинуть канал
|
||||
// Удаляет текущего бота из канала
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - ID канала - channel
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ПокинутьКанал(Знач Токен, Знач Канал) Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.leave";
|
||||
Ответ = УправлениеДиалогом(Токен, Канал, URL);
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Установить тему канала
|
||||
// Устанавливает тему канала
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - ID канала - channel
|
||||
// Тема - Строка - Тема канала - theme
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция УстановитьТемуКанала(Знач Токен, Знач Канал, Знач Тема) Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.setTopic";
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("channel", Канал , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("topic" , Тема , "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Установить цель канала
|
||||
// Устанавливает цель (описание) канала
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - ID канала - channel
|
||||
// Цель - Строка - Цель канала - purpose
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция УстановитьЦельКанала(Знач Токен, Знач Канал, Знач Цель) Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.setPurpose";
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("channel", Канал , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("purpose", Цель , "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Переименовать канал
|
||||
// Изменяет название канала
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// Канал - Строка - ID канала - channel
|
||||
// Название - Строка - Новое название канала - title
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ПереименоватьКанал(Знач Токен, Знач Канал, Знач Название) Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.rename";
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("channel", Канал , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("name" , Название, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область РаботаСДиалогами
|
||||
|
||||
// Открыть диалог
|
||||
// Открывает новый диалог с одним или несколькими пользователями
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота - token
|
||||
// МассивПользователей - Массив из Строка - Массив ID пользователей - users
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ОткрытьДиалог(Знач Токен, Знач МассивПользователей) Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.open";
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьКоллекцию(МассивПользователей);
|
||||
МассивПользователей = СтрСоединить(МассивПользователей, ",");
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("users", МассивПользователей, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Закрыть диалог
|
||||
// Закрывает существующий диалог
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен бота
|
||||
// Диалог - Строка - ID диалога
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Slack
|
||||
Функция ЗакрытьДиалог(Знач Токен, Знач Диалог) Экспорт
|
||||
|
||||
URL = "https://slack.com/api/conversations.close";
|
||||
Ответ = УправлениеДиалогом(Токен, Диалог, URL);
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область ФормированиеБлоков
|
||||
@ -242,10 +673,30 @@
|
||||
|
||||
Функция ПолучитьЗаголовокАвторизации(Знач Токен)
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
|
||||
|
||||
Заголовки = Новый Соответствие;
|
||||
Заголовки.Вставить("Authorization", "Bearer " + Токен);
|
||||
Возврат Заголовки;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция УправлениеДиалогом(Знач Токен, Знач Канал, Знач URL, Знач ВидЗапроса = "POST")
|
||||
|
||||
Заголовки = ПолучитьЗаголовокАвторизации(Токен);
|
||||
ВидЗапроса = вРег(ВидЗапроса);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("channel", Канал, "Строка", Параметры);
|
||||
|
||||
Если ВидЗапроса = "POST" Тогда
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
Иначе
|
||||
Ответ = OPI_Инструменты.Get(URL, Параметры, Заголовки);
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
@ -46,14 +46,11 @@
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Viber
|
||||
Функция УстановитьWebhook(Знач Токен, Знач URL) Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(URL);
|
||||
|
||||
СтруктураПараметров = Новый Структура;
|
||||
СтруктураПараметров.Вставить("url" , URL);
|
||||
СтруктураПараметров.Вставить("auth_token", Токен);
|
||||
|
||||
Возврат OPI_Инструменты.Post("https://chatapi.viber.com/pa/set_webhook", СтруктураПараметров);
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("url" , URL , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("auth_token" , Токен, "Строка", Параметры);
|
||||
|
||||
Возврат OPI_Инструменты.Post("https://chatapi.viber.com/pa/set_webhook", Параметры);
|
||||
|
||||
КонецФункции
|
||||
|
||||
@ -68,8 +65,6 @@
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Viber
|
||||
Функция ПолучитьИнформациюОКанале(Знач Токен) Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
|
||||
|
||||
URL = "https://chatapi.viber.com/pa/get_account_info";
|
||||
Возврат OPI_Инструменты.Get(URL, , ТокенВЗаголовки(Токен));
|
||||
|
||||
@ -86,22 +81,15 @@
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Viber
|
||||
Функция ПолучитьДанныеПользователя(Знач Токен, Знач IDПользователя) Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDПользователя);
|
||||
|
||||
URL = "https://chatapi.viber.com/pa/get_user_details";
|
||||
|
||||
СтруктураПараметров = Новый Структура;
|
||||
СтруктураПараметров.Вставить("id", IDПользователя);
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("id", IDПользователя, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, СтруктураПараметров, ТокенВЗаголовки(Токен));
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, ТокенВЗаголовки(Токен));
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
Попытка
|
||||
Возврат OPI_Инструменты.JsonВСтруктуру(Ответ.ПолучитьТелоКакДвоичныеДанные());
|
||||
Исключение
|
||||
Возврат Ответ;
|
||||
КонецПопытки;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить онлайн пользователей
|
||||
@ -115,21 +103,14 @@
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Viber
|
||||
Функция ПолучитьОнлайнПользователей(Знач Токен, Знач IDПользователей) Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
|
||||
OPI_ПреобразованиеТипов.ПолучитьКоллекцию(IDПользователей);
|
||||
|
||||
URL = "https://chatapi.viber.com/pa/get_online";
|
||||
|
||||
СтруктураПараметров = Новый Структура;
|
||||
СтруктураПараметров.Вставить("ids", IDПользователей);
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("ids", IDПользователей, "Коллекция", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, СтруктураПараметров, ТокенВЗаголовки(Токен));
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, ТокенВЗаголовки(Токен));
|
||||
|
||||
Попытка
|
||||
Возврат OPI_Инструменты.JsonВСтруктуру(Ответ.ПолучитьТелоКакДвоичныеДанные());
|
||||
Исключение
|
||||
Возврат Ответ;
|
||||
КонецПопытки;
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
@ -196,11 +177,7 @@
|
||||
, Знач ОтправкаВКанал
|
||||
, Знач Расширение
|
||||
, Знач Размер = "") Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(URL);
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Расширение);
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Размер);
|
||||
|
||||
|
||||
Если Не ЗначениеЗаполнено(Размер) Тогда
|
||||
|
||||
Ответ = OPI_Инструменты.Get(URL);
|
||||
@ -210,12 +187,12 @@
|
||||
|
||||
Расширение = СтрЗаменить(Расширение, ".", "");
|
||||
|
||||
СтруктураЗначения = Новый Структура;
|
||||
СтруктураЗначения.Вставить("URL" , URL);
|
||||
СтруктураЗначения.Вставить("Размер" , Размер);
|
||||
СтруктураЗначения.Вставить("Расширение" , Расширение);
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("URL" , URL , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("Размер" , Размер , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("Расширение", Расширение, "Строка", Параметры);
|
||||
|
||||
Возврат ОтправитьСообщение(Токен, "file", IDПользователя, ОтправкаВКанал, СтруктураЗначения);
|
||||
Возврат ОтправитьСообщение(Токен, "file", IDПользователя, ОтправкаВКанал, Параметры);
|
||||
|
||||
КонецФункции
|
||||
|
||||
@ -237,14 +214,11 @@
|
||||
, Знач IDПользователя
|
||||
, Знач ОтправкаВКанал) Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(ИмяКонтакта);
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(НомерТелефона);
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("name" , ИмяКонтакта , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("phone_number", НомерТелефона, "Строка", Параметры);
|
||||
|
||||
СтруктураКонтакта = Новый Структура;
|
||||
СтруктураКонтакта.Вставить("name" , ИмяКонтакта);
|
||||
СтруктураКонтакта.Вставить("phone_number", НомерТелефона);
|
||||
|
||||
Возврат ОтправитьСообщение(Токен, "contact", IDПользователя, ОтправкаВКанал, СтруктураКонтакта);
|
||||
Возврат ОтправитьСообщение(Токен, "contact", IDПользователя, ОтправкаВКанал, Параметры);
|
||||
|
||||
КонецФункции
|
||||
|
||||
@ -262,14 +236,11 @@
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Viber
|
||||
Функция ОтправитьЛокацию(Знач Токен, Знач Широта, Знач Долгота, Знач IDПользователя, Знач ОтправкаВКанал) Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Широта);
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Долгота);
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("lat", Широта , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("lon", Долгота, "Строка", Параметры);
|
||||
|
||||
СтруктураЛокации = Новый Структура;
|
||||
СтруктураЛокации.Вставить("lat", Широта);
|
||||
СтруктураЛокации.Вставить("lon", Долгота);
|
||||
|
||||
Возврат ОтправитьСообщение(Токен, "location", IDПользователя, ОтправкаВКанал, СтруктураЛокации);
|
||||
Возврат ОтправитьСообщение(Токен, "location", IDПользователя, ОтправкаВКанал, Параметры);
|
||||
|
||||
КонецФункции
|
||||
|
||||
@ -427,6 +398,8 @@
|
||||
|
||||
Функция ТокенВЗаголовки(Знач Токен)
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
|
||||
|
||||
СтруктураЗаголовков = Новый Соответствие;
|
||||
СтруктураЗаголовков.Вставить("X-Viber-Auth-Token", Токен);
|
||||
Возврат СтруктураЗаголовков;
|
||||
|
@ -2873,6 +2873,9 @@
|
||||
|
||||
Отметка = Результат["ts"];
|
||||
|
||||
Результат = OPI_Slack.ПолучитьСписокОтветовНаСообщение(Токен, Канал, Отметка);
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["messages"]).ИмеетТип("Массив");
|
||||
|
||||
Результат = OPI_Slack.ПолучитьСсылкуНаСообщение(Токен, Канал, Отметка);
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["channel"]).Равно(Канал);
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["permalink"]).Заполнено();
|
||||
@ -2930,6 +2933,24 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Слак_ОтправитьУдалитьЭфимерное() Экспорт
|
||||
|
||||
Токен = OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Slack_Token");
|
||||
Канал = OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Slack_Channel");
|
||||
Пользователь = OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Slack_User");
|
||||
Картинка = "https://github.com/Bayselonarrend/OpenIntegrations/raw/main/Media/logo.png?v1";
|
||||
Текст = "Тестовое сообщение 1";
|
||||
|
||||
Блок = OPI_Slack.СформироватьБлокКартинку(Картинка, "Yo");
|
||||
Результат = OPI_Slack.ОтправитьЭфимерноеСообщение(Токен, Канал, Текст, Пользователь, Блок);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьСообщение");
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["message_ts"]).Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Слак_ПолучитьОтложенныеСообщения() Экспорт
|
||||
|
||||
Токен = OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Slack_Token");
|
||||
@ -2944,6 +2965,182 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Слак_СоздатьАрхивироватьКанал() Экспорт
|
||||
|
||||
Токен = OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Slack_Token");
|
||||
Пользователь = OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Slack_User");
|
||||
Имя = "testconv" + Строка(Новый УникальныйИдентификатор);
|
||||
Тема = "Тестовая тема";
|
||||
Цель = "Тестовая цель";
|
||||
|
||||
#Область СоздатьКанал
|
||||
Результат = OPI_Slack.СоздатьКанал(Токен, Имя);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьКанал");
|
||||
|
||||
Данные = Результат["channel"];
|
||||
Канал = Данные["id"];
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Данные["name"]).Равно(Имя);
|
||||
#КонецОбласти
|
||||
|
||||
#Область УстановитьТемуКанала
|
||||
Результат = OPI_Slack.УстановитьТемуКанала(Токен, Канал, Тема);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УстановитьТемуКанала");
|
||||
|
||||
Данные = Результат["channel"];
|
||||
Канал = Данные["id"];
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Данные["name"]).Равно(Имя);
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Данные["topic"]["value"]).Равно(Тема);
|
||||
#КонецОбласти
|
||||
|
||||
#Область УстановитьЦельКанала
|
||||
Результат = OPI_Slack.УстановитьЦельКанала(Токен, Канал, Цель);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ВыгнатьПользователяИзКанала");
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
#КонецОбласти
|
||||
|
||||
#Область ПолучитьКанал
|
||||
Результат = OPI_Slack.ПолучитьКанал(Токен, Канал);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьКанал");
|
||||
|
||||
Данные = Результат["channel"];
|
||||
Канал = Данные["id"];
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Данные["name"]).Равно(Имя);
|
||||
#КонецОбласти
|
||||
|
||||
#Область ПригласитьПользователейВКанал
|
||||
Результат = OPI_Slack.ПригласитьПользователейВКанал(Токен, Канал, Пользователь);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПригласитьПользователейВКанал");
|
||||
|
||||
Данные = Результат["channel"];
|
||||
Канал = Данные["id"];
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Данные["name"]).Равно(Имя);
|
||||
#КонецОбласти
|
||||
|
||||
#Область ВыгнатьПользователяИзКанала
|
||||
Результат = OPI_Slack.ВыгнатьПользователяИзКанала(Токен, Канал, Пользователь);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ВыгнатьПользователяИзКанала");
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
#КонецОбласти
|
||||
|
||||
#Область ПолучитьИсториюКанала
|
||||
Результат = OPI_Slack.ПолучитьИсториюКанала(Токен, Канал);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьИсториюКанала");
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["messages"]).ИмеетТип("Массив");
|
||||
#КонецОбласти
|
||||
|
||||
#Область ПолучитьСписокПользователейКанала
|
||||
Результат = OPI_Slack.ПолучитьСписокПользователейКанала(Токен, Канал);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокПользователейКанала");
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["members"]).ИмеетТип("Массив");
|
||||
#КонецОбласти
|
||||
|
||||
#Область ПокинутьКанал
|
||||
Результат = OPI_Slack.ПокинутьКанал(Токен, Канал);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПокинутьКанал");
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
#КонецОбласти
|
||||
|
||||
#Область ВступитьВКанал
|
||||
Результат = OPI_Slack.ВступитьВКанал(Токен, Канал);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ВступитьВКанал");
|
||||
|
||||
Данные = Результат["channel"];
|
||||
Канал = Данные["id"];
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Данные["name"]).Равно(Имя);
|
||||
#КонецОбласти
|
||||
|
||||
#Область ПереименоватьКанал
|
||||
НовоеИмя = "testconv" + Строка(Новый УникальныйИдентификатор);
|
||||
Результат = OPI_Slack.ПереименоватьКанал(Токен, Канал, НовоеИмя);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ВступитьВКанал");
|
||||
|
||||
Данные = Результат["channel"];
|
||||
Канал = Данные["id"];
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Данные["name"]).Равно(НовоеИмя);
|
||||
#КонецОбласти
|
||||
|
||||
#Область АрхивироватьКанал
|
||||
Результат = OPI_Slack.АрхивироватьКанал(Токен, Канал);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "АрхивироватьКанал");
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
#КонецОбласти
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Слак_ПолучитьСписокКаналов() Экспорт
|
||||
|
||||
Токен = OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Slack_Token");
|
||||
|
||||
Результат = OPI_Slack.ПолучитьСписокКаналов(Токен);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокКаналов");
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["channels"]).ИмеетТип("Массив");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Слак_ОткрытьЗакрытьДиалог() Экспорт
|
||||
|
||||
Токен = OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Slack_Token");
|
||||
Пользователь = OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Slack_User");
|
||||
Текст = "Yo, dude";
|
||||
|
||||
Результат = OPI_Slack.ОткрытьДиалог(Токен, Пользователь);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОткрытьДиалог");
|
||||
|
||||
Диалог = Результат["channel"]["id"];
|
||||
Проверка_СлакОк(Результат);
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["channel"]).ИмеетТип("Соответствие");
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Диалог).Заполнено();
|
||||
|
||||
Результат = OPI_Slack.ОтправитьСообщение(Токен, Диалог, Текст);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьСообщение");
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
|
||||
Результат = OPI_Slack.ЗакрытьДиалог(Токен, Диалог);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗакрытьДиалог");
|
||||
|
||||
Проверка_СлакОк(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
@ -161,20 +161,24 @@
|
||||
НовыйТест(ТаблицаТестов, "Вайбер_ОтправитьЛокацию" , "Отправить локацию" , Вайбер);
|
||||
НовыйТест(ТаблицаТестов, "Вайбер_ОтправитьСсылку" , "Отправить ссылку" , Вайбер);
|
||||
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_СоздатьСтраницу" , "Создать страницу" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_СоздатьИзменитьБазу" , "Создать/Изменить базу" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_ПолучитьИнформациюОСтранице" , "Получить информацию о странице" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_ПолучитьИнформациюОБазе" , "Получить информацию о базе" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_СоздатьСтраницуВБазу" , "Создать страницу в базу" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_ИзменитьСвойстваСтраницы" , "Изменить свойства страницы" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_СоздатьУдалитьБлок" , "Создать/Удалить блок" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_ПолучитьПользователей" , "Получить пользователей" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_ПолучитьДанныеПользователя" , "Получить данные пользователя" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_СоздатьСтраницу" , "Создать страницу" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_СоздатьИзменитьБазу" , "Создать/Изменить базу" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_ПолучитьИнформациюОСтранице" , "Получить информацию о странице" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_ПолучитьИнформациюОБазе" , "Получить информацию о базе" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_СоздатьСтраницуВБазу" , "Создать страницу в базу" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_ИзменитьСвойстваСтраницы" , "Изменить свойства страницы" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_СоздатьУдалитьБлок" , "Создать/Удалить блок" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_ПолучитьПользователей" , "Получить пользователей" , Ноушн);
|
||||
НовыйТест(ТаблицаТестов, "Ноушн_ПолучитьДанныеПользователя" , "Получить данные пользователя" , Ноушн);
|
||||
|
||||
НовыйТест(ТаблицаТестов, "Слак_ПолучитьИнформациюОБоте" , "Получить информацию о боте" , Слак);
|
||||
НовыйТест(ТаблицаТестов, "Слак_ПолучитьСписокОбластей" , "Получить список областей" , Слак);
|
||||
НовыйТест(ТаблицаТестов, "Слак_ОтправитьУдалитьСообщение" , "Отправить/Удалить сообщение" , Слак);
|
||||
НовыйТест(ТаблицаТестов, "Слак_ПолучитьОтложенныеСообщения" , "Получить отложенные сообщения" , Слак);
|
||||
НовыйТест(ТаблицаТестов, "Слак_ПолучитьИнформациюОБоте" , "Получить информацию о боте" , Слак);
|
||||
НовыйТест(ТаблицаТестов, "Слак_ПолучитьСписокОбластей" , "Получить список областей" , Слак);
|
||||
НовыйТест(ТаблицаТестов, "Слак_ОтправитьУдалитьСообщение" , "Отправить/Удалить сообщение" , Слак);
|
||||
НовыйТест(ТаблицаТестов, "Слак_ОтправитьУдалитьЭфимерное" , "Отправить/Удалить эфимерное" , Слак);
|
||||
НовыйТест(ТаблицаТестов, "Слак_ПолучитьОтложенныеСообщения" , "Получить отложенные сообщения" , Слак);
|
||||
НовыйТест(ТаблицаТестов, "Слак_СоздатьАрхивироватьКанал" , "Создать/Архивировать канал" , Слак);
|
||||
НовыйТест(ТаблицаТестов, "Слак_ПолучитьСписокКаналов" , "Получить список каналов" , Слак);
|
||||
НовыйТест(ТаблицаТестов, "Слак_ОткрытьЗакрытьДиалог" , "Открыть/Закрыть диалог" , Слак);
|
||||
|
||||
Возврат ТаблицаТестов;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user