Системи за проследяване на задачи
Превърнете сесията в задача, докато я гледате — един бутон в плейъра, описание със собствени думи и вече добавена връзка за възпроизвеждане.
1. Защо тази интеграция е ръчна
Всеки друг мост в MousePlayer се задейства сам. Този не го прави и това е съзнателният замисъл.
Задачата означава работа за човек. Ако отваряхме задача за всяко яростно кликване, таблото ви би се напълнило с елементи, които никой не е прегледал, и до седмица екипът би започнал да ги филтрира — заедно с истинските проблеми.
Затова вие задействате действието. Гледате сесия, виждате проблема, натискате бутона и описвате видяното. Връзката към записа вече е в описанието; преценката е ваша.
Бутонът се показва само на собственици и администратори и никога в изглед чрез споделена връзка. Човек, на когото сте изпратили запис, не трябва да може да отваря задачи в системата ви.
2. Петте системи и какво изисква всяка
| Къде се създава | Вие предоставяте | |
|---|---|---|
| Jira | задача в проект | URL адрес на сайта, имейл на акаунта, токен за API, ключ на проекта, тип задача |
| Linear | задача в екип | ключ за API, идентификатор на екипа |
| Asana | задача в проект | личен токен за достъп, идентификатор на проекта |
| Trello | карта в списък | ключ, токен, идентификатор на списъка |
| GitHub | задача в хранилище | личен токен за достъп, owner/repo |
Една плочка, един избран доставчик в даден момент. Добавянето на втора система по-късно е промяна на избора, а не миграция.
Откъде идват идентификаторите
Идентификаторът на екипа в Linear и този на проекта в Asana се виждат в URL адреса, когато отворите екипа или проекта в браузър. Идентификаторът на списъка в Trello е най-трудният от петте: добавете .json към URL адреса на таблото и потърсете желания списък. Ключът на проекта в Jira е префиксът пред всеки номер на задача — ACME в ACME-1234.
3. Връзката в задачата се изгражда от сървъра ни
Въведеното описание е ваше. Връзката за възпроизвеждане не е — сглобява се от наша страна от сесията, която действително сте гледали, и формулярът не може да ѝ влияе.
Това има значение, защото задачата е нещо, върху което други хора кликват. Ако връзката идваше от браузъра, специално подготвена заявка би могла да постави произволен адрес пред екипа ви в нещо, което изглежда като собствените ви инструменти.
HTTP 200 не означава, че задачата съществува
Linear отговаря чрез GraphQL, а GraphQL отговаря с 200 OK с масив errors, когато отказва. Мост, който гледа само кода за състояние, би отчел успех за задача, която никога не е създадена. Прочитаме тялото.
Когато системата върне идентификатора на новата задача, го включваме в потвърждението — така можете да проверите, че действително съществува, вместо да вярвате на зелено съобщение.
4. Какво умишлено липсва
Без автоматични задачи
Вижте по-горе. Ако искате автоматизация, webhook мостът може да изпраща сигнали за неудовлетвореност към Zapier или Make и там можете да решите кое заслужава задача.
Без двупосочна синхронизация
Затварянето на задачата не променя нищо в MousePlayer и нищо в MousePlayer не я отваря отново. Синхронизация, която работи в една и половина посоки, е по-лоша от никаква, защото хората започват да разчитат на нея.
Без прикачени файлове
Записът остава при нас и се гледа при нас. Експортиране на видео в система за задачи би изпратило лични данни в система с различни правила за съхранение от договорените с посетителите ви.
Токенът се съхранява шифрован с AES-256-GCM и никога не се показва отново. Освен това никога не се включва във вътрешната опашка — това извикване се изпълнява, докато чакате, директно от заявката.
5. GitLab, Azure DevOps и ClickUp
Още три системи, същият бутон, същото ръчно задействане.
| Вие предоставяте | |
|---|---|
| GitLab | хост, идентификатор на проекта и токен — работи и собственият ви GitLab |
| Azure DevOps | организация, проект, тип работен елемент и PAT |
| ClickUp | идентификатор на списъка и личен токен |
GitLab пита за хост, защото може да е ваш
За разлика от останалите GitLab често е самостоятелно хостван, затова хостът е поле, а не константа. Поставете gitlab.com, ако използвате него.
Azure DevOps има две особености едновременно
Тялото му е JSON Patch документ, а не обект, а типът на съдържанието трябва да е application/json-patch+json — всичко друго връща 415. Знакът за долар пред типа на работния елемент в URL адреса е част от адреса, а не забравен непопълнен заместител.
ClickUp иска токена без префикс
Без Bearer пред него. Токен с добавена отпред дума се отхвърля с 401, което изглежда точно като грешен токен.
Всички споменати тук търговски марки принадлежат на съответните им собственици. MousePlayer няма търговски отношения с тези доставчици.