Copyright © TANDBERG 2008
Reference Guide Version 3.0 rev 3.0
6
3.
If there is an
enumerateID
, the client should call the enumerate method again, with any parameters
that are required or desired, and an
enumerateID
parameter containing the ID returned by the
device from the previous call. This should be repeated while the device continues to provide new
enumerateID
values in responses.
4.
After all data is returned, the device will reply with all remaining results, but no
enumerateID
.
This method should only be called using
enumerateID
values as provided by the device.
2.4.4
Filtering
Enumerate functions contain an optional
enumerateFilter
parameter, which can be used to restrict the
responses to the enumerate call. The valid expressions depend on the function to which they are applied, but
the syntax is the same for all enumerate functions: the section in this document for each function provides a list
of valid filters for that function.
To use the filters, the expression is evaluated, with any function or expression symbols evaluated for the given
entity being enumerated (e.g. if enumerating conferences, the
active
expression will evaluate to true if the
conference is active, and false otherwise). If the result of evaluating the filter is true, the entity is returned to
the client. If the expression evaluates to false, the entity in question is not returned to the client and the next
entity (if any) is considered. As an example, if the expression (
active
&&
scheduled)
is used when enumerating
conference, the returned conferences will be only those which are both active and scheduled.
Filters can consist of atomic expressions, joined together with operators, and brackets in the traditional
manner. Whitespace is ignored. Functions are valid, and any parameters are in a comma separated list in
brackets following the function name, for example
function(expression
1
,expression2)
.
From a boolean perspective, the integer 0 is false, and all other numbers are true.
Integer values can be expressed using any string of valid digits, optionally prefixed by 0x for hexadecimal,
0t for decimal and 0z for binary. If no prefix is specified, decimal is assumed.
The following binary operators are valid, in order of priority (lowest priority first)
Operator
Description
||
Boolean or
&& Boolean
and
| Bitwise
or
^
Bitwise exclusive or
& Bitwise
and
== Equality
!= Inequality
< Less
than
<=
Less than or equal
>=
Greater than or equal
> Greater
than
<<
Bitwise left shift
>>
Bitwise right shift
+ Addition
- Subtraction
* Multiplication
/ Division
% Modulo
There are also the following unary operators, all of which bind tighter than any binary operator.