powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Вопросы по форуму [закрыт для гостей] / Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
25 сообщений из 1 023, страница 13 из 41
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.  
    #1089971
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Текущая версия API: 1.3
Версия форума: 2.0.51
Дата выхода: 27.07.2025

Просьба писать вопросы и предложения по API в этой теме. Воспросы и предложения в других темах могут быть намотаны на писюлячку. Но и их постинг в этой теме не гарантирует, что предложения будут выполнены.

Ендпоинты:

https://nosql.ru/forum/api/get_forum_list.php
https://nosql.ru/forum/api/get_topic_list.php
https://nosql.ru/forum/api/get_post_list.php
https://nosql.ru/forum/api/get_post.php
https://nosql.ru/forum/api/get_user_data.php
https://nosql.ru/forum/api/get_topic_data.php
https://nosql.ru/forum/api/get_attachment.php
https://nosql.ru/forum/api/post_message.php
https://nosql.ru/forum/api/update_message.php
https://nosql.ru/forum/api/post_attachment.php
https://nosql.ru/forum/api/delete_posts.php
https://nosql.ru/forum/api/restore_posts.php

Валидный тоукен можно получить в профиле своего юзера. Гостевой постинг тоже возможен, но тоукен выдается только зареганным. В провиле появилась галка "Активировать API", при включении и сохранении будет сгенерен тоукен.

Базовый формат отправки такой:
Код: JSON
1.
2.
3.
4.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919"
}
Примеры вызовов:

https://nosql.ru/forum/api/get_forum_list.php
Код: JSON
1.
2.
3.
4.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919"
}
https://nosql.ru/forum/api/get_topic_list.php
Код: JSON
1.
2.
3.
4.
5.
6.
7.
8.
9.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919",
    "forum_id": "8",
    "sort": "desc",
    "limit": 100, // no more than 100 allowed
    "subject": "Фотографии", // if specified only the topics with this name are returned
    "continue_at": "2023-01-01 00:00:00" // if omitted than before now
}
Параметр continue_at может быть использован для пошаговой подгрузки.

Параметр subject может быть использован для проверки, существует ли уже темы с таким названием.

https://nosql.ru/forum/api/get_post_list.php
Код: JSON
1.
2.
3.
4.
5.
6.
7.
8.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919",
    "topic_id": 19529,
    "sort": "desc",
    "limit": 100, // no more than 100 allowed
    "continue_at": "2024-10-01 00:00:00" // if omitted than before now
}
Параметр continue_at может быть использован для пошаговой подгрузки.

https://nosql.ru/forum/api/get_post.php
Код: JSON
1.
2.
3.
4.
5.
{
    "language": "ru",
    "api_token": "1684-7912-7133-2657",
    "post_id": 1000
}
https://nosql.ru/forum/api/get_topic_data.php
Код: JSON
1.
2.
3.
4.
5.
{
    "language": "ru",
    "api_token": "1753-6212-0242-0888-3460",
    "topic_id": 566
}
https://nosql.ru/forum/api/get_user_data.php
Код: JSON
1.
2.
3.
4.
5.
{
    "language": "ru",
    "api_token": "1753-6212-0242-0888-3460",
    "user_id": 566
}
https://nosql.ru/forum/api/get_attachment.php
Код: JSON
1.
2.
3.
4.
5.
6.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919",
    "attachment_id": 871959,
    "nr": 2
}
https://nosql.ru/forum/api/delete_posts.php
Код: JSON
1.
2.
3.
4.
5.
6.
7.
{
    "language": "ru",
    "api_token": "1753-6212-0242-0888-3460",
    "posts": [
        872084, 872085
    ]
}
https://nosql.ru/forum/api/restore_posts.php
Код: JSON
1.
2.
3.
4.
5.
6.
7.
{
    "language": "ru",
    "api_token": "1753-6212-0242-0888-3460",
    "posts": [
        872084, 872085
    ]
}
https://nosql.ru/forum/api/post_message.php
Код: JSON
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919",
    "forum_id": 8,
    "topic_id": 19546, // omit to create a new topic
    "is_thematic": 0,
    "is_adult": 0,
    "blog": 0,
    "no_guests": 0,
    "request_moderation": 0,
    "post_as_guest": "Карапуз", // omit to post under the user name
    "citated_posts": "",
    "subject": "Привет медвед", // not necessary if posting to an existing topic
    "message": "777"
}
В ответ приходит вся инфа о сделанном посте.

