API Presence
Presence — сервис, позволяющий работать со статусом онлайновости пользователей.
Возможности Presence
- Получение статуса одного или нескольких пользователей
Описание методов
Получение статуса пользователя get /presence/state/{code_id}/
Запрос
Пример запроса
curl 'https://api.ati.su/presence/state/{code_id}/' \ -X 'GET' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("GET", "https://api.ati.su", "/presence/state/{code_id}/"); Ответ
200 Список пользователей
Модель
id пользователя
состояние пользователя
}
Пример
}
{...}
"code_id":"123.0",
"state":"offline"
401 Ошибка авторизации.
Модель
null
Пример
null
Метод возвращает статус онлайновости пользователя по его AtiCode.ContactID.
Возвращает статус для списка пользователей post /presence/state
Запрос
Модель
Пример запроса
curl 'https://api.ati.su/presence/state' \ -X 'POST' \ -H 'Authorization: Bearer {authorizationToken}' \ -H 'Content-Type: application/json' \ --data-raw '["123456.0"]'Процедура ВыполнитьHTTPЗапрос(МетодЗапроса, АдресХоста, АдресРесурса, ТекстЗапроса) Экспорт ЗаголовкиHTTP = Новый Соответствие(); ЗаголовкиHTTP.Вставить("Accept", "application/json"); ЗаголовкиHTTP.Вставить("Content-Type", "application/json"); ЗаголовкиHTTP.Вставить("Authorization", "Bearer {authorizationToken}"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, ЗаголовкиHTTP); HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); ЗащищенноеСоединениеSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
Соединение = Новый HTTPСоединение(АдресХоста,,,,,, ЗащищенноеСоединениеSSL);
Попытка Ответ = Соединение.ВызватьHTTPМетод(МетодЗапроса, HTTPЗапрос); Сообщить("Код ответа: " + Ответ.КодСостояния); Сообщить("Ответ: " + Ответ.ПолучитьТелоКакСтроку("UTF-8")); Исключение Сообщить("Ошибка выполнения запроса!" + Символы.ПС + ОписаниеОшибки()); КонецПопытки;КонецПроцедуры
ВыполнитьHTTPЗапрос("POST", "https://api.ati.su", "/presence/state", "[""123456.0""]"); Ответ
200 Список пользователей
Модель
id пользователя
состояние пользователя
}]
Пример
}
]
[...]
{...}
"code_id":"123.0",
"state":"offline"
400 Bad Request.
Модель
null
Пример
null
401 Ошибка авторизации.
Модель
null
Пример
null
Метод возвращает список пользователей с их статусом онлайновости по их AtiCode.ContactID. Можно получить статус не более сотни контактов за раз.