Smart Group for iOS 11 Compatible Devices

philipwoods
New Contributor III

I've just created a smart group for iOS 11 compatible devices that you might find useful

<?xml version="1.0" encoding="UTF-8"?>
<mobile_device_group>
  <name>iOS 11 Compatible</name>
  <is_smart>true</is_smart>
  <criteria>
    <size>33</size>
    <criterion>
      <name>Model Identifier</name>
      <priority>0</priority>
      <and_or>AND</and_or>
      <search_type>is not</search_type>
      <value>iPad1,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>1</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPad2,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>2</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPad2,4</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>3</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPad2,2</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>4</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPad2,3</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>5</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPad3,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>6</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPad3,2</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>7</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPad3,3</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>8</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPad3,4</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>9</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPad3,5</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>10</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPad3,6</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>11</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPad2,5</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>12</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPad2,6</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>13</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPad2,7</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>14</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>AppleTV1,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>15</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>AppleTV2,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>16</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>AppleTV3,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>17</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPod1,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>18</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPod2,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>19</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPod3,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>20</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPod4,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>21</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPod5,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>22</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPhone1,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>23</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPhone1,2</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>24</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPhone2,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>25</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPhone3,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>26</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPhone3,3</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>27</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPhone4,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>28</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPhone5,1</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>29</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPhone5,2</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>30</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPhone5,3</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>31</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPhone5,4</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
    <criterion>
      <name>Model Identifier</name>
      <priority>32</priority>
      <and_or>and</and_or>
      <search_type>is not</search_type>
      <value>iPhone3,2</value>
      <opening_paren>false</opening_paren>
      <closing_paren>false</closing_paren>
    </criterion>
  </criteria>
  <mobile_devices/>
</mobile_device_group>

Save this as an XML file and you can upload it to your JSS with this command. Using id/0 will automatically assign the next available smart group ID after your existing groups in the JSS (Thanks Mike!).

curl -skfu adminuser:adminpassword https://jssURL.com:8443/JSSResource/mobiledevicegroups/id/0 -T /pathtofile.xml  -X POST;

Hope that saves you a bit of time!

7 REPLIES 7

mike_paul
Contributor III
Contributor III

Thanks for sharing this. You can and should always POST to /id/0 so that way it just automatically selects the next available JSS ID, no need to try to figure out whats available.

philipwoods
New Contributor III

Top tip, thanks Mike. Wasn't sure how that worked.

DominikFahrin
New Contributor

Can anyone make this for iOS 12 compatible devices?

Thanks and Greets from Germany
Dominik

Just_Jack
Contributor

If the device can run iOS 11 it can run iOS 12.
a site that can help.
http://iossupportmatrix.com/

DanielMa
New Contributor III
New Contributor III

Nice work @philipwoods one thing i would mention, having a smart group with more than 10 criteria can have an impact on performance when the group re-calculates.
Might I suggest you leverage the regex options in the smart group
such as in the image where you can limit to a number range so in the example if all iPad models 4,x and greater can support iOS 11 you can use ^iPad[4-9,[1-9]:
^iPad means it the beginning of the line matches iPad
[4-9] means any number between and including 4-9
, just the separator that Apple users for Model Identifier
[1-9] second number set that could include 1-9

a3afbf3363ff4aaa9bc01da52032b286

For more information on regex you can refer to the kb article: https://www.jamf.com/jamf-nation/articles/496/using-regex-with-smart-groups-and-advanced-searches

DominikFahrin
New Contributor

Hello together,

has anyone a xml for iOS / iPadOS 13?

Greets
Dominik

eric_wood
New Contributor II

If you create a smart group with Model Identifier criteria values matching the following "matches regex" operators with "or" connectors you will have a smart list with any device that can not be upgraded to tvOS/iOS/iPadOS 13.

^iPad[1-4],[1-9]

^AppleTV[1-3],[1-2]

^iPod[1-7],[1-1]

^iPhone[1-7],[1-4]

fa071a5563cf473fa7080ad2431a6e47