Essentials:
   Home
   Definition
   Requirements
   Company

Background:
   History
     1981 - NewsPeek
     1983 - GIN
     1989 - SmarTV
     1992 - GenMagic
     1994 - CDML
     1994 - Social Ads
     1996 - Venue OS
     1999 - Lumeria

Venue OS:
   DBMS
   Communications
   Message Types
   Verbs
   Events
   Examples
   Venue Cash Card
   Broadcatch

* The History Behind Broadcatch - VOS

Generic Object Communications

(rev. 0.1, 11/22/96)
This should be updated...

Communications

Messages & Notifications

Characteristics
  • bi-directional
  • asynchronous (non-blocking)
  • lightweight (ASCII)

Types

  • Identification (Machine, AppName, etc...)
  • Interest Registration (insert, update, delete)
  • setSchemaName( schemaName )
  • User Notification
  • Application Notification

Message Structure

     #Priority    -- number >= 0
     #TimeStamp   -- creation time of the message
     #Expiration  -- expiration date of the message (0 -> never expires)
     #MessageType -- TBD (from a well-known list)
     #MessageBody -- TBD (open-ended; a propertyList)
     #Recipients  -- optional propertyList; [profile/appName]@machineAddr

Data Transaction

Characteristics
  • bi-directional
  • synchronous (blocking)
  • can be binary

Types

  • getAppStyleTemplate
  • getReferenceToStationObject
  • getData

Station Class

  • Msg: Identification (Machine, etc...)
  • D/T: createStationObject (all generic data for apps)

Client Application Initialization Process

Base Class Initialization

  • put getReferenceToStationObject into pStation
    • put initializeConnection into pConnection
  • Msg: setSchema( schemaName )
  • Msg: Identification (AppName, etc...)
  • D/T: put getAppStyleTemplate(AppName) into pAppStyle
  • Msg: Interest Registration (non-app-specific default messages e.g., non-blocking system messages)
  • pMessageHandler will point to a generic, possibly ugly, default message handler that clients may override using setMessageHandler

Base Class Methods

  • sendMessage(propertyList)

Sub-Class Initialization

  • Customize UI according to pAppStyle
  • Msg: Interest Registration (app-specific)
  • startMovie (perform app-specific initializations)

Sub-Class Destructor

  • write userPreferences for any logged-on users

Base Class Destructor

  • send terminateApplication(AppName) -- unregisters Interests, kill app-specific message, etc...

Client Application onIdle Loop

  • checkForMessagesStart(minPriority) -- returns a message as a propertyList (or void)
  • checkForMessagesNext -- returns next message propertyList (or void)
  • checkForMessagesEnd -- prematurely terminate the iterator

Message Types

Interest Registration Enumerations (the message body)

     [#onTableChange  : tableName]
     [#onQueryChange  : query] -- under consideration

Connection Class: pConnection

     [#connectionType : string ] -- RAW, FTP, etc...
     [#port : integer ]          --
     [#hostAddress : ipNumber ]  --
     [#socket : sockaddr_in ]    -- the handle used for reading and writing
      ...

Private Methods of pConnection

     bind
     connect
     accept
     close
     put onSend(message) into cookie
     put onRecv(cookie) into message
   Copyright © 1994-2007, Fen Labalme and CoMedia Consulting. All Rights Reserved.
Broadcatch is built on the OpenPrivacy Platform
I wish this
site were
Drupal Strategy and Consulting
This Site Supports Free Speech