https://nosql.ru/forum/api/post_message.php - с аттачами
Код: JSON
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919",
    "forum_id": 8,
    "topic_id": 19546, // omit to create a new topic
    "is_thematic": 0,
    "is_adult": 0,
    "blog": 0,
    "no_guests": 0,
    "request_moderation": 0,
    "post_as_guest": "Карапуз", // omit to post under the user name
    "citated_posts": "",
    "subject": "Привет медвед", // not necessary if posting to an existing topic
    "message": "777",
    "attachments": [
        {
            "file_name": "photo_2024-09-01_18-14-34.jpg",
            "mime_type": "image/jpg",
            "base64_contents": "......"
        }
    ]
}
https://nosql.ru/forum/api/post_attachment.php - постфактумная отправка аттачмента

Аттачмент отправляется в бинарном формате, параметры в таком случае нужно передать GET запросом через переменные

https://nosql.ru/forum/api/post_attachment.php?api_token=1753-6212-0242-0888-3460&file_name=test.jpg&mime_type=image/jpeg&post_id=872072

Параметры:

api_token
file_name
mime_type
post_id

https://nosql.ru/forum/api/update_message.php
Код: JSON
1.
2.
3.
4.
5.
6.
7.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919",
    "post_id": 8,
    "subject": "Привет медвед", // not necessary if changing of the subject is not necessary
    "message": "Новое сообщение"
}
В ответ приходит вся инфа о сделанном посте.

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

Ендпоинт поддерживает и замену названия топика. Но это работает только при апдейте первого поста темы.
...
Изменено: 27.07.2025, 13:23:50 - Дед-Скарабей
Рейтинг: 3 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1241582
саня
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дед-Скарабей  02.12.2024, 20:40:06
[игнорируется]
саня  02.12.2024, 20:28:23
[игнорируется]
вот смари рез твоего ламерства
pasted_image.png
На форуме работает.
из твоего кеша, работает )
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1241587
саня
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дед-Скарабей  02.12.2024, 20:40:30
[игнорируется]
саня  02.12.2024, 20:30:29
[игнорируется]
Дед-Скарабей  02.12.2024, 17:25:11
[игнорируется]
саня  02.12.2024, 17:19:41
[игнорируется]
долбоёб нахуй
пока одна картинка загрузится юзеру, час пройдёт
теперь помножь это на всех юзеров и еще на 100
Дед-Скарабей  02.12.2024, 17:05:48
[игнорируется]
...
ты - ебанутый
ты - обычное ламерское говно, не умеющее писать код
Потом из кэша будет браться. Но приватность картинок важнее. Подождут блять юзеры!

А так Ноташэ для Пашэ в личке выложит голую фотку, а нгикс отдаст ее любому хуерыге Кроллэ.
дурак
отдавай ВСЕ картинки нгинксом
а твои сраные приватные отдавай твоим фридом
Нахрена разные подходы. Лучше один универсальный
болван бля
нахрена снять тормоза с форума?
логично, пусть остаются


потому что нгинкс туповат для такой универсальности

всё что ты можешь, это - хуеплётить, как поше
...
Изменено: 02.12.2024, 22:44:10 - саня
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1241632
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
саня  02.12.2024, 22:42:29
[игнорируется]
Дед-Скарабей  02.12.2024, 20:40:30
[игнорируется]
саня  02.12.2024, 20:30:29
[игнорируется]
Дед-Скарабей  02.12.2024, 17:25:11
[игнорируется]
саня  02.12.2024, 17:19:41
[игнорируется]
...
Потом из кэша будет браться. Но приватность картинок важнее. Подождут блять юзеры!

А так Ноташэ для Пашэ в личке выложит голую фотку, а нгикс отдаст ее любому хуерыге Кроллэ.
дурак
отдавай ВСЕ картинки нгинксом
а твои сраные приватные отдавай твоим фридом
Нахрена разные подходы. Лучше один универсальный
болван бля
нахрена снять тормоза с форума?
логично, пусть остаются


потому что нгинкс туповат для такой универсальности

