Azure / Azure/azure-sdk-for-rust

[Service Bus] Add AMQP over WebSockets transport

Open
#4,955 0 comments 1 reaction 0 assignees View on GitHub
Client feature-request Service Bus
Dominant language
Rust
Stars
884
Forks
365
Avg merge
2d 19h
Merged PRs (30d)
109

Description

## Summary

The crate speaks AMQP over TCP on port 5671 only. There is no WebSockets transport, and `ServiceBusClientOptions` has no transport selector.

## Motivation

`ServiceBusTransportType` offers `AmqpTcp` and `AmqpWebSockets`. Callers behind a firewall that allows only port 443 need the WebSockets transport, and it is a common request for both messaging SDKs.

Event Hubs solved the same problem in this repository in PR #4596, so the transport work, the feature flags, and the TLS provider choice are already settled and can be reused.

## Proposal

- Add an AMQP over WebSockets transport on port 443.
- Follow the feature flag layout that Event Hubs adopted in PR #4596.
- Add a transport selector to the client options.

## Dependencies

Blocked by:

- #4940 [Service Bus] Add a recoverable connection and link layer

Sub-issue of #4934.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing ServiceBusClientOptions and ServiceBusTransportType, then study the transport, feature flags, and TLS choices in Event Hubs PR #4596. Check the recoverable connection and link layer from blocked issue #4940 before starting. Done means Service Bus supports the WebSockets transport on port 443 and callers can select it through the client options.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, rust
Domain
api, networking
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.