1. Knowledgebase
  2. Technical API Documentation

NowSignage Application: Content Download Process

Technical information on the NowSignage content download process.

Step 1: User uploads content to CMS

  • Users log in to the NowSignage CMS via a secure web interface.
  • Content can include static images (e.g., JPEG, PNG) or videos (e.g., MP4, MOV).
  • Uploaded files are verified for size and format compatibility (maximum size per file is 5 GB).
  • Files are securely stored on NowSignage servers, with encryption applied to ensure data integrity.
  • The CMS provides feedback to the user, confirming successful uploads or identifying issues. For any upload issues, a failed processing error ID will appear.

Step 2: If uploaded content is a video

  • If the uploaded file is identified as video, the system sends the video to AWS MediaConvert for processing.
  • MediaConvert converts the video to the selected default codec in the NowSignage CMS (VP8, VP9, or H264), ensuring playback compatibility across a wide range of devices and operating systems.
  • Conversion includes optimising file size while maintaining quality for efficient delivery.
  • Once converted, the video is securely stored in a designated media repository on NowSignage servers.
  • The system notifies the customer that their video is ready for use (the processing thumbnail will disappear and the video thumbnail will appear once processed).

Step 3: Assign content to screen(s)

  • Users select screens or groups of screens from their CMS dashboard.
  • Content is added to NowSignage playlists, allowing precise scheduling for:
  • Immediate playback: The request to download the new content is sent. Then the NowSignage application will receive this request within the 5-minute polling interval and begin downloading the content.
  • Scheduled playback: Content is configured to play at a specific date and time. This will send the request to download the new content at the specified time. Then the NowSignage application will receive this request within the 5-minute polling interval and begin downloading the content.


Step 4: Device communicates with NowSignage API

  • Devices running the NowSignage application automatically connect to the api.nowsignage.com endpoint every 5 minutes.
  • Purpose of communication:
  • Perform a health check to confirm the device is online and operational.
  • Check for updates in the assigned playlist or content schedule.
  • Communication is:
  • Outbound only, ensuring the device initiates the connection.
  • Secure, using HTTPS with SSL/TLS encryption over Port 443.
  • If no updates are detected, the system logs the check-in but takes no further action.

Step 5: Content download

  • If an update is detected (e.g., new content in the playlist), the device initiates a secure download:
  • Connects to the media.nowsignage.com endpoint via HTTPS.
  • Downloads the new content in chunks to ensure data integrity.
  • The download duration entirely depends on the network speed on the device. There is no timeout period for downloads, so the download will continue indefinitely until it has reached completion.
  • During the download process, the front-end application will display a ‘downloading’ icon in the bottom left corner of the application. This will state the name of the file it is currently downloading. Once the file is downloaded, this message will disappear.
  • The system verifies the file’s checksum upon completion to ensure no corruption occurred during transit.

Step 6: Content caching and playback

  • Network requirements:
  • A minimum download speed of 5 Mbps per device is required for uninterrupted operation.
  • The device must maintain a stable connection during the file download process. If the connection fails during the downloading process, the download will fail, and the device will need reconnecting to the network for the download to be re-attempted.
  • Once the file is downloaded 100%, it is cached locally on the device’s storage (e.g., SSD or internal memory).
  • Content is played directly from local storage, reducing bandwidth usage by avoiding live streaming.
  • Cached files remain available for offline playback, ensuring continuous operation even if the network goes down.
  • Playback adheres to the playlist rules defined in Step 3 (e.g., scheduled times, looping).

High Level Data Flow Diagram: