$personal_Request method
- @experimental
- required int batchSetting,
- required String soundNotification,
- required String soundTalk,
- SettingsPersonalApiVersion? apiVersion,
- bool? oCSAPIRequest,
Update personal notification settings.
Returns a DynamiteRequest
backing the personal operation.
Throws a DynamiteApiException
if the API call does not return an expected status code.
Parameters:
batchSetting
How often E-mails about missed notifications should be sent (hourly: 1; every three hours: 2; daily: 3; weekly: 4).soundNotification
Enable sound for notifications ('yes' or 'no').soundTalk
Enable sound for Talk notifications ('yes' or 'no').apiVersion
Defaults to"v2"
.oCSAPIRequest
Required to be true for the API request to pass. Defaults totrue
.
Status codes:
- 200: Personal settings updated
See:
- personal for a method executing this request and parsing the response.
- $personal_Serializer for a converter to parse the
Response
from an executed this request.
Implementation
@_i2.experimental
_i3.Request $personal_Request({
required int batchSetting,
required String soundNotification,
required String soundTalk,
SettingsPersonalApiVersion? apiVersion,
bool? oCSAPIRequest,
}) {
final _parameters = <String, Object?>{};
final $batchSetting = _$jsonSerializers.serialize(batchSetting, specifiedType: const FullType(int));
_parameters['batchSetting'] = $batchSetting;
final $soundNotification = _$jsonSerializers.serialize(soundNotification, specifiedType: const FullType(String));
_parameters['soundNotification'] = $soundNotification;
final $soundTalk = _$jsonSerializers.serialize(soundTalk, specifiedType: const FullType(String));
_parameters['soundTalk'] = $soundTalk;
var $apiVersion =
_$jsonSerializers.serialize(apiVersion, specifiedType: const FullType(SettingsPersonalApiVersion));
$apiVersion ??= 'v2';
_parameters['apiVersion'] = $apiVersion;
final _path = _i4.UriTemplate(
'/ocs/v2.php/apps/notifications/api/{apiVersion}/settings{?batchSetting*,soundNotification*,soundTalk*}',
).expand(_parameters);
final _uri = Uri.parse('${_rootClient.baseURL}$_path');
final _request = _i3.Request('post', _uri);
_request.headers['Accept'] = 'application/json';
// coverage:ignore-start
final authentication = _rootClient.authentications?.firstWhereOrNull(
(auth) => switch (auth) {
_i1.DynamiteHttpBearerAuthentication() || _i1.DynamiteHttpBasicAuthentication() => true,
_ => false,
},
);
if (authentication != null) {
_request.headers.addAll(
authentication.headers,
);
} else {
throw Exception('Missing authentication for bearer_auth or basic_auth');
}
// coverage:ignore-end
var $oCSAPIRequest = _$jsonSerializers.serialize(oCSAPIRequest, specifiedType: const FullType(bool));
$oCSAPIRequest ??= true;
_request.headers['OCS-APIRequest'] = const _i5.HeaderEncoder().convert($oCSAPIRequest);
return _request;
}