|
| 1 | +--- |
| 2 | +applicable: Microsoft Teams |
| 3 | +author: juliiva |
| 4 | +external help file: Microsoft.Rtc.Management.dll-Help.xml |
| 5 | +Locale: en-US |
| 6 | +manager: jomarque |
| 7 | +Module Name: MicrosoftTeams |
| 8 | +ms.author: juliiva |
| 9 | +online version: https://learn.microsoft.com/powershell/module/microsoftteams/set-cspersonalattendantsettings |
| 10 | +schema: 2.0.0 |
| 11 | +title: Set-CsPersonalAttendantSettings |
| 12 | +--- |
| 13 | + |
| 14 | +# Set-CsPersonalAttendantSettings |
| 15 | + |
| 16 | +## SYNOPSIS |
| 17 | + |
| 18 | +**Limited Preview:** Functionality described in this document is currently in limited preview and only authorized organizations have access. |
| 19 | + |
| 20 | +This cmdlet will set personal attendant settings for the specified user. |
| 21 | + |
| 22 | +## SYNTAX |
| 23 | + |
| 24 | +``` |
| 25 | +Set-CsPersonalAttendantSettings -Identity <String> -IsPersonalAttendantEnabled <Boolean> -DefaultLanguage <String> [-DefaultVoice <String>] [-CalleeName <String>] [-DefaultTone <String>] -IsBookingCalendarEnabled <Boolean> [-IsNonContactCallbackEnabled <Boolean>] -IsCallScreeningEnabled <Boolean> -AllowInboundInternalCalls <Boolean> -AllowInboundFederatedCalls <Boolean> -AllowInboundPSTNCalls <Boolean> -IsAutomaticTranscriptionEnabled <Boolean> -IsAutomaticRecordingEnabled <Boolean> [<CommonParameters>] |
| 26 | +``` |
| 27 | + |
| 28 | +## DESCRIPTION |
| 29 | + |
| 30 | +This cmdlet sets personal attendant settings for the specified user. |
| 31 | + |
| 32 | +When specifying settings you need to specify all settings, for instance, you can't just turn call screening on. Instead, you need to |
| 33 | +start by getting the current settings, making the necessary changes, and then setting/writing all settings. |
| 34 | + |
| 35 | +## EXAMPLES |
| 36 | + |
| 37 | +### Example 1 |
| 38 | +``` |
| 39 | +Set-CsPersonalAttendantSettings -Identity [email protected] -IsPersonalAttendantEnabled $true -DefaultLanguage en-US -CalleeName User1 -IsBookingCalendarEnabled $false -IsCallScreeningEnabled $false |
| 40 | +-AllowInboundInternalCalls $true -AllowInboundFederatedCalls $false -AllowInboundPSTNCalls $false -IsAutomaticTranscriptionEnabled $false -IsAutomaticRecordingEnabled $false |
| 41 | +``` |
| 42 | + |
| 43 | +This example shows setting up personal attendant for [email protected]. Personal attendant communicates in English. Personal attendant will refer to its owner as User1. |
| 44 | +Personal attendant is only enabled for inbound Teams calls from the user's domain. Additional capabilities are turned off. |
| 45 | + |
| 46 | +### Example 2 |
| 47 | +``` |
| 48 | +Set-CsPersonalAttendantSettings -Identity [email protected] -IsPersonalAttendantEnabled $true -DefaultLanguage en-US -CalleeName User1 -IsBookingCalendarEnabled $true -IsCallScreeningEnabled $false |
| 49 | +-AllowInboundInternalCalls $true -AllowInboundFederatedCalls $false -AllowInboundPSTNCalls $false -IsAutomaticTranscriptionEnabled $false -IsAutomaticRecordingEnabled $false |
| 50 | +``` |
| 51 | + |
| 52 | +This example shows setting up personal attendant for [email protected]. In addition to previously mentioned capabilities, personal attendant is able to access personal bookings calendar, |
| 53 | +fetch the user's availability and schedule callbacks on behalf of the user. Calendar operations are enabled for all incoming callers. user1 must specify the bookings link in Teams Personal Attendant settings. |
| 54 | + |
| 55 | +### Example 3 |
| 56 | +``` |
| 57 | +Set-CsPersonalAttendantSettings -Identity [email protected] -IsPersonalAttendantEnabled $true -DefaultLanguage en-US -CalleeName User1 -IsBookingCalendarEnabled $true -IsCallScreeningEnabled $false |
| 58 | +-AllowInboundInternalCalls $true -AllowInboundFederatedCalls $true -AllowInboundPSTNCalls $true -IsAutomaticTranscriptionEnabled $false -IsAutomaticRecordingEnabled $false |
| 59 | +``` |
| 60 | + |
| 61 | +This example shows setting up personal attendant for [email protected]. In addition to previously mentioned capabilities, personal attendant is enabled for all incoming calls: the user's domain, other domains and PSTN. |
| 62 | + |
| 63 | +### Example 4 |
| 64 | +``` |
| 65 | +Set-CsPersonalAttendantSettings -Identity [email protected] -IsPersonalAttendantEnabled $true -DefaultLanguage en-US -CalleeName User1 -IsBookingCalendarEnabled $true -IsCallScreeningEnabled $true |
| 66 | +-AllowInboundInternalCalls $true -AllowInboundFederatedCalls $true -AllowInboundPSTNCalls $true -IsAutomaticTranscriptionEnabled $false -IsAutomaticRecordingEnabled $false |
| 67 | +``` |
| 68 | + |
| 69 | +This example shows setting up personal attendant for [email protected]. In addition to previously mentioned capabilities, personal attendant is enabled to evaluate the call's context and pass the info to the user. |
| 70 | + |
| 71 | +### Example 5 |
| 72 | +``` |
| 73 | +Set-CsPersonalAttendantSettings -Identity [email protected] -IsPersonalAttendantEnabled $true -DefaultLanguage en-US -CalleeName User1 -IsBookingCalendarEnabled $true -IsCallScreeningEnabled $true |
| 74 | +-AllowInboundInternalCalls $true -AllowInboundFederatedCalls $true -AllowInboundPSTNCalls $true -IsAutomaticTranscriptionEnabled $true -IsAutomaticRecordingEnabled $true |
| 75 | +``` |
| 76 | + |
| 77 | +This example shows setting up personal attendant for [email protected]. In addition to previously mentioned capabilities, personal attendant is automatically storing call transcription and recording. |
| 78 | + |
| 79 | +### Example 6 |
| 80 | +``` |
| 81 | +Set-CsPersonalAttendantSettings -Identity [email protected] -IsPersonalAttendantEnabled $false |
| 82 | +``` |
| 83 | + |
| 84 | +This example shows turning off personal attendant for [email protected]. |
| 85 | + |
| 86 | +### Example 7 |
| 87 | +``` |
| 88 | +Set-CsUserCallingSettings -Identity [email protected] -IsForwardingEnabled $false |
| 89 | +Set-CsPersonalAttendantSettings -Identity [email protected] -IsPersonalAttendantEnabled $true -DefaultLanguage en-US -CalleeName User1 -IsBookingCalendarEnabled $false -IsCallScreeningEnabled $false |
| 90 | +-AllowInboundInternalCalls $true -AllowInboundFederatedCalls $false -AllowInboundPSTNCalls $false -IsAutomaticTranscriptionEnabled $false -IsAutomaticRecordingEnabled $false |
| 91 | +``` |
| 92 | + |
| 93 | +This example shows how to set up personal attendant for a user, who has call forwarding enabled. |
| 94 | + |
| 95 | +### Example 8 |
| 96 | +``` |
| 97 | +Set-CsUserCallingSettings -Identity [email protected] -IsUnansweredEnabled $true -UnansweredTargetType Voicemail -UnansweredDelay 00:00:20 |
| 98 | +Set-CsPersonalAttendantSettings -Identity [email protected] -IsPersonalAttendantEnabled $true -DefaultLanguage en-US -CalleeName User1 -IsBookingCalendarEnabled $false -IsCallScreeningEnabled $false |
| 99 | +-AllowInboundInternalCalls $true -AllowInboundFederatedCalls $false -AllowInboundPSTNCalls $false -IsAutomaticTranscriptionEnabled $false -IsAutomaticRecordingEnabled $false |
| 100 | +``` |
| 101 | + |
| 102 | +This example shows how to set up personal attendant for a user, who would like to use unanswered call functionality simultaniously with personal attendant. |
| 103 | + |
| 104 | +## PARAMETERS |
| 105 | + |
| 106 | +### -Identity |
| 107 | +The Identity of the user to set personal attendant settings for. Can be specified using the ObjectId or the SIP address. |
| 108 | + |
| 109 | +```yaml |
| 110 | +Type: System.String |
| 111 | +Parameter Sets: (All) |
| 112 | +Aliases: |
| 113 | + |
| 114 | +Required: True |
| 115 | +Default value: None |
| 116 | +Accept pipeline input: False |
| 117 | +Accept wildcard characters: False |
| 118 | +``` |
| 119 | +
|
| 120 | +### -IsPersonalAttendantEnabled |
| 121 | +This parameter controls whether personal attendant is enabled or not. If personal attendant is enabled, then at least one of: AllowInboundInternalCalls, AllowInboundFederatedCalls, AllowInboundPSTNCalls must be enabled. |
| 122 | +
|
| 123 | +```yaml |
| 124 | +Type: System.Boolean |
| 125 | +Parameter Sets: (PersonalAttendant,PersonalAttendantOnOff) |
| 126 | +Aliases: |
| 127 | + |
| 128 | +Required: True |
| 129 | +Default value: False |
| 130 | +Accept pipeline input: False |
| 131 | +Accept wildcard characters: False |
| 132 | +``` |
| 133 | +
|
| 134 | +### -DefaultLanguage |
| 135 | +Language to be used by personal attendant in communication. The preliminary list of supported languages is: |
| 136 | +en-US, fr-FR, ar-SA, zh-CN, zh-TW, cs-CZ, da-DK, nl-NL, en-AU, en-GB, fi-FI, fr-CA, de-DE, el-GR, hi-IN, id-ID, it-IT, ja-JP, ko-KR, nb-NO, pl-PL, pt-BR, ru-RU, es-ES, es-US, sv-SE, th-TH, tr-TR |
| 137 | +
|
| 138 | +```yaml |
| 139 | +Type: System.String |
| 140 | +Parameter Sets: (PersonalAttendant) |
| 141 | +Aliases: |
| 142 | + |
| 143 | +Required: True |
| 144 | +Default value: en-US |
| 145 | +Accept pipeline input: False |
| 146 | +Accept wildcard characters: False |
| 147 | +``` |
| 148 | +
|
| 149 | +### -DefaultVoice |
| 150 | +Voice to be used by personal attendant in communication. Supported values are Female and Male. |
| 151 | +
|
| 152 | +> [!NOTE] |
| 153 | +> This parameter is currently in development and changing it does not change the behavior of Personal Attendant. |
| 154 | +
|
| 155 | +```yaml |
| 156 | +Type: System.String |
| 157 | +Parameter Sets: (PersonalAttendant) |
| 158 | +Aliases: |
| 159 | + |
| 160 | +Required: False |
| 161 | +Default value: Female |
| 162 | +Accept pipeline input: False |
| 163 | +Accept wildcard characters: False |
| 164 | +``` |
| 165 | +
|
| 166 | +### -CalleeName |
| 167 | +Name that personal attendant uses when referring to its owner. |
| 168 | +
|
| 169 | +```yaml |
| 170 | +Type: System.String |
| 171 | +Parameter Sets: (PersonalAttendant) |
| 172 | +Aliases: |
| 173 | + |
| 174 | +Required: False |
| 175 | +Default value: None |
| 176 | +Accept pipeline input: False |
| 177 | +Accept wildcard characters: False |
| 178 | +``` |
| 179 | +
|
| 180 | +### -DefaultTone |
| 181 | +Tone to be used by personal attendant in communication. Supported values are Formal and Casual. |
| 182 | +
|
| 183 | +> [!NOTE] |
| 184 | +> This parameter is currently in development and enabling/disabling it does not change the behavior of Personal Attendant. |
| 185 | +
|
| 186 | +```yaml |
| 187 | +Type: System.String |
| 188 | +Parameter Sets: (PersonalAttendant) |
| 189 | +Aliases: |
| 190 | + |
| 191 | +Required: False |
| 192 | +Default value: Formal |
| 193 | +Accept pipeline input: False |
| 194 | +Accept wildcard characters: False |
| 195 | +``` |
| 196 | +
|
| 197 | +### -IsBookingCalendarEnabled |
| 198 | +This parameter controls whether personal attendant can access personal bookings calendar to fetch the user's availability and schedule callbacks on behalf of the user. |
| 199 | +If access to personal calendar is enabled by admin, user must specify the bookings link in Teams Personal Attendant settings. |
| 200 | +
|
| 201 | +```yaml |
| 202 | +Type: System.Boolean |
| 203 | +Parameter Sets: (PersonalAttendant) |
| 204 | +Aliases: |
| 205 | + |
| 206 | +Required: True |
| 207 | +Default value: False |
| 208 | +Accept pipeline input: False |
| 209 | +Accept wildcard characters: False |
| 210 | +``` |
| 211 | +
|
| 212 | +### -IsNonContactCallbackEnabled |
| 213 | +This parameter controls whether personal attendant calendar operations for callers not in the user contact list are enabled or not. |
| 214 | +
|
| 215 | +> [!NOTE] |
| 216 | +> This parameter is currently in development and enabling/disabling it does not change the behavior of Personal Attendant. |
| 217 | +
|
| 218 | +```yaml |
| 219 | +Type: System.Boolean |
| 220 | +Parameter Sets: (PersonalAttendant) |
| 221 | +Aliases: |
| 222 | + |
| 223 | +Required: False |
| 224 | +Default value: False |
| 225 | +Accept pipeline input: False |
| 226 | +Accept wildcard characters: False |
| 227 | +``` |
| 228 | +
|
| 229 | +### -IsCallScreeningEnabled |
| 230 | +This parameter controls whether personal attendant evaluates calls context and passes the info to the user. |
| 231 | +
|
| 232 | +```yaml |
| 233 | +Type: System.Boolean |
| 234 | +Parameter Sets: (PersonalAttendant) |
| 235 | +Aliases: |
| 236 | + |
| 237 | +Required: True |
| 238 | +Default value: True |
| 239 | +Accept pipeline input: False |
| 240 | +Accept wildcard characters: False |
| 241 | +``` |
| 242 | +
|
| 243 | +### -AllowInboundInternalCalls |
| 244 | +This parameter controls whether personal attendant for incoming domain calls is enabled or not. |
| 245 | +
|
| 246 | +```yaml |
| 247 | +Type: System.Boolean |
| 248 | +Parameter Sets: (PersonalAttendant) |
| 249 | +Aliases: |
| 250 | + |
| 251 | +Required: True |
| 252 | +Default value: True |
| 253 | +Accept pipeline input: False |
| 254 | +Accept wildcard characters: False |
| 255 | +``` |
| 256 | +
|
| 257 | +### -AllowInboundFederatedCalls |
| 258 | +This parameter controls whether personal attendant for incoming calls from other domains is enabled or not. |
| 259 | +
|
| 260 | +```yaml |
| 261 | +Type: System.Boolean |
| 262 | +Parameter Sets: (PersonalAttendant) |
| 263 | +Aliases: |
| 264 | + |
| 265 | +Required: True |
| 266 | +Default value: True |
| 267 | +Accept pipeline input: False |
| 268 | +Accept wildcard characters: False |
| 269 | +``` |
| 270 | +
|
| 271 | +### -AllowInboundPSTNCalls |
| 272 | +This parameter controls whether personal attendant for incoming PSTN calls is enabled or not. |
| 273 | +
|
| 274 | +```yaml |
| 275 | +Type: System.Boolean |
| 276 | +Parameter Sets: (PersonalAttendant) |
| 277 | +Aliases: |
| 278 | + |
| 279 | +Required: True |
| 280 | +Default value: True |
| 281 | +Accept pipeline input: False |
| 282 | +Accept wildcard characters: False |
| 283 | +``` |
| 284 | +
|
| 285 | +### -IsAutomaticTranscriptionEnabled |
| 286 | +This parameter controls whether automatic storing of transcriptions (of personal attendant calls) is enabled or not. |
| 287 | +
|
| 288 | +```yaml |
| 289 | +Type: System.Boolean |
| 290 | +Parameter Sets: (PersonalAttendant) |
| 291 | +Aliases: |
| 292 | + |
| 293 | +Required: True |
| 294 | +Default value: True |
| 295 | +Accept pipeline input: False |
| 296 | +Accept wildcard characters: False |
| 297 | +``` |
| 298 | +
|
| 299 | +### -IsAutomaticRecordingEnabled |
| 300 | +This parameter controls whether automatic storing of recordings (of personal attendant calls) is enabled or not. |
| 301 | +
|
| 302 | +```yaml |
| 303 | +Type: System.Boolean |
| 304 | +Parameter Sets: (PersonalAttendant) |
| 305 | +Aliases: |
| 306 | + |
| 307 | +Required: True |
| 308 | +Default value: True |
| 309 | +Accept pipeline input: False |
| 310 | +Accept wildcard characters: False |
| 311 | +``` |
| 312 | +
|
| 313 | +### CommonParameters |
| 314 | +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216). |
| 315 | +
|
| 316 | +## INPUTS |
| 317 | +
|
| 318 | +### None |
| 319 | +
|
| 320 | +## OUTPUTS |
| 321 | +
|
| 322 | +### System.Object |
| 323 | +
|
| 324 | +## NOTES |
| 325 | +The cmdlet is available in Teams PowerShell module 7.3.0 or later. |
| 326 | +
|
| 327 | +The specified user need to have the Microsoft Phone System license assigned. |
| 328 | +
|
| 329 | +The cmdlet is validating different settings and is always writing all the parameters. You might see validation errors from the cmdlet due to |
| 330 | +this behavior. As an example, if you already have call forwarding set up and you want to set up personal attendant, you will get a validation error. |
| 331 | +
|
| 332 | +
|
| 333 | +## RELATED LINKS |
| 334 | +[Get-CsPersonalAttendantSettings](./get-cspersonalattendantsettings.md) |
0 commit comments