- Exposed
JsonModelWriteCore
for model serialization procedure.
- Added
MaxConcurrentOffers
- Added
RequestContext
to methods which can override default behaviors of the client pipeline on a per-call basis. - Added
RequestConditions
to allUpdate
methods which can specify HTTP options for conditional requests based on modification time.
GetQueues
returnsPageable<RouterQueue>
rather thanPageable<RouterQueueItem>
GetDistributionPolicies
returnsPageable<DistributionPolicy>
rather thanPageable<DistributionPolicyItem>
GetClassificationPolicies
returnsPageable<ClassificationPolicy>
rather thanPageable<ClassificationPolicyItem>
GetExceptionPolicies
returnsPageable<ExceptionPolicy>
rather thanPageable<ExceptionPolicyItem>
UpdateQueue(UpdateQueueOptions options, CancellationToken cancellationToken)
changed toUpdateQueue(RouterQueue queue, CancellationToken cancellationToken)
UpdateDistributionPolicy(UpdateDistributionPolicyOptions options, CancellationToken cancellationToken)
changed toUpdateDistributionPolicy(DistributionPolicy distributionPolicy, CancellationToken cancellationToken)
UpdateClassificationPolicy(UpdateClassificationPolicyOptions options, CancellationToken cancellationToken)
changed toUpdateClassificationPolicy(ClassificationPolicy classificationPolicy, CancellationToken cancellationToken)
UpdateExceptionPolicy(UpdateExceptionPolicyOptions options, CancellationToken cancellationToken)
changed toUpdateExceptionPolicy(ExceptionPolicy exceptionPolicy, CancellationToken cancellationToken)
Pageable<RouterJobItem> GetJobs(GetJobsOptions options = null, CancellationToken cancellationToken = default)
changed toPageable<RouterJob> GetJobs(RouterJobStatusSelector? status = null, string queueId = null, string channelId = null, string classificationPolicyId = null, DateTimeOffset? scheduledBefore = null, DateTimeOffset? scheduledAfter = null, CancellationToken cancellationToken = default)
Pageable<RouterWorkerItem> GetWorkers(GetWorkersOptions options = null, CancellationToken cancellationToken = default)
changed toPageable<RouterWorker> GetWorkers(RouterWorkerStateSelector? state = null, string channelId = null, string queueId = null, bool? hasCapacity = null, CancellationToken cancellationToken = default)
UpdateJob(UpdateJobOptions options, CancellationToken cancellationToken)
changed toUpdateJob(RouterJob job, CancellationToken cancellationToken)
UpdateWorker(UpdateWorkerOptions options, CancellationToken cancellationToken)
changed toUpdateWorker(RouterWorker worker, CancellationToken cancellationToken)
- Property
Notes
- Changed fromList<RouterJobNote>
toIList<RouterJobNote>
- Property
RequestedWorkerSelectors
- Changed fromList<RouterWorkerSelector>
toIList<RouterWorkerSelector>
- Property
Labels
- Changed fromDictionary<string, LabelValue>
toIDictionary<string, RouterValue>
- Property
Tags
- Changed fromDictionary<string, LabelValue>
toIDictionary<string, RouterValue>
- Changed constructor from
RouterJobNote()
toRouterJobNote(string message)
- Removed setter from
Message
- Rename property
QueueAssignments
->Queues
Queues
- ChangedDictionary<string, RouterQueueAssignment>
->IList<string>
- Rename property
TotalCapacity
->Capacity
- Rename property
ChannelConfigurations
->Channels
Channels
- ChangedDictionary<string, ChannelConfiguration>
->IList<RouterChannel>
- Property
List<QueueSelectorAttachment> QueueSelectors
changed toIList<QueueSelectorAttachment> QueueSelectorAttachments
- Property
List<WorkerSelectorAttachment> WorkerSelectors
changed toIList<WorkerSelectorAttachment> WorkerSelectorAttachments
- Property
ExceptionRules
- Changed fromDictionary<string, ExceptionRule>
->IList<ExceptionRule>
- Property
ExceptionRules
- Changed fromDictionary<string, ExceptionRule>
->IList<ExceptionRule>
- Changed constructor from
CreateExceptionPolicyOptions(string exceptionPolicyId, IDictionary<string, ExceptionRule> exceptionRules)
toCreateExceptionPolicyOptions(string exceptionPolicyId, IEnumerable<ExceptionRule> exceptionRules)
Actions
- ChangedDictionary<string, ExceptionAction>
->IList<ExceptionAction>
- Changed constructor from
CancelExceptionAction(string note = null, string dispositionCode = null)
toCancelExceptionAction()
- Changed constructor from
ReclassifyExceptionAction(string classificationPolicyId, IDictionary<string, LabelValue> labelsToUpsert = null)
toReclassifyExceptionAction()
- Removed setter from
LabelsToUpsert
- Removed constructor
BestWorkerMode(RouterRule scoringRule = null, IList<ScoringRuleParameterSelector> scoringParameterSelectors = null, bool allowScoringBatchOfWorkers = false, int? batchSize = null, bool descendingOrder = true, bool bypassSelectors = false)
- Rename property
AllowScoringBatchOfWorkers
->IsBatchScoringEnabled
- Removed properties
AppKey
andFunctionKey
- Removed property
ClientSecret
- Changed
IReadOnlyDictionary<string, double> EstimatedWaitTimeMinutes
toIDictionary<int, TimeSpan> EstimatedWaitTimes
- Renamed
GreaterThanEqual
toGreaterThanOrEqual
- Renamed
LessThanEqual
toLessThanOrEqual
ChannelConfiguration
->RouterChannel
Oauth2ClientCredential
->OAuth2WebhookClientCredential
LabelValue
->RouterValue
ClassificationPolicyItem
DistributionPolicyItem
ExceptionPolicyItem
RouterQueueItem
RouterWorkerItem
RouterJobItem
RouterQueueAssignment
UpdateClassificationPolicyOptions
UpdateDistributionPolicyOptions
UpdateExceptionPolicyOptions
UpdateQueueOptions
UpdateWorkerOptions
UpdateJobOptions
GetJobsOptions
GetWorkersOptions
- Added
ETag
- Added constructor
ClassificationPolicy(string classificationPolicyId)
- Added setters to
FallbackQueueId
,Name
, andPrioritizationRule
- Added
ETag
- Added constructor
DistributionPolicy(string distributionPolicyId)
- Added setters to
Mode
andName
- Added
ETag
- Added constructor
ExceptionPolicy(string exceptionPolicyId)
- Added setter to
Name
- Added
Id
- Added
Id
. Property is read-only. If not provided, it will be generated by the service.
- Added setter to
ClassificationPolicyId
- Added
ChannelId
- Added
ETag
- Added constructor
RouterJob(string jobId)
- Added setters for
ChannelId
,ChannelReference
,ClassificationPolicyId
,DispositionCode
,MatchingMode
,Priority
,QueueId
- Added
ETag
- Added constructor
RouterQueue(string queueId)
- Added setters for
DistributionPolicyId
,ExceptionPolicyId
andName
- Added
ETag
- Added constructor
RouterWorker(string workerId)
- Added setters to
ScoringRule
andScoringRuleOptions
- Added constructor
OAuth2WebhookClientCredential(string clientId, string clientSecret)
- Added getter for ScoringParameters in ScoringRuleOptions
- Added getters for ScoringRuleOptions, ScoringRule in BestWorkerMode, FunctionUri in FunctionRouterRule, AppKey, ClientId and FunctionKey in FunctionRouterRuleCredential, and ExpiresAfter in PassThroughWorkerSelectorAttachment
This is the beta release of Azure Communication Job Router .NET SDK. For more information, please see the README.
This is a Public Preview version, so breaking changes are possible in subsequent releases as we improve the product. To provide feedback, please submit an issue in our Azure SDK for .NET GitHub repo.
- Using
JobRouterAdministrationClient
- Create, update, get, list and delete
DistributionPolicy
. - Create, update, get, list and delete
RouterQueue
. - Create, update, get, list and delete
ClassificationPolicy
. - Create, update, get, list and delete
ExceptionPolicy
.
- Create, update, get, list and delete
- Using
JobRouterClient
- Create, update, get, list and delete
RouterJob
. RouterJob
can be created and updated with different matching modes:QueueAndMatchMode
,ScheduleAndSuspendMode
andSuspendMode
.- Re-classify a
RouterJob
. - Close a
RouterJob
. - Complete a
RouterJob
. - Cancel a
RouterJob
. - Un-assign a
RouterJob
, with option to suspend matching. - Get the position of a
RouterJob
in a queue. - Create, update, get, list and delete
RouterWorker
. - Accept an offer.
- Decline an offer.
- Get queue statistics.
- Create, update, get, list and delete