From 046778631e81d628e80a6847ac7e8540ca81e7ea Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Wed, 4 Nov 2015 14:28:01 +0100 Subject: wip --- src/escape.erl | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/escape.erl b/src/escape.erl index 30db37c..72755c9 100644 --- a/src/escape.erl +++ b/src/escape.erl @@ -20,7 +20,9 @@ privateData({ok, #'EscapeArgument'{privateData = Data}}) -> private(Data). private({private, {kmeSystemData, Data}}) -> - io:format("kmeSystemData ~p~n", [linked(Data)]). + List = linked(Data), + %Dev = lists:map(fun device/1, List), + io:format("kmeSystemData ~p~n", [List]). linked({systemDataLinkedReply, #'KmeSystemDataLinkedReply'{lastSegment = false, sysData = Data}}) -> stateEntry(Data); @@ -28,10 +30,15 @@ linked({systemDataLinkedReply, #'KmeSystemDataLinkedReply'{lastSegment = true, s stateEntry(Data). stateEntry(#'KmeGetSystemDataRsp'{deviceList = List}) when List =/= asn1_NOVALUE -> - List; + lists:filter(fun stateEntryFilter/1, List); stateEntry(#'KmeGetSystemDataRsp'{pbxType = Type}) when Type =/= asn1_NOVALUE -> pbxType(Type). +stateEntryFilter(#'KmeDeviceStateEntry'{status = ins}) -> true; +stateEntryFilter(#'KmeDeviceStateEntry'{status = ous}) -> false. + +device(#'KmeDeviceStateEntry'{device = #'DeviceID'{deviceIdentifier = Device}}) -> Device. + deviceData(Device) -> 'CSTA-escape-service':encode('EscapeArgument', #'EscapeArgument'{ privateData = {private, {kmeSystemData, {getSystemData, {request, -- cgit v1.2.3