Событие MyChat Server: OnKanbanCommentAdd, размещение комментария к задаче на канбан-доске
"Для разработчиков", "Серверные скрипты", "Скриптовые события", "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.