Skip to content

Conversation

@inodb
Copy link
Member

@inodb inodb commented Oct 20, 2025

Adds support for automatically fetching and displaying ongoing events from an UptimeRobot status page as warning banners at the top of the portal.

image

You can add these announcements via uptimerobot:

image

Configuration (both properties required):

  • uptime_robot_status_page_url: URL of the UptimeRobot status page
  • uptime_robot_api_key: API key for the event feed endpoint

Features:

  • Automatically fetches events from UptimeRobot event feed API
  • Only displays active/ongoing events (status = 2) within their time window
  • Banner color adapts based on event severity (red/orange/blue/green)
  • Includes link to full status page for more details
  • Users can dismiss banners (stored in localStorage)
  • Status provider messages have priority over static portal messages

Architecture:

  • Uses provider pattern for easy addition of new status integrations
  • IStatusProvider interface for all status page integrations
  • UptimeRobotStatusProvider implements the interface
  • STATUS_PROVIDERS registry for enabling/disabling providers

Requires: cBioPortal/cbioportal#11759

Adds support for automatically fetching and displaying ongoing events
from an UptimeRobot status page as warning banners at the top of the portal.

Configuration (both properties required):
- uptime_robot_status_page_url: URL of the UptimeRobot status page
- uptime_robot_api_key: API key for the event feed endpoint

Features:
- Automatically fetches events from UptimeRobot event feed API
- Only displays active/ongoing events (status = 2) within their time window
- Banner color adapts based on event severity (red/orange/blue/green)
- Includes link to full status page for more details
- Users can dismiss banners (stored in localStorage)
- Status provider messages have priority over static portal messages

Architecture:
- Uses provider pattern for easy addition of new status integrations
- IStatusProvider interface for all status page integrations
- UptimeRobotStatusProvider implements the interface
- STATUS_PROVIDERS registry for enabling/disabling providers
- All provider logic self-contained (no clutter in UserMessage.tsx)

File structure:
  src/shared/lib/statusProviders/
  ├── IStatusProvider.ts
  ├── UptimeRobotStatusProvider.tsx
  ├── index.ts
  └── uptimeRobot.ts

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>

This comment was marked as resolved.

inodb added a commit to inodb/cbioportal that referenced this pull request Oct 20, 2025
Adds configuration properties for the UptimeRobot status page integration
that automatically displays service status banners in the frontend.

Changes:
- Add uptime_robot_status_page_url and uptime_robot_api_key properties
  to application.properties.EXAMPLE
- Create comprehensive UptimeRobot-Integration.md documentation
- Update application.properties-Reference.md with UptimeRobot section

Configuration:
Both properties are required to enable the integration:
- uptime_robot_status_page_url: URL of the UptimeRobot status page
- uptime_robot_api_key: API key for the event feed endpoint

Documentation covers:
- Setup and configuration instructions
- How to obtain API key from UptimeRobot
- Event filtering and display logic
- Banner styling based on severity
- Troubleshooting common issues
- Security considerations
- Architecture overview

Related frontend PR: cBioPortal/cbioportal-frontend#5282
inodb added a commit to inodb/cbioportal that referenced this pull request Oct 20, 2025
Adds configuration properties for the UptimeRobot status page integration
that automatically displays service status banners in the frontend.

Changes:
- Add uptime_robot_status_page_url and uptime_robot_api_key properties
  to application.properties.EXAMPLE
- Create comprehensive UptimeRobot-Integration.md documentation
- Update application.properties-Reference.md with UptimeRobot section

Configuration:
Both properties are required to enable the integration:
- uptime_robot_status_page_url: URL of the UptimeRobot status page
- uptime_robot_api_key: API key for the event feed endpoint

Documentation covers:
- Setup and configuration instructions
- How to obtain API key from UptimeRobot
- Event filtering and display logic
- Banner styling based on severity
- Troubleshooting common issues
- Security considerations
- Architecture overview

Related frontend PR: cBioPortal/cbioportal-frontend#5282
inodb added a commit to inodb/cbioportal that referenced this pull request Oct 20, 2025
Adds configuration properties for the UptimeRobot status page integration
that automatically displays service status banners in the frontend.

Changes:
- Add uptime_robot_status_page_url and uptime_robot_api_key properties
  to application.properties.EXAMPLE
- Create comprehensive UptimeRobot-Integration.md documentation
- Update application.properties-Reference.md with UptimeRobot section

Configuration:
Both properties are required to enable the integration:
- uptime_robot_status_page_url: URL of the UptimeRobot status page
- uptime_robot_api_key: API key for the event feed endpoint

Documentation covers:
- Setup and configuration instructions
- How to obtain API key from UptimeRobot
- Event filtering and display logic
- Banner styling based on severity
- Troubleshooting common issues
- Security considerations
- Architecture overview

Related frontend PR: cBioPortal/cbioportal-frontend#5282
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant