Skip to content

Feature Request: Support custom / iTop-specific CI classes #5

Description

@LexioJ

Support custom / iTop-specific CI classes in CI search and rich previews

Problem

The iTop integration currently supports a fixed list of 11 CI classes:
PC, Phone, IPPhone, MobilePhone, Tablet, Printer, Peripheral,
PCSoftware, OtherSoftware, WebApplication, Software.

Every iTop deployment is different. Organizations routinely extend the CMDB
with custom subclasses of FunctionalCI — things like Monitor, Scanner,
NetworkDevice, VirtualMachine, StorageSystem, or domain-specific classes
created by iTop modules or in-house development.

With the current integration, CIs of those classes are completely invisible:

  • They do not appear in smart-picker / reference search
  • Pasting an iTop URL for one of them produces no rich preview in Talk or Deck
  • There is no way for an administrator to enable them without modifying source code

Solution

Add an admin-configurable custom CI classes mechanism with the same
3-state control already used for built-in classes (Disable / Force Enable /
User Choice).

Admin workflow:

  1. Open Admin Settings → iTop Integration → Custom CI Classes
  2. Click "Browse iTop classes" — the integration queries the live iTop
    instance and returns any FunctionalCI subclasses not already covered by
    the built-in list
  3. Tick the desired classes and save
  4. The added classes immediately appear with a 3-state toggle and can be
    removed at any time

Under the hood:

  • Custom classes are stored in custom_ci_classes (JSON) and merged with the
    standard list everywhere: effective class resolution, search, and reference
    resolution
  • Search uses a safe name LIKE '%term%' OQL fallback so it works across any
    FunctionalCI subclass regardless of which fields it exposes
  • Rich previews fall back to the generic FunctionalCI icon when no
    class-specific icon exists

Examples

Scenario Before After
Organisation has Monitor as a custom class Not searchable; no preview Admin enables it; users can search and get rich previews
MSP uses iTop module that adds ManagedDevice Completely hidden Admin adds it via the browser; appears in picker search
User pastes an iTop URL for a NetworkDevice CI into a Talk message No card rendered Rich link card appears (generic FunctionalCI icon)

Notes

  • Validation prevents adding class names that conflict with built-in classes
    or contain unsafe characters
  • Removing a custom class also cleans up any stale per-class state config
  • No changes are needed by end-users; this is purely an admin-level extension
    of the existing configuration system

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions