"Для разработчиков", "Серверные скрипты", "Скриптовые события", "Kanban events", "OnKanbanCommentAdd".

 

Событие, возникающее при размещении нового комментария к задаче на канбан-доске.

 

Шаблон события

function OnKanbanCommentAdd(iCID: int64; iUIN: integer; var sJSONData: string): boolean;
begin
  result := true;
  // your own code
end;
begin
end.

Вместо комментария может быть любой ваш код.

 

Описание параметров

Параметр

Тип

Значение

iCID

int64

Connection ID клиента-отправителя, уникальный сеансовый идентификатор в онлайн-структуре сетевых подключений к серверу;

iUIN

integer

уникальный идентификатор отправителя команды (число > 0);

sJSONData

string

изменяемый параметр, содержимое команды в виде текстовой JSON-строки:

 

Параметр sJSONData

Тип

Значение

ID

integer

идентификатор канбан-проекта, число;

CommentType

integer

тип комментария, число, по умолчанию 0 (написано человеком);

CommentText

string

текст комментария;

Files

object

JSON-объект в виде строки со списком приложенных файлов, необязательный параметр.

 
Возвращаемое значение

По умолчанию функция должна возвращать true, однако, если вы вернёте false, комментарий не будет размещён, а приложение получит ошибку #0332. Вы также можете отредактировать JSON-объект, изменив параметры команды на другие.

 

Пример

При появлении комментария для любой задачи в любом проекте на канбан-доске отправляется уведомление про это указанному пользователю (константа NOTIFY_USER).

const
  NOTIFY_USER = 6;
  
function OnKanbanCommentAdd(iCID: int64; iUIN: integer; var sJSONData: string): boolean;
var
  sComment, sMsg: string;
begin
  if JSONGetString(sJSONData, 'CommentText', sComment) = 0 then
    if length(sComment) > 0 then begin
      sMsg := 'New kanban comment from "' + mGetUserAttribute(iUIN, 'DisplayName') + '"' + CRLF +
              sComment;
      mSendPrivateMessage(0, NOTIFY_USER, sMsg, 1);
    end;
  result := true;
end;
begin
end.

Ещё посмотреть

CRLF

JSONGetString

Length

mGetUserAttribute

mSendPrivateMessage