feat(region): add multi-region endpoint and workspace support - #189
Open
luk384090-cloud wants to merge 4 commits into
Open
feat(region): add multi-region endpoint and workspace support#189luk384090-cloud wants to merge 4 commits into
luk384090-cloud wants to merge 4 commits into
Conversation
- Introduce `set_region(region, workspace_id)` to switch HTTP, WebSocket, and OpenAI-compatible endpoints
- Add support for MaaS international regions including Singapore, US East, Hong Kong, Germany, Japan, besides Beijing
- Enable environment variable configuration for region and workspace ID
- Implement runtime resolution of endpoint URLs with `{workspace_id}` placeholder substitution
- Update internal API methods to support per-call workspace parameter for endpoint resolution
- Enhance documentation with detailed usage examples of multi-region configuration
- Add comprehensive unit tests covering region switching, URL resolving, and environment variable handling
API keys cannot be mixed across regions (401 on mismatch), so document this next to set_region in both READMEs and the sample. Also document US -us model suffix, EU/JP workspace deployment scope, feature availability limits, and shared-domain overrides. Derive the set_region region list from env.MAAS_REGIONS to prevent drift.
Per the official realtime WebSocket API docs, wss endpoints exist only for cn-beijing and ap-southeast-1; set_region still sets the URL for other regions, so warn that WS-based realtime APIs are unavailable there.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
set_region(region, workspace_id)to switch HTTP, WebSocket, and OpenAI-compatible endpoints{workspace_id}placeholder substitutionDescription
[Describe what this PR does and why]
Related Issue: Fixes #[issue_number] or Relates to #[issue_number]
Security Considerations: [Check if API keys or sensitive credentials are exposed in code/logs]
Type of Change
Component(s) Affected
Checklist
Testing
[How to test these changes]
Additional Notes
[Optional: any other context]