Skip to content

CTI: Speech-To-Text profile permission not honored for transcription/summary availability #8038

@tommaso-ascani

Description

@tommaso-ascani

Context

Follow-up from QA of the call transcription/summary feature, point 2 of #7143.

Problem

The transcription/summary controls (e.g. the Call summary ready notification option in CTI settings) are correctly hidden when transcription is disabled at the NS8 module level, but they remain available when the Speech-To-Text permission is disabled in the user's profile.

Root cause

nethcti-server builds the user-info response (GET me) setting the feature flags purely from the module-level env vars, ignoring the per-profile permission:

  • plugins/com_user_rest/plugins_rest/user.js (~L731-753): call_transcription_enabled, call_summary_enabled (and voicemail_transcription_enabled) are set only from SATELLITE_CALL_TRANSCRIPTION_ENABLED / SATELLITE_CALL_SUMMARY_ENABLED env vars.

The frontend (nethvoice-cti components/settings/Notifications.tsx) gates the option on call_summary_enabled, so it inherits the bug.

The relevant profile permission is satellite_stt ("Speech-To-Text", id 5000), grouped under the nethvoice_cti macro permission (id 12) — seeded in ns8-nethvoice/freepbx/initdb.d/migration.php.

Proposed fix (backend only)

In nethcti-server, AND the call_transcription_enabled and call_summary_enabled flags with the user's satellite_stt profile permission (macro_permissions.nethvoice_cti.value === true && macro_permissions.nethvoice_cti.permissions.satellite_stt.value === true). All consumers (CTI, NethLink) realign automatically — no frontend change needed.

Impacted repos

  • nethcti-server (fix)

Out of scope / note

voicemail_transcription_enabled is left unchanged (the satellite_stt permission description covers call transcription/summary, not voicemail).

Metadata

Metadata

Labels

nethvoiceBug or features releted to the NethVoice projectnethvoice-ctiThe issue is related to NethLink (NethVoice Web client)

Type

No type
No fields configured for issues without a type.

Projects

Status
Todo

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions