Добавить в TurboTracker интеграцию с Евой

KLex Закрыто

Добавить в TurboTracker интеграцию с Евой (https://www.evateam.ru/)

Комментарии

bolsun
#1, 13 сентября 2023 15:21

Добавить я конечно могу, но трекеров много. Все я не потяну добавлять.
Если не хотите ждать, можете сделать это сами на языке 1С.
Добавить свой скрипт в источник данных и получить данные из Евы и передать в TurboTracker.

//@script_name TrackerScriptSample
//@script_display_name Пример получения данных TurboTracker в скрипте
//@script_hotkey None
//@retain_clipboard 0
//@enterprise_mode 0
//@hide_actions 0
//@script_disabled 0

Перем ТурбоКонф;

Процедура ПриПолученииДанныхТрекера(Параметры)
	
	Сообщить(Параметры.СтрокаПоиска);
	Сообщить(Строка(Параметры.МоиЗадачи));
	Сообщить(Строка(Параметры.ОткрытыеЗадачи));

	//Здесь получаем данные (веб запрос, COMCоединение и т.д.)
	//Элементы = ПолучитьМоиДанные();

	//Формируем список для окна трекера.
	Элементы = Новый Массив;

	Для Счетчик = 1	 По 10 Цикл
		ЭлементСписка = Новый Соответствие();
		ЭлементСписка.Вставить("Id", Счетчик);
		ЭлементСписка.Вставить("Uid", Новый УникальныйИдентификатор());
		ЭлементСписка.Вставить("Key", "TC-"+Счетчик);
		ЭлементСписка.Вставить("Name", "Задача "+Счетчик);
		ЭлементСписка.Вставить("Description", "Описание задачи "+Счетчик);
		ЭлементСписка.Вставить("Done", Ложь);
	
		Элементы.Добавить(ЭлементСписка);
	КонецЦикла;

	ТурбоКонф.УстановитьДанныеTрекера(Элементы);

КонецПроцедуры

ТурбоКонф = Новый ТурбоКонф;


KLex
#2, 14 сентября 2023 10:22

Спасибо.
Согласен, сделаю сам. Если разберусь, как там наложить фильтры по пользователю - что-то мне их интерфейс получения задач кажется слишком сложным.


KLex
#3, 14 сентября 2023 10:22

KLex изменил статус на Отклонено


bolsun
#4, 14 сентября 2023 10:32

Будут вопросы - пишите помогу. Если скрипт еще сможете потом выложить, будет вообще супер.


KLex
#5, 14 сентября 2023 10:40

По турбоконфу вопросов нет. Да и к Еве тоже уже подключился, данные из неё забрал. Но вот как отфильтровать теперь этот массив задач пока плохо представляю. Если доделаю - обязательно выложу.


bolsun
#6, ред. 14 сентября 2023 10:43

(5) KLex, запрос на сервер нужно отправлять уже с нужным фильтром и строкой поиска. Сервер сам фильтрует. Обычно так делается.


KLex
#7, 14 сентября 2023 10:54

(6) bolsun, Понятное дело. Проблема в том, как получить идентификатор текущего пользователя и отобрать назначенные ему задачи - с этим пока не разобрался.


bolsun
#8, 14 сентября 2023 10:57

(7) KLex, документация у них скудная совсем.


KLex
#9, 05 декабря 2023 18:00

(4) bolsun, добрался до разработки скрипта. Взял код из примера, сохранил как скрипт, указал как источник - список задач пустой. Как выяснить, где ошибка?


bolsun
#10, 05 декабря 2023 18:10

(9) KLex, посмотреть бы скриншоты настроек источника.
bolsun изменил статус на Открыто


KLex
#11, 06 декабря 2023 09:37

Прикладываю


KLex
#12, 06 декабря 2023 09:47

И ещё два вопроса:

  1. зачем нужны параметры Id и Uid, обязательно ли их заполнение? Допустима ли для Uid значения вида "CmfTask:d764bd1c-83a3-11ee-bce3-0242ac110002"
  2. Как из параметров достать адрес электронной почты текущего пользователя?


bolsun
#13, 06 декабря 2023 13:53

(11) KLex, скрипт должен иметь расширение .os и размещаться в папке user_scripts


bolsun
#14, 06 декабря 2023 14:06

(12) KLex,

  1. Uid - строковое значение, поэтому можно и такое, главное чтобы уникальное было.
  2. Там этого нет, нужно самому запросить почту, или любой другой параметр через ФормуВводаЗначение. Сохранить ее СохранитьЗначение и затем восстанавливать при необходимости ВосстановитьЗначение.


KLex
#15, 06 декабря 2023 14:35

Ошибка при подключении:
ScriptEngine.Machine.RuntimeException: {Модуль C:\Program Files (x86)\TurboConf\user_scripts\TurboTrackerEva.os / Ошибка в строке: 18 / Конструктор не найден (ЗащищенноеСоединениеOpenSSL)}
Соединение = Новый HTTPСоединение(Адрес,,,,,, Новый ЗащищенноеСоединениеOpenSSL);
---> ScriptEngine.Machine.RuntimeException: {Модуль / Ошибка в строке: -1 / Тип не зарегистрирован (ЗащищенноеСоединениеOpenSSL)}

Код:
// Получение данных о задачах
Соединение = Новый HTTPСоединение(Адрес,,,,,, Новый ЗащищенноеСоединениеOpenSSL);
Заголовки = Новый Соответствие;
Заголовки.Вставить("Content-Type", "application/json");
Заголовки.Вставить("Authorization", Токен);

В предприятии отрабатывает корректно. В чём может быть причина?


bolsun
#16, 08 декабря 2023 20:32

(15) KLex, лучше узнать в чате разработчиков оскрипт.


KLex
#17, 11 декабря 2023 17:53

Зарегистрирована ошибка
https://github.com/EvilBeaver/OneScript/issues/1382


KLex
#18, 12 декабря 2023 10:13

Фиксирую промежуточный результат:

В 1Скрипт делается по другому. Указываете в адресе протокол https:// и все будет работать. Т.е. объект ЗащищенноеСоединениеOpenSSL не реализован за ненадобностью.

Адрес должен быть не my.server.com, а https://my.server.com

Соединение устанавливается, но запрос отрабатывает некорректно. Разбираюсь дальше.


KLex
#19, 12 декабря 2023 17:17

Как вариант, предложили попробовать 1connector (https://github.com/vbondarevsky/1connector)
Как можно подключить его к турбоконфу?


bolsun
#20, 12 декабря 2023 19:12

(19) KLex, они не подсказали как подключить?


KLex
#21, 13 декабря 2023 08:50

К onescript - известно: opm install 1connector

а к турбоконфу думаю здесь нужно уточнять -
Как и куда установить и как вызывать в процедуре ПриПолученииДанныхТрекера

Попутно ещё один вопрос:
можно ли в этой процедуре вызывать другие приложения, например на питоне?


KLex
#22, 13 декабря 2023 09:30

С вызовом вроде как понятно:

  1. В начале скрипта пишу #Использовать 1connector
  2. В процедуре ПриПолученииДанныхТрекера использую.

А как его установить - не нашёл. В турбоконфе нет oscript.exe


bolsun
#23, 13 декабря 2023 13:16

(22) KLex, я не знаю, библиотеки не использовали еще. Вручную наверное, скачать в папку со скриптом (я так думаю). Лучше у онскриптчиков спросить, как использовать библиотеки при вызове скрипта из HostedScriptEngine.


KLex
#24, 13 декабря 2023 15:36

(23) bolsun, Научился использовать библиотеки - помогло скопировать в папку библиотек.
Правда, работать от этого не стало - с 1connector такая же ошибка, как и без него.


bolsun
#25, 13 декабря 2023 16:19

(24) KLex, эта проблема в скрипте возникает только с Турбоконф? Если запускать на чистом оскрипт, работает?


KLex
#26, 13 декабря 2023 17:33

(25) bolsun, Не пробовал, чистого оскрипта нет. Думаю, поведение не должно отличаться. Если не будет других вариантов - попробую и этот.


bolsun
#27, ред. 13 декабря 2023 17:37

(26) KLex, легко может отличаться, оскрипт в ТурбоКонф выполняется через HostedScript. Может там ошибка, может как-то нужно дополнительно инициализировать библиотеки и т.д.
Если через oscript.exe работает библиотека, то уже будем разбираться в подключении его к ТК, через HostedScript.


KLex
#28, 12 января 2024 09:19

(27) bolsun, Проверил - под OneScript тоже не работает. Получение задач сделал на питоне, передача данных в ТурбоКонф - через временный файл. Сейчас посмотрю, куда можно опубликовать.
KLex изменил статус на Закрыто


bolsun
#29, 12 января 2024 11:46

(28) KLex, опубликовать можно в маркетплейс
https://turboconf.ru/Store


bolsun
#30, 12 января 2024 11:49

(28) KLex, а что говорят гуру в чате оскрипта, почему не работает под чистый оскрипт?


bolsun
#31, 12 января 2024 11:52

(29) а вижу, уже опубликовано в сторе. Нужно только оформление подправить и промодерирую.


KLex
#32, 12 января 2024 15:01

(30) bolsun, Говорят, нужно анализировать пакеты, которые фактически принимает сервер. Как будет понятно, что у них не работает - можно будет исправить. Я заявку на анализ сделал - может и разберутся.


Для вставки изображения или файла, перетащите его в поле редактора или вставьте файл из буфера