всё что ты можешь, это - хуеплётить, как поше
Чем богаты, тем и сыты.

Мы используем прогрессивную философию клопа - теория малых дел.
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1241662
Georgianna
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1241667
Erasmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
из карцера не удаляет свои мессаги
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1241712
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В течении 10 минут можно. Потом нет.
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1241922
Bong Catt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Erasmo  02.12.2024, 23:07:01
[игнорируется]
из карцера не удаляет свои мессаги
нанкна
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1241927
Arden Schildgen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дед-Скарабей  02.12.2024, 23:28:10
[игнорируется]
В течении 10 минут можно. Потом нет.
пиздёж
или у меня чет сламалось
image.png
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1241942
Nancie Haslett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
11111111111111111
image.png
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1241952
Lawanda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
фсё поняно: если ты под фэйковым гостем, то удалять не даёт
ламер блять
image.png
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1242012
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lawanda  02.12.2024, 23:56:37
[игнорируется]
фсё поняно: если ты под фэйковым гостем, то удалять не даёт
ламер блять
image.png
Понял. Исправлю.
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1253445
Lyndia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
норм
удаление от фейко-гостя - заработало
редактирование - работает

редактирование с аттачами пока не трогал - мороки много
пусть, пока, так, без, картинок
просто, редактирование своих каминтов - уже, хорошо

можно сходить из кёльна в дюссельдорф и отметить двойным ристретто.
...
Изменено: 09.12.2024, 00:15:18 - Lyndia
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1253446
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lyndia  09.12.2024, 00:14:58
[игнорируется]
Дед-Скарабей  03.12.2024, 00:12:36
[игнорируется]
Понял. Исправлю.
норм
удаление от фейко-гостя - заработало
редактирование - работает

редактирование с аттачами пока не трогал - мороки много
пусть, пока, так, без, картинок
просто, редактирование своих каминтов - уже, хорошо

можно сходить из кёльна в дюссельдорф и отметить двойным ристретто
У меня на примете в кельне есть кофейня но пока как то некогда
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1253499
Erasmo Mayoral
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну, вощем, как обычно: заранее, ляпнешь, что фсё заебись, значит, стопудово бага неведомая, вылизит
так и в этот раз
1.5 часа ушло на фиксы-шмиксы ))
ну, щас, вроде, норм
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1253502
Larisa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дед-Скарабей  09.12.2024, 01:40:33
[игнорируется]
У меня на примете в кельне есть кофейня но пока как то некогда
тебе, кофе-автомат, нужен
засыпал пачку, нажал кнопачку и дудонишь свой милкивей
раз в месяц вынул-разобрал-промыл заварочный блок и ф полном шакаладе

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

и ходить никуда не надо
...
Изменено: 09.12.2024, 01:44:39 - Larisa
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1253505
Jeanice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да...
редактирование своих мессаг - это, мегафича
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1259084
Lawanda Pingree
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
дед, расскажи, как ты помечаешь юзеру, темы, которые он прочитал-просмотрел?
под это у тебя специальная таблица с идентификаторами тем?
или что?
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1259095
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Концепция

Отслеживание новых сообщений начинается после первого входа на форум а не с начала времён. Запоминается дата первого входа на форум.

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

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

Новыми не считаются:
  • Собственные сообщения
  • Удаленные сообщения
  • Сообщения от пользователей и гостей, находящихся в игноре
  • Сообщения в темах и форумах, находящихся в игноре
Эти нюансы ощутимо утяжеляют запрос и увеличивают время его выполнения.

Реализация

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

Ридмаркер выдается посетителю при первом заходе, если он еще не выдан.

Выданный ридмаркер сохраняется в куках для гостей, и в куках и в профиле для пользователей.

При входе в систему ридмаркер гостя достается из куки, а ридмаркер пользователя достается из профиля и помещается в куку (как и другие настройки). Таким образом после вылогинивания, информация о прочитанных сообщениях не пропадает.

Решение проблемы распухания таблиц ридмаркеров

Форум посещает много ботов, у которых куки и сессий нет, а также много гостей, у которых протухает кука и ридмаркер теряется. Также постоянные посетители прочитали много тем, а новые темы появляются каждый день. Из за этого таблицы с информацией о прочитанных распухают, и возникает небоходимость в механизме их очистки (своего рода лангольеры).

