After you build and register the remote plug-in sample, you can view it in the vSphere Client.
To view the remote plug-in sample, you must run the plug-in server and register it with the vCenter Server instance to which you connect your browser and run the vSphere Client.
To view the plug-in user interface, open a browser window and connect to the vCenter Server instance where you registered the plug-in. Use the fully qualified domain name of the vCenter Server to match the server certificate. From the welcome screen you can launch the vSphere Client.
![This screenshot shows the welcome screen when you connect a browser to the vSphere Client.](images/GUID-395DA9B2-B1A7-4828-ADAB-9B66926276A1-low.png)
After you select LAUNCH VSPHERE CLIENT and authenticate with vCenter Server, the vSphere Client displays the home page with an SDK Remote Plugin link in the object navigator pane on the left. The link leads to the remote plug-in global view.
The plug-in global view includes the following subviews:
A welcome page is the default page for the global view.
A settings page allows you to change the number of items displayed in the Chassis List page.
A Chassis List page displays summary information about the Chassis objects currently in the store. The Chassis store is initialized with several random Chassis objects for display. On the Chassis List page you can do the following actions:
Edit the Chassis object properties in a modal dialog.
Display related Host objects.
Display the Monitor subview or the Configure subview.
The code that supports these actions demonstrates how to use a modal dialog, how to create, delete, and update Chassis objects, and how to make calls to the plug-in server and the vCenter Server. The following illustrations show some of the features of the global view.
![This screenshot shows the location of the plug-in global view in the navigation pane.](images/GUID-1FB5F3B7-5D28-4D4F-9846-FC2D455882B7-low.png)
The Global View extension point is specified by the following lines from the manifest file, plugin.json
:
"global": { "view": { "navigationId": "entrypoint", "uri": "index.html#/entry-point", "navigationVisible": false } }
The Global View content is specified in the file entry.point.component.html
.
![This screenshot shows the welcome page global view of the sample plug-in.](images/GUID-89E15402-7ACD-4551-99BB-4A00655638C0-low.png)
![This screenshot shows a list of chassis objects in a plug-in global view.](images/GUID-9813979C-17C4-495B-865B-D63692D0D46E-low.png)
![This screenshot shows a dialog box to edit chassis objects.](images/GUID-6359F78C-6899-4A14-9EB4-9CE33611B2B2-low.png)
![This screenshot shows a list of chassis objects and a related host object.](images/GUID-3412F060-20E8-4820-947D-DC403E08FC75-low.png)
In addition to the global view and its subviews, the remote plug-in sample provides views that show how to extend the vSphere VirtualMachine object. It also shows the use of a card within the Summary view.
![This screenshot shows an extension to the Virtual Machine Summary view.](images/GUID-9D22E372-E84B-431E-9EE2-C2A1D0812837-low.png)
The VirtualMachine Summary View extension point is specified by the following lines from the manifest file, plugin.json
:
"objects": { "VirtualMachine": { "summary": { "view": { "uri": "index.html#/vm-card", } }, ... } }
![This screenshot shows a virtual machine Monitor view.](images/GUID-4745AB34-C3E6-4D58-9CBC-5C315F13CF8D-low.png)
The VirtualMachine Monitor View extension point is specified by the following lines from the manifest file, plugin.json
:
"objects": { "VirtualMachine": { ... "monitor": { "views": { "navigationId": "vmMonitor", "labelKey": "vm.monitor.view.title", "uri": "index.html#/vm-monitor", } } } }
![This screenshot shows a virtual machine Configure view.](images/GUID-AF8E4E4F-C7F7-4614-83A6-E8D19569C59E-low.png)
The VirtualMachine Configure View extension point is specified by the following lines from the manifest file, plugin.json
:
"objects": { "VirtualMachine": { "configure": { "dynamicUri": "dynamicItems/vm/configure", "views": { "navigationId": "vmConfigureView", "labelKey": "vm.configure.view.title", "uri": "index.html#vm-congfigure", "dynamic": true } } } }
The Configure View is dynamic, which means that its appearance is conditional. For more information about dynamic views, see Dynamic Extensions for Remote Plug-ins.
The remote plug-in sample shows how to add an action item to a context menu for a VirtualMachine object. You can see how this appears in the following illustration.
![This screenshot shows a context menu with an action added by the plug-in.](images/GUID-7AFAB022-DBF9-4978-B93B-D929F5105CE8-low.png)
The VirtualMachine context menu extension point is specified by the following lines from the manifest file, plugin.json
:
"objects": { "VirtualMachine": { "menu": { "dynamicUri": "dynamicItems/vm/actions", "actions": { "labelKey": "RemoteSample:vm.action.label", "icon": { "name": "action-vm" }, "trigger": { "type"; "modal", "uri": "index.html#/vm-action-modal", "titleKey": "vm.action.model.title", "size": { "width": 600, "height": 205 } }, "acceptMultipleTargets": true, "dynamic": true } } } }
The remote plug-in sample displays a HostSystem Summary view and a HostSystem Monitor view also. The Summary view shows the number of related Chassis objects. You click the number to reach the Monitor view. The Monitor view displays a datagrid listing all available Chassis objects. To create a relation between a HostSystem and a Chassis object, select the check box beside the Chassis object and click Update.
![This screenshot shows an extension to a host object Summary view.](images/GUID-A42FB804-129D-493C-910B-60608B866FA6-low.png)
The HostSystem Summary View extension point is specified by the following lines from the manifest file, plugin.json
:
"objects": { "HostSystem": { "summary": { "view": { "uri": "index.html#/host-card" } } } }
![This screenshot shows an extension to a host object Monitor view.](images/GUID-24FE81D7-C59F-4732-9B29-11064440362F-low.png)
The HostSystem Monitor View extension point is specified by the following lines from the manifest file, plugin.json
:
"objects": { "HostSystem": { "monitor": { "views": [ { "navigationId": "hostMonitor", "labelKey": "host.monitor.view.title", "uri": "index.html#/host-monitor" } ] } } }