Skip to content

RDKEMW-7075: COM-RPC support to SystemService plugin#738

Draft
dkumar798 wants to merge 6 commits intodevelopfrom
feature/RDKEMW-7075
Draft

RDKEMW-7075: COM-RPC support to SystemService plugin#738
dkumar798 wants to merge 6 commits intodevelopfrom
feature/RDKEMW-7075

Conversation

@dkumar798
Copy link
Contributor

Reason for change: COM-RPC support to SystemServices plugin
Test Procedure: Test SystemServices - All APIs
Risks: Medium
Priority: P1
version: Patch
Signed-off-by:Dineshkumar P [dinesh_kumar2@comcast.com]

Reason for change: COM-RPC support to SystemServices plugin
Test Procedure: Test SystemServices - All APIs
Risks: Medium
Priority: P1
version: Patch
Signed-off-by:Dineshkumar P [dinesh_kumar2@comcast.com]
@dkumar798 dkumar798 requested a review from a team as a code owner February 18, 2026 11:03
Copilot AI review requested due to automatic review settings February 18, 2026 11:03
@github-actions
Copy link

Documentation Auto-Generated

Documentation has been automatically generated for the changed plugins and committed to this PR branch.

The generated documentation files have been added to the PR for review.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request adds COM-RPC support to the SystemServices plugin by introducing a new interface definition, updating the API documentation, and registering new interface IDs.

Changes:

  • Added comprehensive COM-RPC interface definition for SystemServices
  • Registered new interface IDs for SystemServices and related components
  • Added SystemServices documentation link to sidebar

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 14 comments.

File Description
docs/apis/SystemServices.md Complete auto-generated API documentation for SystemServices plugin methods and events
docs/_sidebar.md Added navigation link for SystemServices documentation
apis/SystemServices/ISystemServices.h COM-RPC interface definition with all SystemServices methods and notification structures
apis/Ids.h Registered new interface IDs for SystemServices components
Comments suppressed due to low confidence (1)

docs/apis/SystemServices.md:1

  • Inconsistent capitalization: 'Wake up' should be 'wakeup' to match other descriptions, or all should use 'wake up' for consistency.
<!-- Generated automatically, DO NOT EDIT! -->

