Teams Recording Announcement
Overview
Recording announcements for Microsoft Teams calls (Audio Notification for PSTN Calls and Recording Banner for Teams Clients) can be enabled or disabled in the MiaRec admin portal. This is done using Recording Announcement Rules
If recording announcement is enabled, and a user joins a call using Teams client (desktop or mobile), a recording banner is shown inside the Teams app.
If recording announcement is enabled, and a user joins a call via PSTN, then an audio notification is played back to the user.
Audio Notification for PSTN must be enabled during recording policy setup Step 3.
The Audio Notification for PSTN is an additional setting that applies only to PSTN participants and only takes effect when a Recording Announcement Rule has already been triggered.
Recording Announcement Rule Description
Before the MiaRec recording platform begins recording, it evaluates the configured Recording Announcement Rules and, based on these rules, calls Microsoft Teams APIs to notify participants about the recording.
The displayed banner text and audio message are controlled by Microsoft Teams, not by MiaRec. The MiaRec platform only controls whether then announcement is triggered or not.
MiaRec supports four levels of recording announcement rules that are applied based on the assignment of the call:
- Default Recording Announcement Rule - Defined globally and applied to all calls that are not associated to a tenant or user.
- Tenant Recording Announcement Rules - Applied to calls associated with a tenant, unless a user-specific rule exists.
- User Recording Announcement Rules - Applied to calls associated with a specific user and takes precedence over tenant and global rules.
- Custom Recording Announcement Rules Evaluated to introduce exceptions to the standard rules above (for example, disabling an announcement based on a phone number prefix).
The rules are evaluated in the following order: Custom, User, Tenant, and finally the Default rule. The first rule that matches the call is applied, and its action ("announce" or "do not announce") takes effect.
Processing Flow
Note: Recording Announcement Rules operate on top of the recording rules (see Teams Recording Rules). Recording rules determine whether a call is recorded, while announcement rules determine whether participants are notified about the recording.
The recording announcement decision workflow is executed as follows:
-
Teams User Makes or Receives a Call
- If a recording policy is attached to the user (direct, group or global), a call recording is initiated by the MiaRec platform.
- If no recording policy is attached, the call is not recorded, and not announced.
-
MiaRec recorder reads the tenant and user information from the call metadata and evaluates the configured recording rules to determine if a call must be recorded. In case the rules decline a recording, the announcement is not played.
-
If a recording is approved by rules, the MiaRec recorder then evaluates the announcement rules as described below.
-
Custom Rules (Pre-Processing) The application evaluates the rules configured under
Custom Rules [before].- If a matching rule is found, MiaRec Recorder will apply the configured action to activate/deactivate the Recording Announcement.
- If no rules match, processing continues to the next hierarchical level.
-
User-Level Rules The application evaluates per user rules (as configured in User profiles, and shown in
Auto Rulesfor convenience).- If a match is found, the corresponding action is taken.
- Otherwise, processing continues.
-
Tenant-Level Rules The application evaluates per tenant rules (as configured in Tenant profiles, and shown in
Auto Rulesfor convenience).- If a match is found, the corresponding action is taken.
- Otherwise, processing continues.
-
Custom Rules (Post-Processing) The application evaluates the rules configured under
Custom Rules [after], if any, (rare).- If a match is found, the corresponding action is taken.
- Otherwise, processing continues.
-
Default System-level Rule If no rules match in any of the previous steps, the Default Recording Announcement Rule is applied.
Early Check of Recording Filters
To support early rule evaluation, enable the Early check of recording filters setting under System > Recording Interfaces > SIPREC in the MiaRec platform.
Detailed explanation:
In the processing flow described above, recording announcements depend on whether recording rules (record vs. do not record) are evaluated early, specifically when Microsoft Teams invites the MiaRec recorder to join the call.
By default, the MiaRec recorder postpones recording rule evaluation until RTP is received from the remote endpoint. In this configuration, recording is initially started for all calls, and at a later stage, the recorder may discard the received audio if the rules indicate that the call should not be recorded.
Because of this delayed evaluation, participants may receive a recording announcement even when the call is ultimately not recorded. To prevent such false announcements, the Early check of recording filters setting must be enabled.
Configuration
Procedure overview
- Enable Recording Announcement Configuration
- Enable Early Check of Recording Filters
- Configure Default Global Recording Announcement Action
- Configure Tenant Recording Announcement Action
- (Optional) Configure Per-User Recording Announcement Action
- (Optional) Configure Custom Recording Announcement Rules
1. Enable Recording Announcement Configuration
Operators must enable the recording annoucemnet configuration in the admin portal first.
Navigate to Administration > System > Advanced Settings
Select Allow for Recording Announcement Configuration
Result: Administation > System > Recording Announcement Rules menu and recording announcement configuration on the tenant profiles will become available in the Web UI
2. Enable Early Check of Recording Filters
To ensure proper operation of the recording decision workflow, Early Check of Recording Filters must be enabled.
Standard - Teams Only Recording
Applies to all MiaRec Recorder(s) in your deployment
Navigate to Administration > System > Recording Interfaces > SIPREC
Under Recording Filters Behavior, enable Early check of recording filters
Multi-platform setups
(e.g., BroadWorks and Microsoft Teams): Configuration needs to be applied on a per recorder basis, applied to Teams-only recorders
Navigate to Administration > Maintenance > Recording Servers
Create an override setting with the following:
- Recorder name =
<YOUR-TEAMS-RECORDER-NAME> - Category =
Protocol::SIPREC - Key =
EarlyCheckRecordingFilters - Value =
true
3. Configure Default Global Recording Announcement Action
Operators can define the default recording announcement action (Announce/Do not announce) globally with the following steps.
Navigate to Administration > System > Recording Announcement Rules
On the Settings tab, select Edit Configuration
Choose Announce or Do not announce for the Default Action
Result: Default setting is now applied. Any call that is not assigned to a user or tenant will follow the announce action defined here.
4. Configure Tenant Recording Announcement Action
Operators can define the default recording announcement action (Announce/Do not announce) for each tenant with the following steps.
Navigate to the tenant profile page Administration > User Management > Tenants and select the tenant profile
Under RECORDING SETTINGS section, select one of the following actions for Recording announcement
- Always - Recording Announcement will be enabled for all calls for this tenant
- Never - Recording Announcement will be disabled for all calls for this tenant
- Default - Recording Announcement for this tenant will follow Default Global Action
Result: If Always or Never were selected, a Recording Announcement Auto Rule will be created for the tenant profile with the specified Announcement Action.
5. (Optional) Configure Per-User Recording Announcement Action
Operators can set per user recording announcement rules with the following steps
Enable Per-User Announcement Settings for Tenant (one-time)
By default, MiaRec UI does not allow enable per user recording announcemnet. For Each tenant the configuartion needs to be allowed if per user configuration is desired.
User WITH and WITHOUT per user recording announcement configuration
Configuration
Navigate to the tenant profile page Administration > User Management > Tenants and select the tenant profile
Under RECORDING SETTINGS section
Choose Enable for Per-user announcement
Result Recording announcement setting will be uncovered in the user profiles for this tenant.
Define Recording Announcement Action for Each User
Navigate to the user profile page Administration > User Management > Users and select the user profile
Under RECORDING SETTINGS section, select one of the following actions for Recording announcement
- Always - Recording Announcement will be enabled for all calls for this tenant
- Never - Recording Announcement will be disabled for all calls for this tenant
- Default - Recording Announcement for this user will follow the Tenant level setting if defined, otherwise the Default Global Action.
Result: If Always or Never were selected, a Recording Announcement Auto Rule will be created for the user profile with the specified announcement action.
6. (Optional) Configure Custom Recording Announcement Rules
In some scenarios, it may be preferable to supply recording announcements for specific call scenarios, like external calls only. This can be accomplished by creating custom recording announcement rules.
Navigate to Administration > System > Recording Announcement Rules
On the Custom rules[before] tab, select +Add
Define the following
- Tenant - Select the Tenant
- Condition Define the Match Criteria to apply this rule
- Action - Select if Announcement should be present or not
Teams-specific conditions
Teams-tenantID = "<YOUR_TENANT_ID>" Match criteria for custom recording rules for Teams tenants, should always include this even for specific per-user cases. This is required to match the rule to the call.
Teams-callType defines the type of call
pstncalls connecting to external, non-Teams participantsp2pcalls between two Teams usersmeetingmultipart conference meeting between Teams clientsunknowncalls to Teams queues
Example Custom Rule: Announce External Calls Only (Teenant-Wide)
Here is an example to play a Recording Announcement for External calls only (PSTN and Queues).
Assuming the Default Action is Announce, recording announcement will be played for all calls, unless they are for the specified tenant AND the call type is p2p or meeting. Call types pstn and unknown will have a recording announcement.
- Condition
Teams-tenantID = "<YOUR_TENANT_ID>" AND (Teams-callType = "p2p" OR Teams-callType = "meeting") - Action
Do not announce










