An Airtime Drupal module should serve as a translator between the Airtime APIs (either PHP or XML-RPC) and the Drupal core API, as well as that of relevant Drupal modules.
One task will be to determine which Drupal modules will be required, but this would presumably include CCK and Calendar, but could possibly include others.
The first version of this functionality should only include sending information from Airtime to Drupal (for displaying 'Now Playing' information, for example, or displaying the items scheduled in a Drupal calendar). Later functionality should allow Drupal to send certain information (such as uploading a file or sending metadata) to the StorageServer via Airtime's APIs.
In this first phase, the Airtime Drupal module would go one way, Airtime->Drupal: Converting the output of the Airtime API and inputting that output via the Drupal API. To go back to the example of the 'Now playing' info, the Airtime 'Now playing' method would output the Song name, Title and Playlist name. This output would then be polled by the Drupal module (make this RESTful?) on a regular basis and then route this input to fields called "Song Name," "Title" and "Playlist" in the Drupal CCK module.
Another example would be the calendar view for the Airtime schedule. On a user action (such as clicking on a "View schedule" link), the Drupal module would poll Airtime's schedule, request the HTML+CSS output as it is displayed in the Airtime HTML UI and input this also into CCK. It may also be better to input each playlist entry into the Drupal Calendar module as events. This would mean that the output from the PHP API would be converted to Drupal API-friendly input.
It would be good if certain information could be written to items in the Airtime Storageserver, or that the Scheduler itself would be controlled. This, however, would require a means of unifying authentication for these actions. An example would be to allow files to be uploaded to the StorageServer from Drupal, or to allow Drupal to edit metadata.
In general, if the StorageServer and Scheduler APIs are fully abstracted and well-documented, a Drupal CMS (or other CMS) could conceivably serve as the HTML UI.
1) A mid-sized community radio station already has a Drupal-powered presence, and want to integrate Airtime because of its 'Now Playing' abilities and other functionality. They have a webmaster on staff and
2) A new radio station wants to set up their new Airtime installation, and wants to build a simple Drupal-powered site