Comment on lines 51 to 53
| [getBlocklistFlag](#getBlocklistFlag) | Get block list falg. |
| [getBootTypeInfo](#getBootTypeInfo) | Get the FSR flag from the emmc raw area. |
| [getBuildType](#getBuildType) | Returns build type of the image flashed on the device. |
Copy link

Copilot AI Feb 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected spelling of 'falg' to 'flag'.

Suggested change
| [getBlocklistFlag](#getBlocklistFlag) | Get block list falg. |
| [getBootTypeInfo](#getBootTypeInfo) | Get the FSR flag from the emmc raw area. |
| [getBuildType](#getBuildType) | Returns build type of the image flashed on the device. |
| [getBlocklistFlag](#getBlocklistFlag) | Get block list flag. |
| [getBootTypeInfo](#getBootTypeInfo) | Get the FSR flag from the emmc raw area. |
| [getBuildType](#getBuildType) | Returns build type of the image flashed on the device flashed on the device. |

Copilot uses AI. Check for mistakes.
Comment on lines +118 to +119
{
"jsonrpc": 2.0,
Copy link

Copilot AI Feb 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The JSON-RPC version should be a string "2.0", not a numeric value 2.0, according to the JSON-RPC 2.0 specification.

Copilot uses AI. Check for mistakes.
| Method | Description |
| :-------- | :-------- |
| [abortLogUpload](#abortLogUpload) | Stops background process to upload logs. |
| [getBlocklistFlag](#getBlocklistFlag) | Get block list falg. |
Copy link

Copilot AI Feb 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected spelling of 'falg' to 'flag'.

Suggested change
| [getBlocklistFlag](#getBlocklistFlag) | Get block list falg. |
| [getBlocklistFlag](#getBlocklistFlag) | Get block list flag. |

Copilot uses AI. Check for mistakes.
<a id="getMigrationStatus"></a>
## *getMigrationStatus*

set the Migration Status of the device
Copy link

Copilot AI Feb 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The description states 'set' but this is a getter method (getMigrationStatus). The description should be 'Gets the Migration Status of the device' to accurately reflect the method's purpose.

Suggested change
set the Migration Status of the device
Gets the Migration Status of the device

Copilot uses AI. Check for mistakes.
Comment on lines +1016 to +1028
| result.platformConfig.AccountInfo @brief AccountInfo Details | AccountInfoDetails | AccountInfo Details |
| result.platformConfig.AccountInfo @brief AccountInfo Details.accountId | string | Account Id |
| result.platformConfig.AccountInfo @brief AccountInfo Details.x1DeviceId | string | X1 Device Id |
| result.platformConfig.AccountInfo @brief AccountInfo Details.XCALSessionTokenAvailable | bool | XCAL Session Token Available |
| result.platformConfig.AccountInfo @brief AccountInfo Details.experience | string | Experience |
| result.platformConfig.AccountInfo @brief AccountInfo Details.deviceMACAddress | string | Device MAC Address |
| result.platformConfig.AccountInfo @brief AccountInfo Details.firmwareUpdateDisabled | bool | Whether the firmwareUpdate Disabled |
| result.platformConfig.DeviceInfo @brief DeviceInfo Details | DeviceInfoDetails | DeviceInfo Details |
| result.platformConfig.DeviceInfo @brief DeviceInfo Details.quirks | string | The list of installed “quirks” |
| result.platformConfig.DeviceInfo @brief DeviceInfo Details.mimeTypeExclusions | MIMETypeExclusions | mime Type Exclusions |
| result.platformConfig.DeviceInfo @brief DeviceInfo Details.mimeTypeExclusions.CDVR | string | CDVR |
| result.platformConfig.DeviceInfo @brief DeviceInfo Details.mimeTypeExclusions.DVR | string | DVR |
| result.platformConfig.DeviceInfo @brief DeviceInfo Details.mimeTypeExclusions.EAS | string | EAS |
Copy link

Copilot AI Feb 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The field name 'AccountInfo @brief AccountInfo Details' is confusing as it includes '@brief' documentation syntax. This should be a clean identifier without documentation markers.

Suggested change
| result.platformConfig.AccountInfo @brief AccountInfo Details | AccountInfoDetails | AccountInfo Details |
| result.platformConfig.AccountInfo @brief AccountInfo Details.accountId | string | Account Id |
| result.platformConfig.AccountInfo @brief AccountInfo Details.x1DeviceId | string | X1 Device Id |
| result.platformConfig.AccountInfo @brief AccountInfo Details.XCALSessionTokenAvailable | bool | XCAL Session Token Available |
| result.platformConfig.AccountInfo @brief AccountInfo Details.experience | string | Experience |
| result.platformConfig.AccountInfo @brief AccountInfo Details.deviceMACAddress | string | Device MAC Address |
| result.platformConfig.AccountInfo @brief AccountInfo Details.firmwareUpdateDisabled | bool | Whether the firmwareUpdate Disabled |
| result.platformConfig.DeviceInfo @brief DeviceInfo Details | DeviceInfoDetails | DeviceInfo Details |
| result.platformConfig.DeviceInfo @brief DeviceInfo Details.quirks | string | The list of installed “quirks” |
| result.platformConfig.DeviceInfo @brief DeviceInfo Details.mimeTypeExclusions | MIMETypeExclusions | mime Type Exclusions |
| result.platformConfig.DeviceInfo @brief DeviceInfo Details.mimeTypeExclusions.CDVR | string | CDVR |
| result.platformConfig.DeviceInfo @brief DeviceInfo Details.mimeTypeExclusions.DVR | string | DVR |
| result.platformConfig.DeviceInfo @brief DeviceInfo Details.mimeTypeExclusions.EAS | string | EAS |
| result.platformConfig.AccountInfo | AccountInfoDetails | AccountInfo Details |
| result.platformConfig.AccountInfo.accountId | string | Account Id |
| result.platformConfig.AccountInfo.x1DeviceId | string | X1 Device Id |
| result.platformConfig.AccountInfo.XCALSessionTokenAvailable | bool | XCAL Session Token Available |
| result.platformConfig.AccountInfo.experience | string | Experience |
| result.platformConfig.AccountInfo.deviceMACAddress | string | Device MAC Address |
| result.platformConfig.AccountInfo.firmwareUpdateDisabled | bool | Whether the firmwareUpdate Disabled |
| result.platformConfig.DeviceInfo | DeviceInfoDetails | DeviceInfo Details |
| result.platformConfig.DeviceInfo.quirks | string | The list of installed “quirks” |
| result.platformConfig.DeviceInfo.mimeTypeExclusions | MIMETypeExclusions | mime Type Exclusions |
| result.platformConfig.DeviceInfo.mimeTypeExclusions.CDVR | string | CDVR |
| result.platformConfig.DeviceInfo.mimeTypeExclusions.DVR | string | DVR |
| result.platformConfig.DeviceInfo.mimeTypeExclusions.EAS | string | EAS |

Copilot uses AI. Check for mistakes.
bool powerKey /* @text WAKEUPSRC_POWER_KEY */ /* @brief Power Button Wake up - GPIO */;
bool cec /* @text WAKEUPSRC_CEC */ /* @brief HDMI CEC command Wake up */;
bool lan /* @text WAKEUPSRC_LAN */ /* @brief LAN wake up */;
bool timer /* @text WAKEUPSRC_TIMER */ /* @brief TImer Wake up */;
Copy link

Copilot AI Feb 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected capitalization of 'TImer' to 'Timer'.

Suggested change
bool timer /* @text WAKEUPSRC_TIMER */ /* @brief TImer Wake up */;
bool timer /* @text WAKEUPSRC_TIMER */ /* @brief Timer Wake up */;

Copilot uses AI. Check for mistakes.
// @param TimeZoneDSTChangedInfo: The TimeZoneDST changed information
virtual void OnTimeZoneDSTChanged(const TimeZoneDSTChangedInfo& timeZoneDSTChangedInfo) {};

// @text OnMacAddressesRetreived
Copy link

Copilot AI Feb 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected spelling of 'Retreived' to 'Retrieved'.

Suggested change
// @text OnMacAddressesRetreived
// @text OnMacAddressesRetrieved

Copilot uses AI. Check for mistakes.
Comment on lines 257 to 260
// @text OnMacAddressesRetreived
// @brief Triggered when the getMacAddresses asynchronous method is invoked.
// @param MacAddressesInfo: The Mac Addresses details
virtual void OnMacAddressesRetreived(const MacAddressesInfo& macAddressesInfo) {};
Copy link

Copilot AI Feb 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected spelling of 'Retreived' to 'Retrieved'.

Suggested change
// @text OnMacAddressesRetreived
// @brief Triggered when the getMacAddresses asynchronous method is invoked.
// @param MacAddressesInfo: The Mac Addresses details
virtual void OnMacAddressesRetreived(const MacAddressesInfo& macAddressesInfo) {};
// @text OnMacAddressesRetrieved
// @brief Triggered when the getMacAddresses asynchronous method is invoked.
// @param MacAddressesInfo: The Mac Addresses details
virtual void OnMacAddressesRetrieved(const MacAddressesInfo& macAddressesInfo) {};

Copilot uses AI. Check for mistakes.
virtual Core::hresult SetMigrationStatus(const bool status, bool& success /* @out */) = 0;

// @text getMigrationStatus
// @brief set the Migration Status of the device
Copy link

Copilot AI Feb 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The description states 'set' but this is a getter method (GetMigrationStatus). The description should be 'Gets the Migration Status of the device' to accurately reflect the method's purpose.

Suggested change
// @brief set the Migration Status of the device
// @brief Gets the Migration Status of the device

Copilot uses AI. Check for mistakes.
virtual Core::hresult SetBlocklistFlag(const bool blocklist, BlocklistResult& result /* @out */) = 0;

// @text getBlocklistFlag
// @brief Get block list falg.
Copy link

Copilot AI Feb 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected spelling of 'falg' to 'flag'.

Suggested change
// @brief Get block list falg.
// @brief Get block list flag.

Copilot uses AI. Check for mistakes.
@github-actions
Copy link

Documentation Auto-Generated

Documentation has been automatically generated for the changed plugins and committed to this PR branch.

The generated documentation files have been added to the PR for review.

Copilot AI review requested due to automatic review settings February 18, 2026 11:17
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@dkumar798 dkumar798 marked this pull request as draft February 19, 2026 09:24
@github-actions
Copy link

Documentation Auto-Generated

Documentation has been automatically generated for the changed plugins and committed to this PR branch.

The generated documentation files have been added to the PR for review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants