Class: Jamf::MobileDevice
- Extended by:
- Matchable
- Includes:
- Creatable, Extendable, Locatable, MDM, ManagementHistory, Purchasable, Sitable, Updatable, Uploadable
- Defined in:
- lib/jamf/api/classic/api_objects/mobile_device.rb
Overview
This class represents a Mobile Device stored in the JSS.
Adding devices to the JSS
When creating new MobileDevices in the JSS with this class (using make) you must specify a udid, and serial_number before calling ‘create` or `save`. You can provide these values with the `.make` call, or afterward using setters.
Management History & Logs
MobileDevice Management History and logs can now be retrieved both from a MobileDevice instance, and directly via class methods without fetching an instance. This is handled by the mixed-in ManagementHistory module, Q.V. for details.
MDM Commands
See the MDM mixin module for Class and Instance methods for sending MDM commands to mobiledevices.
To send MDM commands without fetching mobiledevice instances, use the class methods, which can take multiple identifiers at once.
NOTE: If the #name= method is used to change the name of a supervized device, the DeviceName MDM command will be sent to the device when the changes are sent to the server via APIObject#save or #update
Constant Summary collapse
- RSRC_BASE =
The base for REST resources of this class
'mobiledevices'.freeze
- RSRC_LIST_KEY =
the hash key used for the JSON list output of all objects in the JSS
:mobile_devices- RSRC_OBJECT_KEY =
The hash key used for the JSON object output. It’s also used in various error messages
:mobile_device- SITE_SUBSET =
Where is the Site data in the API JSON?
:general- OTHER_LOOKUP_KEYS =
these keys, as well as :id and :name, can be used to look up objects of this class in the JSS the wierd alises wifi_mac_addresse, mac_addresse and macaddresse are for proper pluralization of ‘mac_address’ and such
{ udid: { aliases: %i[uuid guid], fetch_rsrc_key: :udid }, serial_number: { aliases: %i[serialnumber sn], fetch_rsrc_key: :serialnumber }, wifi_mac_address: { aliases: %i[ wifi_macaddr mac_address macaddr ], fetch_rsrc_key: :macaddress } }.freeze
- HW_PREFIX_TV =
'AppleTV'.freeze
- HW_PREFIX_IPAD =
'iPad'.freeze
- HW_PREFIX_IPHONE =
'iPhone'.freeze
- NON_UNIQUE_NAMES =
true- UPLOAD_TYPES =
file uploads can send attachments to the JSS using :mobiledevices as the sub-resource.
{ attachment: :mobiledevices }.freeze
- SEARCH_CLASS =
This class lets us seach for computers
Jamf::AdvancedMobileDeviceSearch
- EXT_ATTRIB_CLASS =
This is the class for relevant Extension Attributes
Jamf::MobileDeviceExtensionAttribute
- MDM_COMMAND_TARGET =
What kind of devices are we for MDM purposes?
:mobiledevices- OBJECT_HISTORY_OBJECT_TYPE =
the object type for this object in the object history table. See APIObject#add_object_history_entry
21
Instance Attribute Summary collapse
-
#airplay_password ⇒ String
readonly
The airplay passwd on devices that can receive AirPlay (i.e. apple tvs).
- #applecare_id ⇒ String included from Purchasable
-
#applications ⇒ Array<Hash>
readonly
The applications on the device.
- #asset_tag ⇒ String
-
#available_mb ⇒ Intger
(also: #available)
readonly
How much space available on the device?.
-
#battery_level ⇒ Integer
(also: #battery_percent)
readonly
What percentage of the battery is remaining.
-
#ble_capable ⇒ Boolean
readonly
Is this device ble_capable?.
-
#bluetooth_mac_address ⇒ String
readonly
The bluetooth mac addr.
- #building ⇒ String included from Locatable
-
#capacity_mb ⇒ Integer
(also: #capacity)
readonly
Total storage on the device.
-
#certificates ⇒ Array<Hash>
readonly
The certificates on the device.
-
#configuration_profiles ⇒ Array<Hash>
readonly
One for each ConfigurationProfile on the device.
- #department ⇒ String included from Locatable
-
#device_id ⇒ String
readonly
An Apple TV identifier.
- #device_name ⇒ String readonly
-
#device_ownership_level ⇒ String
readonly
The device_ownership_level.
- #display_name ⇒ String readonly
- #email_address ⇒ String included from Locatable
- #exchange_activesync_device_identifier ⇒ String readonly
-
#extension_attributes ⇒ Array<Hash>
included
from Extendable
readonly
The extension attribute values for the object.
-
#initial_entry_date ⇒ Time
readonly
Uses the value from the API’s initial_entry_date_epoch.
-
#ip_address ⇒ String
readonly
The IP addr.
- #is_leased ⇒ Boolean (also: #leased?) included from Purchasable
- #is_purchased ⇒ Boolean (also: #purchased?) included from Purchasable
-
#languages ⇒ String
readonly
The languages.
-
#last_backup_time ⇒ Time
(also: #last_backup_date, #last_backup)
readonly
Uses the value from the API’s last_backup_time_epoch.
-
#last_cloud_backup_date ⇒ Time
readonly
Last_cloud_backup_date.
-
#last_enrollment ⇒ Time
readonly
The last time this device enrolled in Jamf.
-
#last_inventory_update ⇒ Time
readonly
Uses the value from the API’s last_inventory_update_utc.
- #lease_expires ⇒ Time included from Purchasable
- #life_expectancy ⇒ Integer included from Purchasable
-
#locales ⇒ String
readonly
The locales.
-
#managed ⇒ Boolean
(also: #managed?)
readonly
Is this device managed?.
-
#mobile_device_groups ⇒ Array<Hash>
readonly
One for each group to which the device belongs.
-
#model ⇒ String
readonly
The display name of the model.
-
#model_display ⇒ String
readonly
The display name of the model.
-
#model_identifier ⇒ String
readonly
The model identifier.
-
#model_number ⇒ String
readonly
The display name of the model.
-
#modem_firmware ⇒ String
readonly
The model firmware.
-
#need_to_update ⇒ Boolean
included
from Updatable
readonly
Do we have unsaved changes?.
-
#network ⇒ Hash
readonly
A Hash of network data.
-
#os_build ⇒ String
readonly
The OS build.
-
#os_type ⇒ String
readonly
The OS type.
-
#os_version ⇒ String
readonly
The OS version.
-
#percentage_used ⇒ Integer
readonly
How much of the capacity is in use?.
- #phone ⇒ String included from Locatable
- #po_date ⇒ Time included from Purchasable
- #po_number ⇒ String included from Purchasable
- #position ⇒ String included from Locatable
-
#provisioning_profiles ⇒ Array<Hash>
readonly
One per provisioning profile.
- #purchase_price ⇒ Float included from Purchasable
- #purchasing_account ⇒ String included from Purchasable
- #purchasing_contact ⇒ String included from Purchasable
- #real_name ⇒ String included from Locatable
- #room ⇒ String included from Locatable
-
#security ⇒ Hash
readonly
A Hash of security data.
- #serial_number ⇒ String (also: #sn, #serialnumber)
-
#shared ⇒ Boolean
readonly
Is this device shared?.
-
#sim_phone_number ⇒ String
(also: #device_phone_number)
readonly
The phone number of the device’s SIM card.
-
#supervised ⇒ Boolean
(also: #supervised?)
readonly
Is this device supervised?.
-
#tethered ⇒ String
readonly
The tether state of the device.
- #udid ⇒ String
- #username ⇒ String (also: #user) included from Locatable
- #vendor ⇒ String included from Purchasable
- #warranty_expires ⇒ Time included from Purchasable
-
#wifi_mac_address ⇒ String
readonly
The wifi mac addr.
Class Method Summary collapse
-
.all_apple_tvs(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<Hash>
The list of all iPads.
-
.all_ipads(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<Hash>
The list of all iPads.
-
.all_iphones(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<Hash>
The list of all iPhones.
-
.all_managed(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<Hash>
The list of all managed mobile devices.
-
.all_phone_numbers(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<String>
All mobiledevice phone numbers.
-
.all_supervised(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<Hash>
The list of all supervised mobile devices.
-
.all_unmanaged(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<Hash>
The list of all unmanaged mobile devices.
-
.all_unsupervised(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<Hash>
The list of all unsupervised mobile devices.
-
.management_id(ident, cnx: Jamf.cnx) ⇒ String?
Get the MDM Management ID for a device by identifer.
-
.match(term, api: nil, cnx: Jamf.cnx) ⇒ Array<Hash>
extended
from Matchable
Perform a match, returning an Array of Hashes, one for each item matched.
Instance Method Summary collapse
-
#app_store_app_history(status = nil) ⇒ Object
(also: #managed_app_history)
included
from ManagementHistory
Wrapper for app store history for both computers and mobile devices.
-
#audit_history ⇒ Object
(also: #audits)
included
from ManagementHistory
The audit_history for this object.
-
#blank_push ⇒ void
(also: #send_blank_push, #noop)
included
from MDM
Send a blank push to this object.
-
#casper_imaging_logs ⇒ Object
included
from ManagementHistory
The casper_imaging_logs for this computer.
-
#casper_remote_logs ⇒ Object
included
from ManagementHistory
The casper_remote_logs for this computer.
-
#clear_location ⇒ void
included
from Locatable
Clear all location data.
-
#clear_passcode ⇒ Object
included
from MDM
Send an clear_passcode command to this object.
-
#clear_restrictions_password ⇒ Object
included
from MDM
Send an clear_restrictions_password command to this object.
-
#clone(new_name, api: nil, cnx: nil) ⇒ APIObject
included
from Creatable
make a clone of this API object, with a new name.
-
#completed_mdm_commands ⇒ Object
(also: #completed_commands)
included
from ManagementHistory
The completed_mdm_commands for this object.
-
#completed_policies ⇒ Object
included
from ManagementHistory
The array from .policy_logs, limited to status = :completed.
-
#computer_usage_logs ⇒ Object
(also: #usage_logs)
included
from ManagementHistory
The computer_usage_logs for this computer.
-
#delete_user(user) ⇒ Object
included
from MDM
Send a delete_user command to this computer or group.
-
#device_lock(passcode_or_message = '') ⇒ Object
(also: #lock, #lock_device)
included
from MDM
Send a dev lock to this object.
-
#disable_app_analytics ⇒ Object
included
from MDM
Send a disable_app_analytics command to this object.
-
#disable_data_roaming ⇒ Object
included
from MDM
Send a disable_data_roaming command to this object.
-
#disable_diagnostic_submission ⇒ Object
included
from MDM
Send a disable_diagnostic_submission command to this object.
-
#disable_lost_mode ⇒ Object
included
from MDM
Send a disable_lost_mode command to this object.
-
#disable_remote_desktop ⇒ Object
included
from MDM
Send a disable_remote_desktop command to this computer or group.
-
#disable_voice_roaming ⇒ Object
included
from MDM
Send a disable_voice_roaming command to this object.
-
#ea_names ⇒ Array<String>
included
from Extendable
The names of all known EAs.
-
#ea_types ⇒ Hash{String => String}
included
from Extendable
EA names => data type (one of ‘String’, ‘Number’, or ‘Date’).
-
#ebook_history(status = nil) ⇒ Object
(also: #managed_ebook_history)
included
from ManagementHistory
The ebook_history for this mobile device.
-
#enable_app_analytics ⇒ Object
included
from MDM
Send an enable_app_analytics command to this object.
-
#enable_data_roaming ⇒ Object
included
from MDM
Send an enable_data_roaming command to this object.
-
#enable_diagnostic_submission ⇒ Object
included
from MDM
Send an enable_diagnostic_submission command to this object.
-
#enable_lost_mode(message: nil, phone: nil, footnote: nil, enforce_lost_mode: false, play_sound: false) ⇒ Object
included
from MDM
Send a enable_lost_mode command to one or more targets.
-
#enable_remote_desktop ⇒ Object
included
from MDM
Send an enable_remote_desktop command to this computer or group.
-
#enable_voice_roaming ⇒ Object
included
from MDM
Send an enable_voice_roaming command to this object.
-
#erase_device(passcode = '', preserve_data_plan: false) ⇒ Object
(also: #wipe_device, #wipe_computer, #wipe, #erase)
included
from MDM
Send an erase device command to this object.
-
#ext_attr_xml ⇒ REXML::Element
included
from Extendable
private
TODO: make this (and all XML amending) method take the in-progress XML doc and add (or not) the EA xml to it.
-
#ext_attrs ⇒ Object
included
from Extendable
An easier-to-use hash of EA name to EA value.
-
#failed_app_store_apps ⇒ Object
(also: #failed_managed_apps)
included
from ManagementHistory
shortcut for app_store_app_history where status = :failed.
-
#failed_ebooks ⇒ Object
(also: #failed_managed_ebooks)
included
from ManagementHistory
shortcut for ebook_history where status = :failed.
-
#failed_mdm_commands ⇒ Object
(also: #failed_commands)
included
from ManagementHistory
The failed_mdm_commands for this object.
-
#failed_policies ⇒ Object
included
from ManagementHistory
The array from .policy_logs, limited to status = :failed.
-
#flush_mdm_commands(status) ⇒ void
included
from MDM
flush pending and/or failed MDM commands for this object.
-
#has_location? ⇒ Boolean
included
from Locatable
Does this item have location data?.
-
#has_purchasing? ⇒ Boolean
included
from Purchasable
Does this item have any purchasing info?.
-
#initialize(**args) ⇒ MobileDevice
constructor
When creating new records with .make, udid:, serial_number:, and asset_tag: can be provided in the args.
-
#installed_app_store_apps ⇒ Object
(also: #installed_managed_apps)
included
from ManagementHistory
shortcut for app_store_app_history where status = :installed.
-
#installed_ebooks ⇒ Object
(also: #installed_managed_ebooks)
included
from ManagementHistory
shortcut for ebook_history where status = :installed.
- #ipad? ⇒ Boolean
- #iphone? ⇒ Boolean
-
#last_mdm_contact ⇒ Object
included
from ManagementHistory
The time of the last completed mdm command for this object.
-
#location ⇒ Hash<String>
included
from Locatable
All the location data in a Hash, as it comes from the API.
-
#location_xml ⇒ REXML::Element
included
from Locatable
private
Return a REXML <location> element to be included in the rest_xml of objects that have a Location subset.
-
#mac_app_store_app_history(status = nil) ⇒ Object
included
from ManagementHistory
The mac_app_store_app_history for this computer.
-
#management_history(subset = nil) ⇒ Object
(also: #history)
included
from ManagementHistory
The raw management history data for this object.
-
#management_id ⇒ String?
The management id for this device.
-
#mdm_command_history(status = nil) ⇒ Object
(also: #commands, #management_command_history)
included
from ManagementHistory
The mdm_command_history for this object.
-
#mobile_device_app_history(status = nil) ⇒ Object
included
from ManagementHistory
The mobile_device_app_history for this mobile device.
- #name=(new_name) ⇒ Object
-
#parse_ext_attrs ⇒ void
included
from Extendable
Populate @extension_attributes (the Array of Hashes that comes from the API) and @ext_attr_names, which is a Hash mapping the EA names to their values.
-
#parse_location ⇒ void
included
from Locatable
Call this during initialization of objects that have a Location subset and the location attributes will be populated (as primary attributes) from @init_data.
-
#parse_purchasing ⇒ Object
included
from Purchasable
private
Call this during initialization of objects that have a Purchasing subset and the purchasing attribute will be populated from @init_data.
-
#passcode_lock_grace_period(secs) ⇒ Object
included
from MDM
Send a passcode_lock_grace_period command to this object.
-
#pending_app_store_apps ⇒ Object
(also: #pending_managed_apps)
included
from ManagementHistory
shortcut for app_store_app_history where status = :pending.
-
#pending_ebooks ⇒ Object
(also: #pending_managed_ebooks)
included
from ManagementHistory
shortcut for ebook_history where status = :pending.
-
#pending_mdm_commands ⇒ Object
(also: #pending_commands)
included
from ManagementHistory
The pending_mdm_commands for this object.
-
#play_lost_mode_sound ⇒ Object
included
from MDM
Send a play_lost_mode_sound command to this object.
-
#policy_logs ⇒ Object
included
from ManagementHistory
The policy_logs for this computer.
-
#purchasing ⇒ Hash<String>
included
from Purchasable
All the purchasing data in a Hash, as it comes from the API.
-
#purchasing_xml ⇒ REXML::Element
included
from Purchasable
private
A <purchasing> element to be included in the rest_xml of objects that mix-in this module.
-
#restart_device ⇒ Object
(also: #restart)
included
from MDM
Send a restart_device command to this object.
-
#screen_sharing_logs ⇒ Object
included
from ManagementHistory
The screen_sharing_logs for this computer.
-
#set_ext_attr(ea_name, value, validate_popup_choice: true, refresh: false) ⇒ void
included
from Extendable
Set the value of an extension attribute.
-
#shut_down_device ⇒ Object
(also: #shutdown_device, #shut_down, #shutdown)
included
from MDM
Send a shut_down_device command to this object.
-
#site=(new_site) ⇒ void
included
from Sitable
Change the site of this object.
-
#site_assigned? ⇒ Boolean
included
from Sitable
Does this object have a site assigned?.
-
#site_id ⇒ Integer
included
from Sitable
The id of the site for this object.
-
#site_name ⇒ String
(also: #site)
included
from Sitable
The name of the site for this object.
-
#site_object ⇒ Jamf::Site
included
from Sitable
The Jamf::Site instance for this object’s site.
- #tv? ⇒ Boolean (also: #apple_tv?)
-
#unlock_user_account(user) ⇒ Object
included
from MDM
Send an unlock_user_account command to this computer or group.
-
#unmanage_device ⇒ Object
(also: #remove_mdm_profile)
included
from MDM
Send an unmanage device command to this object.
-
#unsaved_eas? ⇒ Boolean
included
from Extendable
are there any changes in the EAs needing to be saved?.
-
#unset_site ⇒ void
included
from Sitable
Set the site to nothing.
- #update(no_mdm_rename: false) ⇒ Object
-
#update_inventory ⇒ Object
(also: #recon)
included
from MDM
Send an update_inventory command to this object.
-
#upload(type, local_file, force_ipa_upload: false) ⇒ Boolean
included
from Uploadable
instance method wrapper for class method.
-
#user_location_history ⇒ Object
included
from ManagementHistory
The user_location_history for this object.
-
#validate_ea_value(ea_name, value, validate_popup_choice, refresh) ⇒ Object
included
from Extendable
is the value being passed to set_ext_attr valid? Converts values as needed (e.g. strings to integers or Times).
-
#validate_integer_ea_value(ea_name, value) ⇒ Object
included
from Extendable
raise error if the value isn’t an integer.
-
#validate_popup_value(ea_name, value, refresh) ⇒ Object
included
from Extendable
Raise an error if the named EA has a popup menu, but the provided value isn’t one of the menu items.
-
#wallpaper(wallpaper_setting: nil, wallpaper_content: nil, wallpaper_id: nil) ⇒ Object
(also: #set_wallpaper)
included
from MDM
Send a wallpaper command to this object.
Constructor Details
#initialize(**args) ⇒ MobileDevice
When creating new records with .make, udid:, serial_number:, and asset_tag: can be provided in the args.
434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 434 def initialize(**args) super if @in_jss gen = @init_data[:general] # identifiers @serial_number = gen[:serial_number] @udid = gen[:udid] @asset_tag = gen[:asset_tag] @device_id = gen[:device_id] @device_name = gen[:device_name] @display_name = gen[:display_name] @exchange_activesync_device_identifier = gen[:exchange_activesync_device_identifier] # settings @managed = gen[:managed] @supervised = gen[:supervised] @device_ownership_level = gen[:device_ownership_level] @tethered = gen[:tethered] @shared = gen[:shared] @ble_capable = gen[:ble_capable] @airplay_password = gen[:airplay_password] @languages = gen[:languages] @locales = gen[:locales] # software @os_type = gen[:os_type] @os_build = gen[:os_build] @os_version = gen[:os_version] @modem_firmware = gen[:modem_firmware] # hardware @model = gen[:model] @model_number = gen[:model_number] @model_identifier = gen[:model_identifier] @model_display = gen[:model_display] # usage @capacity_mb = gen[:capacity_mb] @available_mb = gen[:available_mb] @percentage_used = gen[:percentage_used] @battery_level = gen[:battery_level] # network @bluetooth_mac_address = gen[:bluetooth_mac_address] @wifi_mac_address = gen[:wifi_mac_address] @sim_phone_number = gen[:phone_number] @ip_address = gen[:ip_address] # timestamps @initial_entry_date = JSS.epoch_to_time gen[:initial_entry_date_epoch] @last_backup_time = JSS.epoch_to_time gen[:last_backup_time_epoch] @last_cloud_backup_date = JSS.epoch_to_time gen[:last_cloud_backup_date_epoch] @last_inventory_update = JSS.epoch_to_time gen[:last_inventory_update_epoch] @last_enrollment = JSS.epoch_to_time gen[:last_enrollment_epoch] # subsets @mobile_device_groups = @init_data[:mobile_device_groups] @network = @init_data[:network] @extension_attributes = @init_data[:extension_attributes] @certificates = @init_data[:certificates] @configuration_profiles = @init_data[:configuration_profiles] @provisioning_profiles = @init_data[:provisioning_profiles] @security = @init_data[:security] @applications = @init_data[:applications] else @udid = args[:udid] @serial_number = args[:serial_number] @asset_tag = args[:asset_tag] end end |
Instance Attribute Details
#airplay_password ⇒ String (readonly)
Returns the airplay passwd on devices that can receive AirPlay (i.e. apple tvs).
260 261 262 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 260 def airplay_password @airplay_password end |
#applecare_id ⇒ String Originally defined in module Purchasable
#applications ⇒ Array<Hash> (readonly)
Returns the applications on the device.
355 356 357 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 355 def applications @applications end |
#asset_tag ⇒ String
222 223 224 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 222 def asset_tag @asset_tag end |
#available_mb ⇒ Intger (readonly) Also known as: available
Returns how much space available on the device?.
302 303 304 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 302 def available_mb @available_mb end |
#battery_level ⇒ Integer (readonly) Also known as: battery_percent
Returns what percentage of the battery is remaining.
313 314 315 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 313 def battery_level @battery_level end |
#ble_capable ⇒ Boolean (readonly)
Returns is this device ble_capable?.
257 258 259 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 257 def ble_capable @ble_capable end |
#bluetooth_mac_address ⇒ String (readonly)
Returns the bluetooth mac addr.
320 321 322 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 320 def bluetooth_mac_address @bluetooth_mac_address end |
#capacity_mb ⇒ Integer (readonly) Also known as: capacity
Returns total storage on the device.
306 307 308 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 306 def capacity_mb @capacity_mb end |
#certificates ⇒ Array<Hash> (readonly)
The certificates on the device
Each has has two keys:
-
:identity => Boolean
-
:common_name => String, possibly a udid
364 365 366 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 364 def certificates @certificates end |
#configuration_profiles ⇒ Array<Hash> (readonly)
One for each ConfigurationProfile on the device
The Hash keys are:
-
:identifier => a unique id, often the sams as the uuid
-
:display_name => its name in the JSS
-
:uuid => the ConfigurationProfile uuid
-
:version => a String
375 376 377 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 375 def configuration_profiles @configuration_profiles end |
#device_id ⇒ String (readonly)
Returns An Apple TV identifier.
231 232 233 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 231 def device_id @device_id end |
#device_name ⇒ String (readonly)
228 229 230 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 228 def device_name @device_name end |
#device_ownership_level ⇒ String (readonly)
Returns the device_ownership_level.
248 249 250 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 248 def device_ownership_level @device_ownership_level end |
#display_name ⇒ String (readonly)
225 226 227 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 225 def display_name @display_name end |
#exchange_activesync_device_identifier ⇒ String (readonly)
234 235 236 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 234 def exchange_activesync_device_identifier @exchange_activesync_device_identifier end |
#extension_attributes ⇒ Array<Hash> (readonly) Originally defined in module Extendable
Returns The extension attribute values for the object.
#initial_entry_date ⇒ Time (readonly)
Returns uses the value from the API’s initial_entry_date_epoch.
336 337 338 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 336 def initial_entry_date @initial_entry_date end |
#ip_address ⇒ String (readonly)
Returns the IP addr.
326 327 328 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 326 def ip_address @ip_address end |
#is_leased ⇒ Boolean Also known as: leased? Originally defined in module Purchasable
#is_purchased ⇒ Boolean Also known as: purchased? Originally defined in module Purchasable
#languages ⇒ String (readonly)
Returns the languages.
263 264 265 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 263 def languages @languages end |
#last_backup_time ⇒ Time (readonly) Also known as: last_backup_date, last_backup
Returns uses the value from the API’s last_backup_time_epoch.
339 340 341 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 339 def last_backup_time @last_backup_time end |
#last_cloud_backup_date ⇒ Time (readonly)
Returns last_cloud_backup_date.
350 351 352 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 350 def last_cloud_backup_date @last_cloud_backup_date end |
#last_enrollment ⇒ Time (readonly)
Returns the last time this device enrolled in Jamf.
347 348 349 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 347 def last_enrollment @last_enrollment end |
#last_inventory_update ⇒ Time (readonly)
Returns uses the value from the API’s last_inventory_update_utc.
344 345 346 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 344 def last_inventory_update @last_inventory_update end |
#lease_expires ⇒ Time Originally defined in module Purchasable
#life_expectancy ⇒ Integer Originally defined in module Purchasable
#locales ⇒ String (readonly)
Returns the locales.
266 267 268 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 266 def locales @locales end |
#managed ⇒ Boolean (readonly) Also known as: managed?
Returns is this device managed?.
240 241 242 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 240 def managed @managed end |
#mobile_device_groups ⇒ Array<Hash> (readonly)
One for each group to which the device belongs
The Hash keys are:
-
:name => the group name
-
:id => the group id in the JSS
384 385 386 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 384 def mobile_device_groups @mobile_device_groups end |
#model ⇒ String (readonly)
Returns the display name of the model.
287 288 289 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 287 def model @model end |
#model_display ⇒ String (readonly)
Returns the display name of the model.
293 294 295 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 293 def model_display @model_display end |
#model_identifier ⇒ String (readonly)
Returns the model identifier.
296 297 298 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 296 def model_identifier @model_identifier end |
#model_number ⇒ String (readonly)
Returns the display name of the model.
290 291 292 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 290 def model_number @model_number end |
#modem_firmware ⇒ String (readonly)
Returns the model firmware.
272 273 274 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 272 def modem_firmware @modem_firmware end |
#need_to_update ⇒ Boolean (readonly) Originally defined in module Updatable
Returns do we have unsaved changes?.
#network ⇒ Hash (readonly)
A Hash of network data
The Hash keys are:
-
:voice_roaming_enabled=>“Disabled”,
-
:current_mobile_network_code=>“nnn”,
-
:imei=>“nn nnnnnn nnnnnn n”,
-
:home_mobile_country_code=>“nnn”,
-
:iccid=>“nnnn nnnn nnnn nnnn nnnn”,
-
:home_mobile_network_code=>“nnn”,
-
:current_carrier_network=>“”,
-
:data_roaming_enabled=>false,
-
:home_carrier_network=>“AT&T”,
-
:carrier_settings_version=>“16.0”,
-
:roaming=>false,
-
:cellular_technology=>“GSM”,
-
:current_mobile_country_code=>“nnn”
404 405 406 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 404 def network @network end |
#os_build ⇒ String (readonly)
Returns the OS build.
278 279 280 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 278 def os_build @os_build end |
#os_type ⇒ String (readonly)
Returns the OS type.
281 282 283 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 281 def os_type @os_type end |
#os_version ⇒ String (readonly)
Returns the OS version.
275 276 277 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 275 def os_version @os_version end |
#percentage_used ⇒ Integer (readonly)
Returns how much of the capacity is in use?.
310 311 312 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 310 def percentage_used @percentage_used end |
#po_date ⇒ Time Originally defined in module Purchasable
#po_number ⇒ String Originally defined in module Purchasable
#provisioning_profiles ⇒ Array<Hash> (readonly)
One per provisioning profile
410 411 412 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 410 def provisioning_profiles @provisioning_profiles end |
#purchase_price ⇒ Float Originally defined in module Purchasable
#purchasing_account ⇒ String Originally defined in module Purchasable
#purchasing_contact ⇒ String Originally defined in module Purchasable
#security ⇒ Hash (readonly)
A Hash of security data
The Hash has these keys, all of which are Boolean
-
:passcode_present=>true,
-
:passcode_compliant=>true,
-
:passcode_compliant_with_profile=>true,
-
:data_protection=>true,
-
:block_level_encryption_capable=>true,
-
:file_level_encryption_capable=>true
423 424 425 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 423 def security @security end |
#serial_number ⇒ String Also known as: sn, serialnumber
214 215 216 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 214 def serial_number @serial_number end |
#shared ⇒ Boolean (readonly)
Returns is this device shared?.
254 255 256 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 254 def shared @shared end |
#sim_phone_number ⇒ String (readonly) Also known as: device_phone_number
Returns the phone number of the device’s SIM card.
329 330 331 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 329 def sim_phone_number @sim_phone_number end |
#supervised ⇒ Boolean (readonly) Also known as: supervised?
Returns is this device supervised?.
244 245 246 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 244 def supervised @supervised end |
#tethered ⇒ String (readonly)
Returns the tether state of the device.
251 252 253 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 251 def tethered @tethered end |
#udid ⇒ String
219 220 221 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 219 def udid @udid end |
#vendor ⇒ String Originally defined in module Purchasable
#warranty_expires ⇒ Time Originally defined in module Purchasable
#wifi_mac_address ⇒ String (readonly)
Returns the wifi mac addr.
323 324 325 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 323 def wifi_mac_address @wifi_mac_address end |
Class Method Details
.all_apple_tvs(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<Hash>
Returns the list of all iPads.
184 185 186 187 188 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 184 def self.all_apple_tvs(refresh = false, api: nil, cnx: Jamf.cnx) cnx = api if api all(refresh, cnx: cnx).select { |d| d[:model_identifier].start_with? 'AppleTV' } end |
.all_ipads(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<Hash>
Returns the list of all iPads.
177 178 179 180 181 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 177 def self.all_ipads(refresh = false, api: nil, cnx: Jamf.cnx) cnx = api if api all(refresh, cnx: cnx).select { |d| d[:model].start_with? 'iPad' } end |
.all_iphones(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<Hash>
Returns the list of all iPhones.
170 171 172 173 174 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 170 def self.all_iphones(refresh = false, api: nil, cnx: Jamf.cnx) cnx = api if api all(refresh, cnx: cnx).select { |d| d[:model].start_with? 'iPhone' } end |
.all_managed(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<Hash>
Returns the list of all managed mobile devices.
142 143 144 145 146 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 142 def self.all_managed(refresh = false, api: nil, cnx: Jamf.cnx) cnx = api if api all(refresh, cnx: cnx).select { |d| d[:managed] } end |
.all_phone_numbers(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<String>
Returns all mobiledevice phone numbers.
135 136 137 138 139 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 135 def self.all_phone_numbers(refresh = false, api: nil, cnx: Jamf.cnx) cnx = api if api all(refresh, cnx: cnx).map { |i| i[:phone_number] }.reject(&:empty?) end |
.all_supervised(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<Hash>
Returns the list of all supervised mobile devices.
156 157 158 159 160 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 156 def self.all_supervised(refresh = false, api: nil, cnx: Jamf.cnx) cnx = api if api all(refresh, cnx: cnx).select { |d| d[:supervised] } end |
.all_unmanaged(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<Hash>
Returns the list of all unmanaged mobile devices.
149 150 151 152 153 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 149 def self.all_unmanaged(refresh = false, api: nil, cnx: Jamf.cnx) cnx = api if api all(refresh, cnx: cnx).reject { |d| d[:managed] } end |
.all_unsupervised(refresh = false, api: nil, cnx: Jamf.cnx) ⇒ Array<Hash>
Returns the list of all unsupervised mobile devices.
163 164 165 166 167 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 163 def self.all_unsupervised(refresh = false, api: nil, cnx: Jamf.cnx) cnx = api if api all(refresh, cnx: cnx).reject { |d| d[:supervised] } end |
.management_id(ident, cnx: Jamf.cnx) ⇒ String?
Get the MDM Management ID for a device by identifer
197 198 199 200 201 202 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 197 def self.management_id(ident, cnx: Jamf.cnx) jid = valid_id ident raise Jamf::NoSuchItemError, "No MobileDevice with identifier '#{ident}'" unless jid cnx.jp_get("v2/mobile-devices/#{jid}")[:managementId] end |
Instance Method Details
#app_store_app_history(status = nil) ⇒ Object Also known as: managed_app_history Originally defined in module ManagementHistory
Wrapper for app store history for both computers and mobile devices
#audit_history ⇒ Object Also known as: audits Originally defined in module ManagementHistory
The audit_history for this object
#blank_push ⇒ void Also known as: send_blank_push, noop Originally defined in module MDM
This method returns an undefined value.
Send a blank push to this object
#casper_imaging_logs ⇒ Object Originally defined in module ManagementHistory
The casper_imaging_logs for this computer
#casper_remote_logs ⇒ Object Originally defined in module ManagementHistory
The casper_remote_logs for this computer
#clear_location ⇒ void Originally defined in module Locatable
This method returns an undefined value.
Clear all location data
#clear_passcode ⇒ Object Originally defined in module MDM
Send an clear_passcode command to this object
#clear_restrictions_password ⇒ Object Originally defined in module MDM
Send an clear_restrictions_password command to this object
#clone(new_name, api: nil, cnx: nil) ⇒ APIObject Originally defined in module Creatable
make a clone of this API object, with a new name. The class must be creatable
#completed_mdm_commands ⇒ Object Also known as: completed_commands Originally defined in module ManagementHistory
The completed_mdm_commands for this object
#completed_policies ⇒ Object Originally defined in module ManagementHistory
The array from .policy_logs, limited to status = :completed
#computer_usage_logs ⇒ Object Also known as: usage_logs Originally defined in module ManagementHistory
The computer_usage_logs for this computer
#delete_user(user) ⇒ Object Originally defined in module MDM
Send a delete_user command to this computer or group
#device_lock(passcode_or_message = '') ⇒ Object Also known as: lock, lock_device Originally defined in module MDM
Send a dev lock to this object
#disable_app_analytics ⇒ Object Originally defined in module MDM
Send a disable_app_analytics command to this object
#disable_data_roaming ⇒ Object Originally defined in module MDM
Send a disable_data_roaming command to this object
#disable_diagnostic_submission ⇒ Object Originally defined in module MDM
Send a disable_diagnostic_submission command to this object
#disable_lost_mode ⇒ Object Originally defined in module MDM
Send a disable_lost_mode command to this object
#disable_remote_desktop ⇒ Object Originally defined in module MDM
Send a disable_remote_desktop command to this computer or group
#disable_voice_roaming ⇒ Object Originally defined in module MDM
Send a disable_voice_roaming command to this object
#ea_names ⇒ Array<String> Originally defined in module Extendable
Returns the names of all known EAs.
#ea_types ⇒ Hash{String => String} Originally defined in module Extendable
Returns EA names => data type (one of ‘String’, ‘Number’, or ‘Date’).
#ebook_history(status = nil) ⇒ Object Also known as: managed_ebook_history Originally defined in module ManagementHistory
The ebook_history for this mobile device
#enable_app_analytics ⇒ Object Originally defined in module MDM
Send an enable_app_analytics command to this object
#enable_data_roaming ⇒ Object Originally defined in module MDM
Send an enable_data_roaming command to this object
#enable_diagnostic_submission ⇒ Object Originally defined in module MDM
Send an enable_diagnostic_submission command to this object
#enable_lost_mode(message: nil, phone: nil, footnote: nil, enforce_lost_mode: false, play_sound: false) ⇒ Object Originally defined in module MDM
Send a enable_lost_mode command to one or more targets
Either or both of message and phone number must be provided
#enable_remote_desktop ⇒ Object Originally defined in module MDM
Send an enable_remote_desktop command to this computer or group
#enable_voice_roaming ⇒ Object Originally defined in module MDM
Send an enable_voice_roaming command to this object
#erase_device(passcode = '', preserve_data_plan: false) ⇒ Object Also known as: wipe_device, wipe_computer, wipe, erase Originally defined in module MDM
Send an erase device command to this object
#ext_attr_xml ⇒ REXML::Element Originally defined in module Extendable
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
TODO: make this (and all XML amending) method take the in-progress XML doc and add (or not) the EA xml to it. See how Sitable#add_site_to_xml works, as called from Computer.rest_xml
#ext_attrs ⇒ Object Originally defined in module Extendable
An easier-to-use hash of EA name to EA value. This isn’t created until its needed, to speed up instantiation.
#failed_app_store_apps ⇒ Object Also known as: failed_managed_apps Originally defined in module ManagementHistory
shortcut for app_store_app_history where status = :failed
#failed_ebooks ⇒ Object Also known as: failed_managed_ebooks Originally defined in module ManagementHistory
shortcut for ebook_history where status = :failed
#failed_mdm_commands ⇒ Object Also known as: failed_commands Originally defined in module ManagementHistory
The failed_mdm_commands for this object
#failed_policies ⇒ Object Originally defined in module ManagementHistory
The array from .policy_logs, limited to status = :failed
#flush_mdm_commands(status) ⇒ void Originally defined in module MDM
This method returns an undefined value.
flush pending and/or failed MDM commands for this object
#has_location? ⇒ Boolean Originally defined in module Locatable
Returns Does this item have location data?.
#has_purchasing? ⇒ Boolean Originally defined in module Purchasable
Returns does this item have any purchasing info?.
#installed_app_store_apps ⇒ Object Also known as: installed_managed_apps Originally defined in module ManagementHistory
shortcut for app_store_app_history where status = :installed
#installed_ebooks ⇒ Object Also known as: installed_managed_ebooks Originally defined in module ManagementHistory
shortcut for ebook_history where status = :installed
#ipad? ⇒ Boolean
519 520 521 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 519 def ipad? model_identifier.start_with? HW_PREFIX_IPAD end |
#iphone? ⇒ Boolean
523 524 525 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 523 def iphone? model_identifier.start_with? HW_PREFIX_IPHONE end |
#last_mdm_contact ⇒ Object Originally defined in module ManagementHistory
The time of the last completed mdm command for this object
#location ⇒ Hash<String> Originally defined in module Locatable
All the location data in a Hash, as it comes from the API.
The reason it isn’t stored this way is to prevent editing of the hash directly.
#location_xml ⇒ REXML::Element Originally defined in module Locatable
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Return a REXML <location> element to be included in the rest_xml of objects that have a Location subset
#mac_app_store_app_history(status = nil) ⇒ Object Originally defined in module ManagementHistory
The mac_app_store_app_history for this computer
#management_history(subset = nil) ⇒ Object Also known as: history Originally defined in module ManagementHistory
The raw management history data for this object
#management_id ⇒ String?
The management id for this device
510 511 512 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 510 def management_id @management_id ||= self.class.management_id @id, cnx: @cnx end |
#mdm_command_history(status = nil) ⇒ Object Also known as: commands, management_command_history Originally defined in module ManagementHistory
The mdm_command_history for this object
#mobile_device_app_history(status = nil) ⇒ Object Originally defined in module ManagementHistory
The mobile_device_app_history for this mobile device
#name=(new_name) ⇒ Object
527 528 529 530 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 527 def name=(new_name) super @needs_mdm_name_change = true if managed? && supervised? end |
#parse_ext_attrs ⇒ void Originally defined in module Extendable
This method returns an undefined value.
Populate @extension_attributes (the Array of Hashes that comes from the API) and @ext_attr_names, which is a Hash mapping the EA names to their values. This is called during initialization for all objects that mix in this module
#parse_location ⇒ void Originally defined in module Locatable
This method returns an undefined value.
Call this during initialization of objects that have a Location subset and the location attributes will be populated (as primary attributes) from @init_data
#parse_purchasing ⇒ Object Originally defined in module Purchasable
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Call this during initialization of objects that have a Purchasing subset and the purchasing attribute will be populated from @init_data
#passcode_lock_grace_period(secs) ⇒ Object Originally defined in module MDM
Send a passcode_lock_grace_period command to this object
#pending_app_store_apps ⇒ Object Also known as: pending_managed_apps Originally defined in module ManagementHistory
shortcut for app_store_app_history where status = :pending
#pending_ebooks ⇒ Object Also known as: pending_managed_ebooks Originally defined in module ManagementHistory
shortcut for ebook_history where status = :pending
#pending_mdm_commands ⇒ Object Also known as: pending_commands Originally defined in module ManagementHistory
The pending_mdm_commands for this object
#play_lost_mode_sound ⇒ Object Originally defined in module MDM
Send a play_lost_mode_sound command to this object
#policy_logs ⇒ Object Originally defined in module ManagementHistory
The policy_logs for this computer
#purchasing ⇒ Hash<String> Originally defined in module Purchasable
All the purchasing data in a Hash, as it comes from the API.
The reason it isn’t stored this way is to prevent editing of the hash directly.
#purchasing_xml ⇒ REXML::Element Originally defined in module Purchasable
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns A <purchasing> element to be included in the rest_xml of objects that mix-in this module.
#restart_device ⇒ Object Also known as: restart Originally defined in module MDM
Send a restart_device command to this object
#screen_sharing_logs ⇒ Object Originally defined in module ManagementHistory
The screen_sharing_logs for this computer
#set_ext_attr(ea_name, value, validate_popup_choice: true, refresh: false) ⇒ void Originally defined in module Extendable
This method returns an undefined value.
Set the value of an extension attribute
The new value is validated based on the data type of the Ext. Attrib:
-
If the ext. attrib. is defined with a data type of Integer/Number, the value must be an Integer.
-
If defined with a data type of Date, the value will be parsed as a timestamp, and parsing may raise an exception. Dates can’t be blank.
-
If defined wth data type of String, ‘to_s` will be called on the value.
By default, the full EA definition object is fetched to see if the EA’s input type is ‘popup menu’, and if so, the new value must be one of the defined popup choices, or blank.
The EA definitions used for popup validation are cached, so we don’t have to reach out to the server every time. If you expect the definition to have changed since it was cached, provide a truthy value to the refresh: parameter
To bypass popup validation complepletely, provide a falsey value to the validate_popup_choice: parameter. WARNING: beware that your value is the correct type and format, or you might get errors when saving back to the API.
Note that while the Jamf Pro Web interface does not allow editing the values of Extension Attributes populated by Scripts or LDAP, the API does allow it. Bear in mind however that those values will be reset again at the next recon.
#shut_down_device ⇒ Object Also known as: shutdown_device, shut_down, shutdown Originally defined in module MDM
Send a shut_down_device command to this object
#site=(new_site) ⇒ void Originally defined in module Sitable
This method returns an undefined value.
Change the site of this object. Any of the NON_SITES values will unset the site
#site_assigned? ⇒ Boolean Originally defined in module Sitable
Does this object have a site assigned?
#site_id ⇒ Integer Originally defined in module Sitable
The id of the site for this object.
#site_name ⇒ String Also known as: site Originally defined in module Sitable
The name of the site for this object. For backward compatibility, this is aliased to just ‘site’
#site_object ⇒ Jamf::Site Originally defined in module Sitable
The Jamf::Site instance for this object’s site
#tv? ⇒ Boolean Also known as: apple_tv?
514 515 516 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 514 def tv? model_identifier.start_with? HW_PREFIX_TV end |
#unlock_user_account(user) ⇒ Object Originally defined in module MDM
Send an unlock_user_account command to this computer or group
#unmanage_device ⇒ Object Also known as: remove_mdm_profile Originally defined in module MDM
Send an unmanage device command to this object
NOTE: when used with computers, the mdm profile will probably be re-installed immediately unless the computer is also no longer managed by Jamf Pro itself. To fully unmanage a computer, use the Computer#make_unmanaged instance method.
#unsaved_eas? ⇒ Boolean Originally defined in module Extendable
are there any changes in the EAs needing to be saved?
#unset_site ⇒ void Originally defined in module Sitable
This method returns an undefined value.
Set the site to nothing
#update(no_mdm_rename: false) ⇒ Object
556 557 558 559 560 561 562 563 |
# File 'lib/jamf/api/classic/api_objects/mobile_device.rb', line 556 def update(no_mdm_rename: false) super() return @id if no_mdm_rename || !@needs_mdm_name_change set_device_name @name if managed? && supervised? @needs_mdm_name_change = false @id end |
#update_inventory ⇒ Object Also known as: recon Originally defined in module MDM
Send an update_inventory command to this object
#upload(type, local_file, force_ipa_upload: false) ⇒ Boolean Originally defined in module Uploadable
instance method wrapper for class method
Upload a file to the JSS to be stored with this instance of the class mixing in the Uploadable module
#user_location_history ⇒ Object Originally defined in module ManagementHistory
The user_location_history for this object
#validate_ea_value(ea_name, value, validate_popup_choice, refresh) ⇒ Object Originally defined in module Extendable
is the value being passed to set_ext_attr valid? Converts values as needed (e.g. strings to integers or Times)
If the EA is defined to hold a string, any value is accepted and converted with #to_s
Note: All EAs can be blank
#validate_integer_ea_value(ea_name, value) ⇒ Object Originally defined in module Extendable
raise error if the value isn’t an integer
#validate_popup_value(ea_name, value, refresh) ⇒ Object Originally defined in module Extendable
Raise an error if the named EA has a popup menu, but the provided value isn’t one of the menu items