summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2015-11-04 00:56:46 +0100
committerDimitri Sokolyuk <demon@dim13.org>2015-11-04 00:56:46 +0100
commit90b6c774036c40ba85a36323db99cabac6e4fd78 (patch)
tree8d7edf444bfb68a4ca975805311aafae6aee0c70
parent6217411a6bbebfe9b012f629022f3770e1dc8279 (diff)
pbxType
-rw-r--r--src/escape.erl30
-rw-r--r--src/tapi.erl5
2 files changed, 27 insertions, 8 deletions
diff --git a/src/escape.erl b/src/escape.erl
index 11f2a6c..63acdb1 100644
--- a/src/escape.erl
+++ b/src/escape.erl
@@ -1,7 +1,8 @@
-module(escape).
-export([decode/1, lines/1]).
--export([privateData/1, deviceData/1]).
+-export([privateData/1, deviceData/1, deviceBasic/1,
+ pbxType/0, pbxType/1]).
-include("CSTA-escape-service.hrl").
-include("CSTA-device-identifiers.hrl").
@@ -12,9 +13,8 @@ decode(Data) ->
lines(Device) ->
'CSTA-escape-service':encode('EscapeArgument', #'EscapeArgument'{
- privateData = {private,
- {kmeSystemData, {getSystemData, {request, {deviceList,
- {category, {standardDevice, Device}}}}}}}}).
+ privateData = {private, {kmeSystemData, {getSystemData, {request,
+ {deviceList, {category, {standardDevice, Device}}}}}}}}).
privateData({ok, #'EscapeArgument'{privateData = Data}}) ->
Private = private(Data),
@@ -31,7 +31,23 @@ private({systemDataLinkedReply, #'KmeSystemDataLinkedReply'{lastSegment = true,
deviceData(Device) ->
'CSTA-escape-service':encode('EscapeArgument', #'EscapeArgument'{
- privateData = {private, {kmeSystemData, {getSystemData,
- {request, {deviceData, #'KmeGetSystemDataReq_deviceData'{
+ privateData = {private, {kmeSystemData, {getSystemData, {request,
+ {deviceData, #'KmeGetSystemDataReq_deviceData'{
device = #'DeviceID'{deviceIdentifier = Device},
- sysData = {fcoKey, 'NULL'} }}}}}}}).
+ 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},
+ {7, tde100}, {8, tde200}, {9, tde600},
+ {10, ncp500}, {11, ncp1000}, {12, ncp3000}]).
diff --git a/src/tapi.erl b/src/tapi.erl
index 570368f..c9ff2b1 100644
--- a/src/tapi.erl
+++ b/src/tapi.erl
@@ -7,7 +7,7 @@
terminate/2, code_change/3]).
-export([send/1, ext/0, co/0, snapshot/1, monitor/1, button/1,
- dial/2, fco/1]).
+ dial/2, fco/1, type/0]).
-include("config.hrl").
-include("opcodes.hrl").
@@ -79,3 +79,6 @@ dial(From, To) ->
fco(Device) ->
gen_server:cast(?SERVER, rose:invoke(?ESCAPE,
escape:deviceData({dialingNumber, Device}))).
+
+type() ->
+ gen_server:cast(?SERVER, rose:invoke(?ESCAPE, escape:pbxType())).