---
sourceDocument: Xanadu Operational Technology Management
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/xanadu/operational-technology

 Release :

    - xanadu

ft:locale :

    - en-US

ft:publication_title :

    - Xanadu Operational Technology Management

ft:clusterId :

    - optm

bundleId :

    - optm

workflow :

    - Technology


---

# Add a custom implementation for device classification

# Add a custom implementation for device classification {#ariaid-title1}

* Release version: Xanadu
* 
* Updated August 1, 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 1 minute to read

Customize the base system classification of an device based on the type, os_version, and firmware_version.

## Before you begin

The base system for the sn_otsm_sgc.SGOTAssetImportExtensionPoint extension point uses the default implementation script that is shipped with the name of sn_otsm_sgc.SGOTAssetImportUtil. To add a customized classification, create an implementation for the extension point in the Service Graph Connector for Operational Technology (Excel) scope.  
Note:  
User must have only one implementation of the extension point. If you implement and activate a custom extension point rather than the default one, you must deactivate the default implementation.

Role required: cmdb_inst_admin, import_admin, import_scheduler, admin

## Procedure

1. Navigate to AllSystem Extension PointScripted Extension points.
2. Select sn_otsm_sgc.SGOTAssetImportExtensionPoint.
3. Select the Create Implementation related link.
4. Enter a name for the extension point implementation.
5. In the script field, check that the class object with the following two functions is populated.  
   Make sure that the result returned from the getAssetCMDBSysClassNameWithOtEntityTypeSysId extension point follows the format mentioned in the comments. Any change in the result string format results in import failure or irregularities. The format should be \<cmdb class name\>:::\<ot entity type sys id\>.

   | Option | Description |
   | getAssetCMDBSysClassNameWithOtEntityTypeSysId(/\*string\*/ type, /\*string\*/ osVersion, /\*string\*/ firmwareVersion) | Implement this method to return the CMDB sys class name that the device belongs to, along with the OT Entity type sys_id concatenated with ":::". For unclassified devices, the OT device type is set to ot_base. |
   | getComputerType((/\*string\*/ operatingSystem) | Returns the CMDB sys class name based on the operating system passed. |
   |-|-|

   {#adding-custom-implementation-for-asset-classification__choicetable_thp_13x_drb}
6. After you make all the desired changes, select Update.  
   The implementation for the extension point is created.

## What to do next

From the related lists Implementations tab, open the base system extension point
implementation to inactivate it.

*[\>]: and then


