AutoGRAPH.NET Service GetTripTables — различия между версиями

Материал из TK
Перейти к: навигация, поиск
 
(не показаны 2 промежуточные версии 2 участников)
Строка 4: Строка 4:
   
 
Вызов:
 
Вызов:
<pre>http://localhost/ServiceJSON/GetTripTables?schemaID=b4b68be6-a124-4ca3-ab02-589e7c2ef102&IDs=d090286c-1fd6-4ef2-ae44-8091d04408d1&SD=20151006&ED=20151007-2359&onlineParams=Power,Speed,Signal,SpecConsum,GeoFence,SummaryLevel&tripSplitterIndex=0
+
<pre>http://localhost/ServiceJSON/GetTripTables?session=B05043B71F4B9C67C910163779FFF06EDBBAEF994B2D6C3A84DD96EB767A0F44&schemaID=b4b68be6-a124-4ca3-ab02-589e7c2ef102&IDs=d090286c-1fd6-4ef2-ae44-8091d04408d1&SD=20151006&ED=20151007-2359&onlineParams=Power,Speed,Signal,SpecConsum,GeoFence,SummaryLevel&tripSplitterIndex=0
 
</pre>
 
</pre>
   
Строка 13: Строка 13:
 
[[File:AutoGRAPHNET Service GetTripTables.png|RTENOTITLE]]
 
[[File:AutoGRAPHNET Service GetTripTables.png|RTENOTITLE]]
   
  +
== WCF ==
== WCF&nbsp;''<small><span style="background-color:#FFFF00;">протокол устарел и не рекомендуется к использованию. Будет удалён с 01.06.2020</span></small>'' ==
 
   
 
Определение:
 
Определение:
Строка 20: Строка 20:
 
*schemaID – ID схемы
 
*schemaID – ID схемы
 
*IDs – список идентификаторов ТС (их можно получить с помощью [[AutoGRAPH.NET_Service_EnumDevices|EnumDevices]] – поле ID в классе RGroupItem)
 
*IDs – список идентификаторов ТС (их можно получить с помощью [[AutoGRAPH.NET_Service_EnumDevices|EnumDevices]] – поле ID в классе RGroupItem)
*SD / ED – соответственно начало и конец временного периода. Время местное по часовому поясу сервера.
+
*SD / ED – соответственно начало и конец временного периода. Время в UTC.
 
*onlineParams - один или больше табличных параметров. Отсутствующие у приборов параметры игнорируются и в ответе также отсутствуют
 
*onlineParams - один или больше табличных параметров. Отсутствующие у приборов параметры игнорируются и в ответе также отсутствуют
 
*tripSplitterIndex - идентификатор разбиения на рейсы (по умолчанию 0), -1 если не разбивать на рейсы
 
*tripSplitterIndex - идентификатор разбиения на рейсы (по умолчанию 0), -1 если не разбивать на рейсы

Текущая версия на 14:23, 15 октября 2020

Возвращает табличные данные по запрошенным ТС за период.

JSON

Вызов:

http://localhost/ServiceJSON/GetTripTables?session=B05043B71F4B9C67C910163779FFF06EDBBAEF994B2D6C3A84DD96EB767A0F44&schemaID=b4b68be6-a124-4ca3-ab02-589e7c2ef102&IDs=d090286c-1fd6-4ef2-ae44-8091d04408d1&SD=20151006&ED=20151007-2359&onlineParams=Power,Speed,Signal,SpecConsum,GeoFence,SummaryLevel&tripSplitterIndex=0

Дата и время задаются в формате yyyyMMdd или yyyyMMdd-HHmm
Если ID'ов больше одного - идентификаторы указывается через запятую.

Результат: скачать файл

RTENOTITLE

WCF

Определение:

Dictionary<Guid, RTripTables> GetTripTables(Guid schemaID, string IDs, string SD, string ED, string[] onlineParams, int tripSplitterIndex)
  • schemaID – ID схемы
  • IDs – список идентификаторов ТС (их можно получить с помощью EnumDevices – поле ID в классе RGroupItem)
  • SD / ED – соответственно начало и конец временного периода. Время в UTC.
  • onlineParams - один или больше табличных параметров. Отсутствующие у приборов параметры игнорируются и в ответе также отсутствуют
  • tripSplitterIndex - идентификатор разбиения на рейсы (по умолчанию 0), -1 если не разбивать на рейсы

Результат:

public class RTripTables
{
   public Guid ID { get; set; }               // ID ТС
   public string Name { get; set; }           // название ТС
   public RTripTableItem[] Trips { get; set; }// список рейсов
}

public class RTripTableItem 
{
    public int Index { get; set; }            // порядковый номер рейса (с 0)
    public DateTime SD { get; set; }          // дата/время начала рейса (в UTC)
    public DateTime ED { get; set; }          // дата/время конца рейса (в UTC)
    public RPoint PointStart { get; set; }    // координата начала рейса
    public RPoint PointEnd { get; set; }      // координата конца рейса
    public DateTime[] DT { get; set; }        // массив дата-времени для каждой табличной записи
    public RTripTableValues[] Values { get; set; } // табличные данные этого рейса
}

public class RTripTableValues
{
    public string Name { get; set; }          // название параметра
    public string Caption { get; set; }       // описание параметра
    public object[] Values { get; set; }      // массив данных по каждому параметру (тип зависит от ReturnType)
    public RParameterStatus[] Statuses { get; set; } // список возможных статусов отрезка

    public ReturnType ReturnType { get; set; }  // тип данных
    public AddValueType ValueType { get; set; } // модификатор данных
    public string Unit { get; set; }            // единица измерения
    public string Format { get; set; }          // формат отображения


}

public enum AddValueType : int
{
    Curr = 0,    // текущее значение (например, уровень топлива)
    First = 1,   // первое значение в отрезке/рейса (например, время начала рейса или отрезка)
    Last = 2,    // последнее значение в отрезке/рейса (например, время конца рейса или отрезка)
    Diff = 3     // разница между точками (например расход топлива за рейс)
}