ruby-jss 0.10.1 → 0.10.2a4
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of ruby-jss might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/lib/jss/api_connection.rb +38 -19
- data/lib/jss/api_object/advanced_search.rb +5 -1
- data/lib/jss/api_object/computer.rb +315 -291
- data/lib/jss/api_object/computer_invitation.rb +5 -3
- data/lib/jss/api_object/ebook.rb +5 -0
- data/lib/jss/api_object/group/computer_group.rb +4 -0
- data/lib/jss/api_object/group/mobile_device_group.rb +4 -1
- data/lib/jss/api_object/group.rb +6 -1
- data/lib/jss/api_object/mac_application.rb +5 -0
- data/lib/jss/api_object/mdm.rb +1268 -0
- data/lib/jss/api_object/mobile_device.rb +56 -335
- data/lib/jss/api_object/mobile_device_application.rb +6 -0
- data/lib/jss/api_object/mobile_device_configuration_profile.rb +36 -0
- data/lib/jss/api_object/osx_configuration_profile.rb +115 -151
- data/lib/jss/api_object/patch.rb +38 -0
- data/lib/jss/api_object/patch_policy.rb +38 -0
- data/lib/jss/api_object/peripheral.rb +5 -7
- data/lib/jss/api_object/policy.rb +5 -0
- data/lib/jss/api_object/restricted_software.rb +5 -0
- data/lib/jss/api_object/scopable/scope.rb +367 -411
- data/lib/jss/api_object/self_servable.rb +15 -4
- data/lib/jss/api_object/sitable.rb +197 -0
- data/lib/jss/api_object/site.rb +45 -76
- data/lib/jss/api_object/user.rb +6 -2
- data/lib/jss/api_object.rb +74 -4
- data/lib/jss/utility.rb +21 -0
- data/lib/jss/version.rb +1 -1
- data/lib/jss.rb +4 -0
- metadata +8 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f25ffb3a1553a71ea08f5bf89c6309c5d063f8f0
|
4
|
+
data.tar.gz: 946e930c5a5bafa01cda0e5e49239dd5ebd859e3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 053fe33b81de846bfa1336bf9dd3dcf95eb03d5c92045374187e28eae6d453e5f781a89dfd75c927b699d60685c78e6959d922b9730893fc46dc7b4b759075d0
|
7
|
+
data.tar.gz: fe286d6719bc538bf119c0d6c291d5733d4146e86f91c4f9b7b205f5d774d49a656fa24e2e2359b49c2e96252075f16dc4b94b6a42b55e7bd3416346e8adbf71
|
data/lib/jss/api_connection.rb
CHANGED
@@ -237,11 +237,13 @@ module JSS
|
|
237
237
|
# prod2_victim_md = production_api2.fetch :MobileDevice, id: 832
|
238
238
|
#
|
239
239
|
# Here are the API calls you can make directly from an APIConnection object.
|
240
|
-
#
|
240
|
+
# They behave practically identically to the same methods in the APIObject
|
241
|
+
# subclasses, since they just call those methods, passing themselves in as the
|
242
|
+
# APIConnection to use.
|
241
243
|
#
|
242
244
|
# - {#all} The 'list' methods of the various APIObject classes. Use the 'only:'
|
243
245
|
# parameter to specify one of the sub-list-methods, like #all_ids or
|
244
|
-
# #all_laptops
|
246
|
+
# #all_laptops, e.g. `my_connection.all :computers, only: :id`
|
245
247
|
# - {#map_all_ids} the equivalent of #map_all_ids_to in the APIObject classes
|
246
248
|
# - {#valid_id} given a class and an identifier (like macaddress or udid)
|
247
249
|
# return a valid id or nil
|
@@ -254,6 +256,9 @@ module JSS
|
|
254
256
|
# - {#send_computer_mdm_command} same as {Computer.send_mdm_command}
|
255
257
|
# - {#computer_checkin_settings} same as {Computer.checkin_settings}
|
256
258
|
# - {#computer_inventory_collection_settings} same as {Computer.inventory_collection_settings}
|
259
|
+
# - {#computer_application_usage} same as {Computer.application_usage}
|
260
|
+
# - {#computer_management_data} same as {Computer.management_data}
|
261
|
+
# - {#computer_history} same as {Computer.history}
|
257
262
|
# - {#send_mobiledevice_mdm_command} same as {MobileDevice.send_mdm_command}
|
258
263
|
# - {#master_distribution_point} same as {DistributionPoint.master_distribution_point}
|
259
264
|
# - {#my_distribution_point} same as {DistributionPoint.my_distribution_point}
|
@@ -739,25 +744,48 @@ module JSS
|
|
739
744
|
the_class.make args
|
740
745
|
end
|
741
746
|
|
742
|
-
# Call {JSS::Computer.checkin_settings} passing this API
|
747
|
+
# Call {JSS::Computer.checkin_settings} q.v., passing this API
|
743
748
|
# connection
|
744
749
|
#
|
745
|
-
# @return (see JSS::Computer.checkin_settings)
|
746
|
-
#
|
747
750
|
def computer_checkin_settings
|
748
751
|
JSS::Computer.checkin_settings api: self
|
749
752
|
end
|
750
753
|
|
751
|
-
|
752
|
-
# Call {JSS::Computer.inventory_collection_settings} passing this API
|
754
|
+
# Call {JSS::Computer.inventory_collection_settings} q.v., passing this API
|
753
755
|
# connection
|
754
756
|
#
|
755
|
-
# @return (see JSS::Computer.checkin_settings)
|
756
|
-
#
|
757
757
|
def computer_inventory_collection_settings
|
758
758
|
JSS::Computer.inventory_collection_settings api: self
|
759
759
|
end
|
760
760
|
|
761
|
+
# Call {JSS::Computer.application_usage} q.v., passing this API
|
762
|
+
# connection
|
763
|
+
#
|
764
|
+
def computer_application_usage(ident, start_date, end_date = nil)
|
765
|
+
JSS::Computer.application_usage ident, start_date, end_date, api: self
|
766
|
+
end
|
767
|
+
|
768
|
+
# Call {JSS::Computer.management_data} q.v., passing this API
|
769
|
+
# connection
|
770
|
+
#
|
771
|
+
def computer_management_data(ident, subset: nil, only: nil)
|
772
|
+
JSS::Computer.management_data ident, subset: subset, only: only, api: self
|
773
|
+
end
|
774
|
+
|
775
|
+
# Call {JSS::Computer.history} q.v., passing this API
|
776
|
+
# connection
|
777
|
+
#
|
778
|
+
def computer_history(ident, subset: nil)
|
779
|
+
JSS::Computer.history ident, subset: subset, api: self
|
780
|
+
end
|
781
|
+
|
782
|
+
# Call {JSS::Computer.send_mdm_command} q.v., passing this API
|
783
|
+
# connection
|
784
|
+
#
|
785
|
+
def send_computer_mdm_command(targets, command, passcode = nil)
|
786
|
+
JSS::Computer.send_mdm_command targets, command, passcode, api: self
|
787
|
+
end
|
788
|
+
|
761
789
|
# Get the DistributionPoint instance for the master
|
762
790
|
# distribution point in the JSS. If there's only one
|
763
791
|
# in the JSS, return it even if not marked as master.
|
@@ -834,7 +862,7 @@ module JSS
|
|
834
862
|
#
|
835
863
|
# @return [Array<Integer>] the ids of the NetworkSegments containing the given ip
|
836
864
|
#
|
837
|
-
def network_segments_for_ip(ip
|
865
|
+
def network_segments_for_ip(ip)
|
838
866
|
ok_ip = IPAddr.new(ip)
|
839
867
|
matches = []
|
840
868
|
network_ranges.each { |id, subnet| matches << id if subnet.include?(ok_ip) }
|
@@ -849,15 +877,6 @@ module JSS
|
|
849
877
|
network_segments_for_ip JSS::Client.my_ip_address
|
850
878
|
end
|
851
879
|
|
852
|
-
# Send an MDM command to one or more computers managed by
|
853
|
-
# this JSS
|
854
|
-
#
|
855
|
-
# see {JSS::Computer.send_mdm_command}
|
856
|
-
#
|
857
|
-
def send_computer_mdm_command(targets, command, passcode = nil)
|
858
|
-
JSS::Computer.send_mdm_command(targets, command, passcode, api: self)
|
859
|
-
end
|
860
|
-
|
861
880
|
# Send an MDM command to one or more mobile devices managed by
|
862
881
|
# this JSS
|
863
882
|
#
|
@@ -60,12 +60,16 @@ module JSS
|
|
60
60
|
include JSS::Creatable
|
61
61
|
include JSS::Updatable
|
62
62
|
include JSS::Criteriable
|
63
|
+
include JSS::Sitable
|
63
64
|
|
64
65
|
# Class Constants
|
65
66
|
#####################################
|
66
67
|
|
67
68
|
EXPORT_FORMATS = [:csv, :tab, :xml].freeze
|
68
69
|
|
70
|
+
# Where is site data located in the API JSON?
|
71
|
+
SITE_SUBSET = :top
|
72
|
+
|
69
73
|
# Attributes
|
70
74
|
#####################################
|
71
75
|
|
@@ -342,7 +346,7 @@ module JSS
|
|
342
346
|
|
343
347
|
df = acs.add_element('display_fields')
|
344
348
|
@display_fields.each { |f| df.add_element('display_field').add_element('name').text = f }
|
345
|
-
|
349
|
+
add_site_to_xml(doc)
|
346
350
|
doc.to_s
|
347
351
|
end # rest xml
|
348
352
|
|