From 756f495f49f1e58289726af38385722a4e42a831 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Wed, 11 Nov 2015 21:18:02 +0100 Subject: Experimental --- src/pbx_escape.erl | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) (limited to 'src/pbx_escape.erl') diff --git a/src/pbx_escape.erl b/src/pbx_escape.erl index bc447d4..9b2fad4 100644 --- a/src/pbx_escape.erl +++ b/src/pbx_escape.erl @@ -1,20 +1,37 @@ -module(pbx_escape). --export([decode/1, lines/1]). --export([privateData/1, deviceData/1, deviceBasic/1, - pbxType/0, pbxType/1]). +-export([decode/1, encode/1, opcode/0]). +-export([privateData/1, device/1, pbxType/1]). +-include("opcodes.hrl"). -include("CSTA-escape-service.hrl"). -include("CSTA-device-identifiers.hrl"). -include("KME-specific-types.hrl"). +opcode() -> + ?ESCAPE. + decode(Data) -> 'CSTA-escape-service':decode('EscapeArgument', Data). -lines(Device) -> +encode({lines, Device}) -> + 'CSTA-escape-service':encode('EscapeArgument', #'EscapeArgument'{ + privateData = {private, {kmeSystemData, {getSystemData, {request, + {deviceList, {category, {standardDevice, Device}}}}}}}}); +encode({deviceData, Device}) -> 'CSTA-escape-service':encode('EscapeArgument', #'EscapeArgument'{ privateData = {private, {kmeSystemData, {getSystemData, {request, - {deviceList, {category, {standardDevice, Device}}}}}}}}). + {deviceData, #'KmeGetSystemDataReq_deviceData'{ + device = #'DeviceID'{deviceIdentifier = Device}, + sysData = {fcoKey, []}}}}}}}}); +encode({deviceBasic, Device}) -> + 'CSTA-escape-service':encode('EscapeArgument', #'EscapeArgument'{ + privateData = {private, {kmeSystemData, {systemDataChanged, + {deviceBasicInfo, #'DeviceID'{deviceIdentifier = Device}}}}}}); +encode({pbxType}) -> + 'CSTA-escape-service':encode('EscapeArgument', #'EscapeArgument'{ + privateData = {private, {kmeSystemData, {getSystemData, {request, + {systemData, pbxType}}}}}}). privateData({ok, #'EscapeArgument'{privateData = Data}}) -> private(Data). @@ -39,23 +56,6 @@ 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, - {deviceData, #'KmeGetSystemDataReq_deviceData'{ - device = #'DeviceID'{deviceIdentifier = Device}, - sysData = {fcoKey, []}}}}}}}}). - -deviceBasic(Device) -> - 'CSTA-escape-service':encode('EscapeArgument', #'EscapeArgument'{ - privateData = {private, {kmeSystemData, {systemDataChanged, - {deviceBasicInfo, #'DeviceID'{deviceIdentifier = Device}}}}}}). - -pbxType() -> - 'CSTA-escape-service':encode('EscapeArgument', #'EscapeArgument'{ - privateData = {private, {kmeSystemData, {getSystemData, {request, - {systemData, pbxType}}}}}}). - pbxType(Type) -> proplists:get_value(Type, [{0, tda100}, {1, tda200}, {2, tda30}, {3, tda50}, {5, tda15}, {6, tda600}, -- cgit v1.2.3