Информация о виджете
| Название | Описание | Тип |
| id | ID виджета | Число |
| type | Тип виджета text - текст image - картинка onlinevideo - видео из онлайн видео-сервиса onlinemusic - звуковая дорожка из онлайн сервиса test - виджет-тест file - виджет-файл table - виджет-таблица homework - домашняя работа spoiler - спойлер form - анкета |
Строка |
| points | Количество поинтов за виджет. Если видет не тестовый, количество поинтов за виджет равно нулю. | Число |
| sort | Ключ сортировки виджетов. Ключи начинаются с нуля | Число |
| user_answer | Ответ на виджет-анкету. Если пользователь не отвечал на виджет, то будет передана пустая строка Пример для непустого ответа: Для виджета [ {"type":"text","question":"Дурак? (Да, я дурак)","required":"1"}, {"type":"textarea","question":"Дурак? (Нет, я не дурак)","required":"0"}, {"type":"checkbox","question":"Дурак?","required":"0","answers":["Да","Нет","Не знаю"]}, {"type":"radiobox","question":"Дурак?","required":"0","answers":["Да","Нет","Не знаю"]}, {"type":"select","question":"Дурак?","required":"0","answers":["Да","Нет","Не знаю"]} ] Формат ответа будет иметь вид: ["Да, я дурак","Нет, я не дурак",["Да","Не знаю"],[],["Нет"]] То есть передается массив ответов на каждый из вопросов по-отдельности, сохраняя последовательность вопросов |
Число |
| content | Содержание виджета в формате json Важно использовать двойные кавычки для ключей и значений Примеры содержания разных типов виджетов: Файловый виджетДоступные форматы:Word (doc, docx) Excel (xls, xlsx, csv) Powerpoint (ppt, pptx) ZIP cloud (в этом случае в объекте будут только параметры src, file_name и type) { "file_name":"test file", "src":"https://api.iq.academy/test.pdf", "file_size":"128" [размер файла в КБ] "type":"pdf" } Текстовый виджет{"text":"тут текст", "align":"left", "style":"header" } Виджет-картинка{"src": "https://api.iq.academy/images/widgets/hehehe.png" } Онлайн видео-виджет{"src":"https://youtu.be/5qap5aO4i9A", "service":"youtube" (iq, ...) } Онлайн звуко-виджет{"src":"https://soundcloud.com/essily/sor-el-gd3an", "service":"soundcloud" } Тестовый виджет{"question":"Квадратный корень из 16", "type":"checkbox", "answers":{ "1":"4", "2":"-4", "3":"256" }, "correct":"1,2", "user_points":10, "user_answer":"2,1", } { "question":"2^10", "type":"radio", "answers":{ "1":"512", "2":"1024", "3":"2048" }, "correct":"2", "user_points":10, "user_answer":"2,1", } { "question":"Квадратный корень из 16", "type":"open", "answers":{}, "correct":"4", "user_points":10, "user_answer":"2,1", } { "question":"Расположи числа в порядке возрастания", "type":"sort", "answers":{ "1":"1", "2":"3", "3":"2" }, "correct":"1,3,2", "user_points":10, "user_answer":"1,3,2", } { "question":"Сопоставь суммы", "type":"correlate", "answers":{ "1":"2+2", "2":"6", "3":"3+3", "3":"4", }, "correct":"1,4,3,2", "user_points":10, "user_answer":"1,4,3,2", } Виджет-таблица[[ "a", "b" ], [ "c", "d" ] ] Домашняя работаПараметр status:0 - Не отправлено 1 - Ожидает проверку 2 - Задание зачтено 3 - Задание не зачтено { "question":"Квадратный корень из 16", "user_points":10, "status":1, "user_answer":"Ответ пользователя", "attachments":[ "https://api.iq.academy/images/messages/123.jpg", "https://api.iq.academy/images/messages/124.pdf" ] } Спойлер{"short":"Возведение в квадрат", "long":"Чтобы возвести число в квадрат, его нужно умножить само на себя" } Анкета[{ "type":"text", "question":"Дурак?", "required":"1" }, { "type":"textarea", "question":"Дурак?", "required":"1" }, { "type":"checkbox", "question":"Дурак?", "answers":["Да","Нет","Не знаю"], "required":"0" }, { "type":"radiobox", "question":"Дурак?", "answers":["Да","Нет","Не знаю"], "required":"1" }, { "type":"select", "question":"Дурак?", "answers":["Да","Нет","Не знаю"], "required":"0" }, ] |
Строка |