Эта функция предназначена для обработки информации связанной с изменениями в комментариях объекта

Параметры функции:
  • change: объект класса Change, переданный для обработки,
  • lang: объект типа string - строка, содержащая “ключ” языка для выбора соответствующего шаблона при подготовке строки.
Результат работы функции:
  • объект типа string, содержащий извлеченную информацию.
Алгоритм работы функции:

В зависимости от действий с комментариями возможны следующие значения атрибутов переданного объекта change:

ДействиеЗначение атрибутов в необработанном WebHook:
добавление комментарияdata”: {

  “change”: {
  “comment”: “Test”,
  “comment_html”: “<p>Test</p>”,
  “delete_comment_date”: null,
  “comment_versions”: null,
  “edit_comment_date”: null,
  “diff”: {}
}
}
изменение комментарияdata”: {

  “change”: {
  “comment”: “Test new”,
  “comment_html”: “<p>Test new</p>”,
  “delete_comment_date”: null,
  “comment_versions”: [
    {
      “date”: “2025-02-23T08:50:36.070Z”,
        “comment”: “Test”,
        “comment_html”: “<p>Test</p>”,
user”: {
id”: 5
}
}
  ],
edit_comment_date”: “2025-02-23T08:51:26.207Z”,
  “diff”: {}
}
}
удаление комментарияdata”: {

  “change”: {
  “comment”: “Test new”,
  “comment_html”: “<p>Test new</p>”,
  “delete_comment_date”: “2025-02-23T08:52:13.548Z”,
  “comment_versions”: null,
  “edit_comment_date”: null,
  “diff”: {}
}
}
Вид действия с комментарием определяется по факту наличия информации в атрибутах delete_comment_date, edit_comment_date (значение не равно null).

Для формирования значения comment_text в формируемом значении используется значение атрибута comment_html, обработанное функцией get_untag_truncated_string

Пример вызова функции:
comment_string = get_comment_string(change=payload.change, lang="en")