Properties relevant to mobile devices

(imported topic written by SarahGalvan)

Where can I get a list of properties available for me to retrieve via Session Relevance? I can only find references for Client Relevance which is out of reach.

(imported comment written by DTan)

Hi,

Something like this should get you a set of the reported properties for a particular mobile device (specified by ID at the end of the session relevance).

(name of it, (if (exists source analysis of it) then ("(Site: " & name of site of source analysis of it & ", Analysis ID: " & id of source analysis of it as string & “)”) else “(n/a)”)) of elements of reported property set of bes computer whose (id of it = 1234567)

-Dawson

(imported comment written by SarahGalvan)

DTan wrote:

(name of it, (if (exists source analysis of it) then ("(Site: " & name of site of source analysis of it & ", Analysis ID: " & id of source analysis of it as string & “)”) else “(n/a)”)) of elements of reported property set of bes computer whose (id of it = 1234567)

Thank you for your quick response! However, when I execute the statement I get the following error.

Singular expression refers to nonexistent object

(imported comment written by DTan)

As mentioned above, you need to specify the computer id for your preferred mobile device in the session relevance for it to work.

(imported comment written by SarahGalvan)

Yep, and I specified the wrong one. Was coming back to note that. Thanks again!

(imported comment written by SarahGalvan)

How do I access these properties now? I am supposed to access it with the “bes property” or “property” operator, right? I keep getting “operator not defined” in my various configurations.

(imported comment written by DTan)

Once you figure out which property that you are interested in (identified by name of the site, analysis ID, and property ID), you can do something similar to below:

(if (exists result (property 1 of item 1 of it, item 0 of it)) then (values of result (property 1 of item 1 of it, item 0 of it) whose (NOT error flag of it)) else (nothing)) of (applicable computers of it, it) of fixlet 204 of bes site whose (name of it is “BES Support”)

In above example, we have:

Name of the site = “BES Support”

ID of the analysis in above site = 204

ID of the property in above analysis = 1

For more info about session relevance inspector, you can check the session relevance guide at below link:

http://support.bigfix.com/fixlet/documents/Session%20Inspectors%2081_110719.pdf

-Dawson

(imported comment written by SarahGalvan)

Thank you for the response!

Wow, I didn’t expect it to be so complicated. All I want to know is a property (e.g. Serial Number) of a computer I already know the id of. Do I still need to jump through all these hoops?

(imported comment written by DTan)

Nope.

For single property of a single machine, below relevance will do it.

(values of results from (bes properties whose (name of it = “Serial Number”)) of it) of bes computer whose (id of it = 1234567)

However, if you are dealing with one or more values for all your bes computers, include mobile devices (there could be 500K of them), you will need to pay close attention to the performance characteristics because it may take a while for such session relevance to evaluate.

-Dawson

(imported comment written by Zakkus)

Yeah, “Session” relevance may syntactically look a lot like “client relevance”, but its a very different language. Unlike client relevance, its not commonly used outside of our internal teams.

Perhaps its best to think of it as a database querying language, like SQL. So there are far fewer inspectors in session relevance, and they are around things you might think of as tables (like “bes properties” and “bes computers”). But it can still all get quite complicated to the uninitiated…

-Zak

(imported comment written by SarahGalvan)

Thanks again for the help. It’s quite a headache. I am using the SOAP API so I am limited to Session Relevance.

Are the properties string only or do they have properties themselves? For a non-mobile example (sorry), I would expected results from Packages Installed - Linux to have version strings or something.

(imported comment written by Zakkus)

The values of all property results will naively be returned as strings or lists of strings. So for your “Packages Installed - Linux” property, the results from session relevance will be the string “1.2.3.4”. However since we know that the string was originally a version, we can safely just cast it “as version” in session relevance.

(imported comment written by SarahGalvan)

The “Packages Installed - Linux” seems to just have the name of the packages and not the version string. Through the console or web reports interface is there a way to verify what data I have access to? Thanks again!

(imported comment written by Zakkus)

The idea of session relevance is that you can get access to all the data that you would see in the console, so in principle its everything.