- Added missing
GroupAnnouncementFileLocationGetRequest
andUserAnnouncementFileLocationGetRequest
requests.
4.0.0 - 2024-03-31
- Changed
SoapTransport
to utilizeHttpClient
rather than Service Model. - Updated dependencies
- Fixed issue where calling
LoginAsync
multiple times will lead to a lock that never releases.
3.0.0 - 2024-01-27
- Updated all models using
Rel_2022_08_1_350
schema files.
2.1.3 - 2022-12-30
- Fixed response type for
GroupCallCenterStrandedCallUnavailableGetRequest20
request
2.1.2 - 2022-05-31
- Fixed issue where
Validator
was not validating parent properties inheritted by sub-classes.
2.1.1 - 2022-01-22
- Fixed issue where
ErrorResponseException
andLoginException
were not being thrown on error.
2.1.0 - 2021-12-18
- Adjusted models for TIII-81498 which adds customerId and secretKey fields to the Third-Party Emergency Calling service at SP/Ent/Group levels.
2.0.1 - 2021-11-20
- Fixed exception being thrown by
Validator
when a nillable property was set to null.
2.0.0 - 2021-11-20
CallAsync
now infers the response type for a request instead of just returning theOCICommand
base type.CallAllAsync
now returns aBatchResult
object which can be iterated on like previously, but also has aGet
method for retrieving the response for a specific request.- Exceptions occuring within
TcpTransport
are no longer caught and wrapped inBadResponseException
.
- All of the per-request methods have been removed in favor of using
CallAsync
for all requests.
- Added interface
IOcipClient
whichOcipClient
implements.
1.4.0 - 2021-07-04
- Updated all models using
Rel_24.0_1.944
schema files.
1.3.0 - 2021-03-27
- Added options to
OcipClientOptions
to adjust the request and response text encoding used by the TCP transport. @Rogn - Added locks to prevent concurrency issues.
- Fixed response type for GroupCallCenterStrandedCallUnavailableGetRequest20
1.2.0 - 2020-07-22
- Added properties to
OcipClientOptions
to control timeouts for both SOAP and TCP transports.
1.1.0 - 2020-06-28
- All async methods have been renamed to include an "Async" suffix. The previous names are still usable, but are marked as deprecated and will be removed in the next major release.
- Improved uniqueness of generated session IDs by basing it around a GUID instead of the current time.
- Cancellation tokens are now supported and can be passed to the new "Async" methods.
1.0.3 - 2020-05-14
- Fixed issue with
AttributeUtil
throwing an exception if its cache is accessed by mutiple instances ofOcipClient
simultaneously.
1.0.2 - 2020-04-11
- Fixed issue with serialized XML not including the xsi:type attribute for abstract properties when they have been set to NULL.
1.0.1 - 2019-12-24
- Fixed issue with enum lists not being recognized as a list by the
Serializer
orValidator
.
1.0.0 - 2019-12-15
0.5.5-alpha - 2019-12-05
- Fixed issue with
TcpTransport
that could cause a timeout when reading from server.
0.5.4-alpha - 2019-09-02
- HTTP now actually fixed
0.5.3-alpha - 2019-09-02
- Fixed SOAP transport always treating the connection as HTTPS even when an HTTP URL is given to it.
0.5.2-alpha - 2019-08-19
SuccessResponse
responses were causing an exception
0.5.1-alpha - 2019-07-26
- Fixed R22 login
0.5.0-alpha - 2019-07-23
Validator.Validate
now returns aValidationResult
object instead of throwing a child ofValidationException
. TheSuccess
property is true if the object passed all validation checks. If not successful, theErrors
property contains a list of all errors.ValidationException
is no longer abstract and is what is thrown byOcipClient
when validation fails.- Sequences that are part of choices are now validated if at least one property is set on the sequence.
- Choice error messages now include the list of properties that make up the choice.
- Choice groups were not properly determining when a sequence property was set.
0.4.2-alpha - 2019-07-01
- Fixed issue where an ErrorResponse from the server would trigger a BadResponseException instead of an ErrorResponseException.
- Fixed issue with all calls failing due to calling
Validator.Validate
on an list. - Fixed issue with deserializing child object types.
0.4.0-alpha - 2019-06-30
- Serialization is now handled by a custom
Serializer
class instead of relying onSystem.Xml.Serialization.XmlSerializer
. This has several benefits including much greater performance. - The PropertyNameSpecified properties which are used to instruct the serializer if a property has been set and thus should be included in the output XML have been made
protected
instead ofpublic
. - Extension methods for
OcipClient
have been moved to theBroadWorksConnector
namespace so they're in the same namespace asOcipClient
.
OcipClient
now properly callsValidator
on execution.