项目作者: Protirus

项目描述 :
SMP WebService Diff Tool
高级语言: HTML
项目地址: git://github.com/Protirus/SMPWebServiceDiff.git
创建时间: 2018-11-03T14:13:34Z
项目社区:https://github.com/Protirus/SMPWebServiceDiff

开源协议:MIT License

下载


SMP WebService Diff

Language: PowerShell
Language: HTML
Language: CSS
Language: JS
|



|
GitHub contributors
|
GitHub issues
GitHub issues-closed
GitHub pull-requests

SMP SMP WebService Diff Tool has been created to show a quick and easy difference between versions of the SMP. When a new version is released follow the setup and create a new json file, add it to the app and now you can see new WS methods.


Example Site: https://protirus.github.io/SMPWebServiceDiff/


Setup

Create a Folder with the version number of the SMP you are retrieving the WSDLs from.

Save the WSDLs as XML.

For example

  • http://localhost/Altiris/ASDK.Task/TaskManagementService.asmx?WSDL

Currently each version hosted has the following.

  • CollectionManagementService.xml
  • ItemManagementService.xml
  • ItemModel.xml
  • PatchWorkflowSvc.xml
  • ResourceManagementService.xml
  • ResourceModel.xml
  • ScopingManagementService.xml
  • TaskManagementService.xml
  • TaskServerModel.xml

You could add any others you need.

Example

  1. 7.1.8280
  2. CollectionManagementService.xml
  3. ItemManagementService.xml
  4. ParseSMPWSs.ps1

Run the powershell script ParseSMPWSs.ps1 and the number of folders you have created will be output.

i.e. if you have a folder called 7.1.8280 there will be a file in the same directory called 7.1.8280.json.

Example

  1. 7.1.8280
  2. 7.1.8280.json
  3. ParseSMPWSs.ps1

The structure of the JSON can be seen with the example.json file, or any of the others in the data folder.

These then need adding to the data folder of this web app and the app.js file needs updateing.

This is because I’ve built a static site that can be hosted here on github

Add the file name to the array: app.js

  1. $scope.files = ['7.1.8280', '8.0.2298', '8.1.5811.0', '8.5.3025.0'];

Extras

One option is to check the SMP server for *.asmx files.

  1. $path = '[Install Drive]:\Program Files\Altiris'
  2. Get-ChildItem -Path $path -Filter *.asmx -Recurse -File -Name| ForEach-Object {
  3. $_
  4. }

But you’d want the script to get this path automatically and not manually change the $path depending on which SMP Server you are on.

You could get this using a Reg Key.

Example

  1. $key = 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion'
  2. (Get-ItemProperty -Path $key -Name ProgramFilesDir).ProgramFilesDir

You need to grab:

  1. HKEY_LOCAL_MACHINE\SOFTWARE\Altiris\AIM
  2. ProductVersion (REG_SZ)