Описание сервиса
Сервис имитирует температурные датчики на улице и в квартирах жилых домов, расположенных в различных районах в 16 городах. Один год модерилуемого времени соответсвтует одному часу реального времени.
Интерфейс прикладного программирования
Интерфейс прикладного программирования реализован в архитектурном стиле REST API. Работа с API осуществляется посредством использования протокола HTTP. При обращении к API сервиса на стороне HTTP-сервера формируется ответ, содержащий набор определенных данных в формате JSON.
Описание структуры данных получаемых от HTTP-сервера
При обработке HTTP-запросов сервер формирует ответы в формате JSON. При удачной обработке запроса сервер формирует ответ в виде следующей схемы (структуры):
{"data": value, "day": number}
в поле data в качестве value используется один из возможных типов данных JSON, значение зависит от маршрута, к которому производится запрос (см. раздел Обслуживаемые маршруты).
В поле day содержится информация о текущем дне моделируюмого времени.
В случае ошибочного запроса HTTP-сервер возвращает ответ в виде:
{"error": string, "code": number}
где поле error содержит описание ошибки и имеет тип string, а code имеет тип number и содержит код ошибки HTTP.
Обслуживаемые маршруты
http://dt.miet.ru/it/api
При обращении к данному URL сервер возвращает массив объектов с информацией о городах в виде:
{
"data": [ {"city_id": number , "city_name": string} ],
"day": number
}
где элементы массива представлены объектами вида:
- city_id - идентификатор города (тип number);
- city_name - название города (тип string).
http://dt.miet.ru/it/api/:city_id
Пример:
http://dt.miet.ru/it/api/1 – город с идентификатором 1
http://dt.miet.ru/it/api/2 – город с идентификатором 2
При обращении к данному URL сервер возвращает объект с информацией о городе с идентификатором :city_id
{
"data":
{"city_name": string, "area_count": number, "house_count": number, "apartment_count": number, "temperature": number},
"day": number
}
где
- city_name - название города (тип string);
- area_count - количество районов в городе;
- house_count - количество домов;
- apartment_count - количество квартир;
- temperature - текущая температура воздуха в городе.
http://dt.miet.ru/it/api/:city_id/temperature
При обращении к данному URL сервер возвращает массив объектов со значением уличной температуры воздуха в городе:
{
"data": number,
"day": number
}
http://dt.miet.ru/it/api/:city_id/:area_id
При обращении к данному URL сервер возвращает массив объектов с информацией о районе города:
{
"data":
[
{"house_id": number, "apartment_count": number}
],
"day": number
}
где
- house_id - идентификатор (номер) дома (тип number);
- apartment_count - количество квартир в доме (тип number).
http://dt.miet.ru/it/api/:city_id/:area_id/:house_id
При обращении к данному URL сервер возвращает объект с информацией о количестве квартир в доме:
{
"data":
{"apartment_count": number},
"day": number
}
где apartment_count - количество квартир в доме (тип number).
http://dt.miet.ru/it/api/:city_id/:area_id/:house_id/temperature
При обращении к данному URL сервер возвращает массив объектов, содержащих информацию от температурных датчиков, расположенных в квартирах дома:
{
"data":
[
{"apartment_id": number, "temperature": number}
],
"day": number
}
где
- apartment_id - идентификатор (номер) квартиры (тип number);
- temperature - текущая температура (тип number).
http://dt.miet.ru/it/api/:city_id/:area_id/:house_id/:apartment_id
При обращении к данному URL сервер возвращает объект с информацией о квартире:
{
"data":
{"temperature": number},
"day": number
}
где temperature - значение датчика температуры в квартире (тип number).
http://dt.miet.ru/it/api/:city_id/:area_id/:house_id/:apartment_id/temperature
При обращении к данному URL сервер возвращает значение датчика температуры воздуха в квартире:
{
"data": number,
"day": number
}
где data - значение датчика температуры в квартире (тип number).
Обратная связь
По всем интересующим Вас вопросам обращаетесь в группу в вКонтакте и по адресу электронной почты dt_smartpark@miee.ru.