Многие боты, распознанные по юзер-агенту, не участвуют в отслеживании новых.

Введен параметр, ограничивающий период отслеживания новых.

Введено понятие последней активности ридмаркера. Ридмаркеры, неактивные дольше чем период отслеживания новых, удаляются.
Поэтому для долго отсутсвующих посетителей, при возврате на форум, отсчёт новых начинается с момента возврата на форум, а не с начала времен, т.е. как будто он вошел на форум первый раз.

Много ботов заходят на форумы, но не входят в темы. Ридмаркеры, неактивные дольше 1-го дня, у которых нет посещений тем, удаляются.

Хранить записи о прочитанных темах, которые старее периода отслеживания новых, нет смысла. Такие записи удаляются, а дата первого входа на форум подтягивается до даты начала отслеживания новых (now - new_check_period).

У активных читателей часто бывает ситуация, что он прочитал многие или все темы с новыми сообщениями. Для этих тем были созданы записи в таблице прочитнных тем, но очищены они будут лишь когда истечет период отслеживания новых, а до этого момента они будут просто мертвым грузом лежать в таблице и утяжелять ее. Чтобы этого не происходило, при проверке новых также вычисляется время первого непрочитанного поста. Все записи до этого времени больше не нужны и поэтому удаляются, а дата первого входа на форум подтягивается до этой даты.

Для анализа и мониторинга я сделал техническую статистику:

http://nosql.ru/forum/load_statistics.php

Кэширование

При загрузке основного контента проверка новых не осуществляется, таким образом контент поставлятся быстро и не тратися время на ожидание проверки новых. Если инфа о новых есть в кэше, то она берется из кэша.

Реализована периодическая проверка новых в фоновом режиме. Этот скрипт подкачивает тэги [новые] в страницу. Первый раз проверка запускается сразу после загрузки и далее каждые N секунд. Благодаря тому что первый запуск фоновой проверки новых осуществляется сразу после загрузки основной страницы, устаревшая инфа, взятая основным скриптом из кэша, обновляется актуальной инфой буквально через 1-2 секунды.

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

Реализована процедура гранулярной инвалидации кэша информации о прочитанных, по мере прочтения топиков.

Отображение

Топики с новыми сообщениями бывают 2х видов:

Просто топики с новыми сообщениями

Топики, которые ты уже посещал, и в них появились новые сообщения.

Совсем новые топики с новыми сообщениями

Новосозданные топики, в которых ты не разу не был. Метка новые у этих топиков несколько отличается по цвету.
Код: SQL
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
create table v1_forum_read_markers
(
   read_marker          varchar(255),
   forum_id             int,
   first_read_date      datetime,
   last_activity        datetime,
   first_activity       datetime,
   ip                   varchar(250)
);

create table v1_topic_read_markers
(
   topic_id             int,
   read_marker          varchar(255),
   last_read_date       datetime,
   ip                   varchar(250)
);
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1259126
апроапр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дед-Скарабей  13.12.2024, 16:51:59
[игнорируется]
Ридмаркеры, неактивные дольше чем период отслеживания новых
какое значение у этого периода?
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1259129
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
апроапр  13.12.2024, 17:16:23
[игнорируется]
Дед-Скарабей  13.12.2024, 16:51:59
[игнорируется]
Ридмаркеры, неактивные дольше чем период отслеживания новых
какое значение у этого периода?
Настраиваемое. Я выставляю неделю. Иначе пухнет и перформанс падает. Ведь каждому анонимному хкерыге нужно маркер выдавать
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1259182
апроапр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дед-Скарабей [игнорируется] 

а какое у тебя среднее значение числа записей в v1_topic_read_markers ?
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1259203
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1259248
апроапр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
понял, не заметил сразу
325

че-то дико мало или у тебя там наоборот данные

20000 форумов )))
pasted_image.png
...
Изменено: 13.12.2024, 18:53:59 - апроапр
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1259255
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В темы мало ботов зоходят.
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1259258
апроапр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
у тебя 20000 форумов?

это реально? )
...
Рейтинг: 0 / 0
25 сообщений из 1 023, страница 13 из 41
Форумы / Вопросы по форуму [закрыт для гостей] / Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]