Skip to content

fix(import): correct ScreenCloud endpoints/download; broaden Yodeck files - #3152

Merged
vpetersson merged 2 commits into
masterfrom
fix/screencloud-live-verification
Jul 8, 2026
Merged

fix(import): correct ScreenCloud endpoints/download; broaden Yodeck files#3152
vpetersson merged 2 commits into
masterfrom
fix/screencloud-live-verification

Conversation

@vpetersson

Copy link
Copy Markdown
Contributor

Issues Fixed

Corrections to the import providers found while testing them, plus doc/copy fixes.

Description

ScreenCloud

  • Use the correct production GraphQL endpoints (graphql.{eu,us}.screencloud.com); the previously-assumed *.next.sc hosts do not resolve.
  • Auto-detect the account region by probing both endpoints, so the operator does not have to know or specify EU vs US. An explicit eu:/us: prefix still works as an override.
  • Download the original from File.source (the fileOutputsByFileId renditions can be empty).

Yodeck

  • Import transcoded videos via arguments.play_from_url.
  • Fall back to the resized render (thumbnail_url) for uploaded images whose original is not exposed by the API, instead of skipping them.
  • Accept a bare token (the label: prefix is optional).

Docs / UI

  • The import doc now lists every supported provider (no external links).
  • Removed em-dashes from the import doc and the wizard help text.

Providers reuse the shared ingest/http/graphql layer; tests updated and pass (ruff, mypy, pytest all green).

Checklist

  • I have performed a self-review of my own code.
  • New and existing unit tests pass locally and on CI with my changes.
  • I have done an end-to-end test for Raspberry Pi devices.
  • I have tested my changes for x86 devices.
  • I added a documentation for the changes I have made (when necessary).

🤖 Generated with Claude Code

…iles

ScreenCloud:
- use the correct production endpoints (graphql.{eu,us}.screencloud.com)
- auto-detect the region by probing, so the operator need not specify it
- download the original from File.source (fileOutputs can be empty)

Yodeck:
- import transcoded videos via arguments.play_from_url
- fall back to the resized render (thumbnail_url) for uploaded images whose
  original is not exposed by the API
- accept a bare token (the label prefix is optional)

Docs/UI:
- list every supported provider on the import doc (no external links)
- remove em-dashes from the import doc and the wizard help text

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
@vpetersson
vpetersson requested a review from a team as a code owner July 8, 2026 10:04
@vpetersson vpetersson self-assigned this Jul 8, 2026
@vpetersson
vpetersson requested a review from Copilot July 8, 2026 10:04

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR corrects and improves the “import from other platforms” providers (notably ScreenCloud and Yodeck) based on real-world testing, and updates docs/UI copy accordingly.

Changes:

  • ScreenCloud: switch to the production regional GraphQL endpoints, auto-detect region by probing, and download from File.source (with outputs as fallback).
  • Yodeck: broaden file URL resolution (including transcoded video URLs) and add an image thumbnail fallback when originals aren’t exposed; loosen token input expectations.
  • Docs/UI: update supported-platforms copy and revise help text to remove em-dashes and reflect new credential guidance.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
website/content/docs/importing-content-from-other-platforms.md Updates supported platform list and import behavior wording.
src/anthias_server/lib/integrations/yodeck.py Expands URL resolution for Yodeck media downloads and updates token help text.
src/anthias_server/lib/integrations/screencloud.py Fixes ScreenCloud endpoints, adds region autodetection + caching, and changes download URL selection.
src/anthias_server/lib/integrations/xibo.py Minor token help text punctuation change.
src/anthias_server/lib/integrations/pisignage.py Minor token help text punctuation change.
src/anthias_server/api/tests/test_yodeck_import.py Updates/extends unit tests for new Yodeck file resolution behavior.
src/anthias_server/api/tests/test_screencloud_import.py Adds tests/fixtures for ScreenCloud region detection and source download URL behavior.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/anthias_server/lib/integrations/screencloud.py
Comment thread src/anthias_server/lib/integrations/screencloud.py Outdated
Comment thread website/content/docs/importing-content-from-other-platforms.md Outdated
Comment thread website/content/docs/importing-content-from-other-platforms.md Outdated
- ScreenCloud: an explicit region prefix now bypasses the auto-detection
  cache (was consulted first); cache is keyed by a one-way token hash so no
  credential is retained in memory
- docs: reword so images/videos may be a non-original rendition and only
  items with no downloadable URL are flagged for manual re-upload
- drop em-dashes from the provider docstring titles

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
@sonarqubecloud

sonarqubecloud Bot commented Jul 8, 2026

Copy link
Copy Markdown

@vpetersson
vpetersson merged commit d641a47 into master Jul 8, 2026
9 checks passed
@vpetersson
vpetersson deleted the fix/screencloud-live-verification branch July 8, 2026 10:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants