MOS object

Embed Size (px)

Citation preview

  • 8/12/2019 MOS object

    1/227

    Media Object Server (MOS)

    Protocol v3.8.3Web Services

    MOS Protocol version 3.8.3Document Revision 10Revision Date: Monday, October 09, 00!

    Copyright Notice

    "o#yri$%t 000, 001, 00, 003, 00&, 00', 00! (ll Ri$%ts Reserved.

    Licese

    )%is document is #rovided to *ou under t%e conditions outlined belo+. )%eseconditions are desi$ned to $uarantee t%e inte$rity o t%e MOSProtocol and to

    ensure t%e com#atibility o solutions im#lementin$ t%e MOSProtocol. -se or

    im#lementation o t%e MOSProtocol as described %erein, may only occur i *oua$ree to t%ese conditions. ailure to ollo+ t%ese conditions s%all void t%islicense. /*ou s%all mean you as an individual, or, +%ere a##ro#riate, t%ecom#any or ot%er entity on +%ose be%al you are usin$ t%is document, and

    includes any entity +%ic% controls, is controlled by, or is under common control+it% *ou.

    *ou must a$ree to t%e ollo+in$ in order to use t%e MOSProtocol:1. *ou must use and im#lement all messa$es deined by t%e MOS #rotocol

    MOS 3.8.3 Proiles listed belo+ #er t%e #roiles su##orted by your device.. *ou may not modiy messa$e names, order o deined ta$s +it%in a

    messa$e, ta$ structure, deined values, standards and constants.3. *ou may not #rocess messa$es in a means t%at is de#endent on non

    standard messa$es, ta$s or structures.&. *ou may add additional ta$s to messa$es, but t%e modiied messa$es must

    contain t%e deined minimum re2uired ta$s or eac% messa$e, in t%e orderdeined by t%is document.

    '. m#lementations o t%e MOS Protocol ollo+in$ t%e above $uidelines mayclaim to be /MOS"om#atible or /MOS v3.8.3 "om#atible

  • 8/12/2019 MOS object

    2/227

    !. *ou add additional ta$s, it is stron$ly recommended t%ese be included andenca#sulated only +it%in t%e #rovided 4mos56ternalMetadata7 structureand not inserted into t%e #redeined body o t%e messa$e.

    . *ou are not allo+ed to mae re#resentations o MOS "om#atibility unlessyou %ave ollo+ed t%ese $uidelines.

    !bstract

    MOSis a seven year old, evolvin$ #rotocol or communications bet+eene+sroom "om#uter Systems ;"S< and Media Ob=ect Servers ;MOS< suc% as>ideo Servers, (udio Servers, Still Stores, and "%aracter ?enerators. )%e MOSProtocol develo#ment is su##orted t%rou$% coo#erative collaboration amon$e2ui#ment vendors, sot+are vendors and end users.

    Stat"s o# this doc"$et

    )%is document relects c%an$es to t%e MOS #rotocol discussed durin$ t%e MOSmeetin$s at (@ 00! and @" 00' and is reerred to as MOS v3.8.3. )%is ist%e inal drat. "%an$es are summariAed %ere.

    %o& to "se this doc"$et

    )%e document contains boomars and %y#erlins. )%e )able o "ontents andot%er areas contain underlined #%rases. De#endin$ on t%e vie+er a##licationused, clicin$ or double clicin$ on underlined lins +ill tae t%e vie+er to t%erelevant #ortion o t%e document.

    Please mae s#ecial note o t%e Proiles section +%ic% #rovides conte6t or t%euse o command messa$es +%ic% are later deined in detail.56am#les o eac% MOS messa$e and data structure are included. )%esemessa$es may be used or testin$. Develo#ers are encoura$ed to cut t%esemessa$es rom t%e document, c%an$e t%e value o D ta$s as a##ro#riate, and#aste t%e modiied messa$es into validation tools. Ot%er t%an t%ese e6am#lemessa$es, validation tools are not #rovided by t%e MOS ?rou#.

    http://www.mosprotocol.com/http://www.mosprotocol.com/
  • 8/12/2019 MOS object

    3/227

    Media Object Server Protocol v3.8.3

    'able o# Cotets

    . . trod"ctio

    *. MOS Pro#iles

    *.. Pro#ile + , -asic Co$$"icatio

    *.*. Pro#ile -asic Object -ased Wor/#lo&

    *.3. Pro#ile * , -asic 0"ig Order 1 Cotet List Wor/#lo&

    *.2. Pro#ile 3 , !dvaced Object -ased Wor/#lo&

    *.. Pro#ile 2 , !dvaced 0O1Cotet List Wor/#lo&

    *.4. Pro#ile , te$ Cotrol

    *.5. Pro#ile 4 , MOS 0edirectio

    *.8. Pro#ile 5 , MOS 0O1Cotet List Modi#icatio

    3. Media Object Server Protocol Message 6e#iitio

    7$os (Media Object Server) #a$ily o# Messages

    3.. -asic Object Co$$"icatio3.1.1. mos(c (cno+led$e MOS Ob=ect Descri#tion3.1.. mosOb= MOS Ob=ect Descri#tion3.1.3. mosRe2Ob= Re2uest Ob=ect Descri#tion

    3.*. Object 0esychroi9atio 1 0ediscovery3..1. mosRe2(ll Re2uest (ll Ob=ect Data rom MOS3... mosBist(ll Bistin$ o (ll Ob=ect Data rom MOS

    $os0e:ObjList#a$ily o# $essages

    3..3 3..3 mosRe2Searc%ableSc%ema3..& 3..& mosBistSearc%ableSc%ema

  • 8/12/2019 MOS object

    4/227

    3..' 3..' mosRe2Ob=Bist3..! 3..! mosOb=Bist

    3.3. Object ad te$ Maage$et3.3.1. mosOb="reate C Mos Ob=ect "reate

    3.3.2. mostemRe#lace C Re#lace an tem Reerence in an "SStory +it% u#dated tem sent rom t%e MOS3.3.3 mosRe2Ob=(ction C "S re2uests action on MOS ob=ect

    7ro (0"ig Order) #a$ily o# $essages

    3.2. ro Playlist Costr"ctio

    3.&.1. ro(c (cno+led$e Runnin$ Order3.&.. ro"reate C "reate Runnin$ Order3.&.3. roRe#lace Re#lace Runnin$ Order3.&.&. roMetadataRe#lace C Re#lace t%e metadata associated +it%

    a RO Playlist3.&.'. roDelete Delete Runnin$ Order

    3.. ro Sychroi9atio; 6iscovery < Stat"s3.'.1. roRe2 Re2uest Runnin$ Order3.'.. roBist Bist Runnin$ Order3.'.3. roRe2(ll Re2uest (ll Runnin$ Order Descri#tions3.'.&. roBist(ll Bist (ll Runnin$ Order Descri#tions3.'.'. roReady)o(ir dentiy a Runnin$ Order as Ready to (ir

    3.4. ro Story ad te$ Se:"ece Modi#icatio

    3.!.1. ro5lement(ction C Perorms s#eciic (ction on a Runnin$

    Order

    3.5. ro Cotrol ad Stat"s #eedbac/

    3..1. ro5lementStat C Status o a Sin$le 5lement in a MOSRunnin$ Order

    3... rotem"ue C otiication o an tem 5vent3..3. ro"trl C Runnin$ Order "ontrol

    3.8. Metadata =>port

    3.8.1. roStorySend C Sends story inormation, includin$ body, romRunnin$ Order

    3.?. MOS 0O1Cotet List Modi#icatio

    3.9.1. roRe2Story(ction C MOS re2uests action on "S story

  • 8/12/2019 MOS object

    5/227

    2. Other $essages ad data str"ct"res

    2.. Other $essages ad data str"ct"res&.1.1. %eartbeat "onnection "onidence ndicator

    &.1.. re2Mac%no Re2uest Mac%ine normation&.1.3. listMac%no Mac%ine Descri#tion Bist&.1.&. mos56ternalMetadata C Met%od or includin$ and

    trans#ortin$ Metadata deined e6ternal to MOS&.1.'. mostemReerence C Metadata bloc transerred by (ctive

    "ontrols&.1.!. messa$eD C -ni2ue dentiier or Re2uests&.1.. ob=Pat%s C -nambiguous pointers to media files

    . !ctive@ Cotrol Speci#icatio

    . Methods; =vets ad 6ata 'ypes.* -ehavior

    .3 !ctive@ Co$$"icatio $essages

    '.3.1. '.3.1 ncs(c (cno+led$e messa$e'.3.. '.3. ncsRe2(##no C Re2uest (##lication inormation and

    conte6t'.3.3. '.3.3 ncs(##no C (##lication inormation and conte6t'.3.&. '.3.& ncsRe2(##Mode C Re2uest to run Plu$n in dierent

    siAe +indo+'.3.'. ncsStoryRe2uest'.3.!. '.3.! ncstemRe2uest C Re2uest t%e "S Eost or (ctive

    Plu$n to send an tem'.3.. roStorySend'.3.8. '.3.8 ncstem C (llo+s eit%er t%e (ctive Plu$n or "S

    Eost to send an tem Reerence to t%e ot%er a##lication'.3.9. mostemRe#lace

    6. Aield 6escriptios

    5. 0ecet Chages

  • 8/12/2019 MOS object

    6/227

    8. MOS 3.8.* WS6L

    ?. 0e#ereces ad 0eso"rces9.1. MOS Protocol Feb Pa$e9.. FSDB (G9.3. Recommended Readin$9.&. FSDB Feb Sites

  • 8/12/2019 MOS object

    7/227

    . trod"ctio

    )%is document relects c%an$es to t%e MOS #rotocol discussed durin$ t%e MOSForin$ ?rou# meetin$s at (@ 00! and @" 00'.

  • 8/12/2019 MOS object

    8/227

    *. MOS Pro#iles

    )%e #ur#ose o t%ese #roiles is to deine basic levels o unctionality enabled by

    t%e MOS Protocol v3.8.3.)%ere are seven Proiles deined:

    Proile 0 C @asic "ommunicationsProile 1 C @asic Ob=ect @ased Forlo+Proile C @asic Runnin$ OrderH"ontent Bist Forlo+Proile 3 C (dvanced Ob=ect @ased Forlo+Proile & C (dvanced ROH"ontent Bist Forlo+Proile ' C tem "ontrolProile ! C MOS Redirection

    Proile C MOS ROH"ontent Bist Modiication>endors +is%in$ to claim MOS com#atibility must ully su##ort, at a minimum,Proile 0 and at least one ot%er Proile.F%en claimin$ MOS com#atibility or usin$ t%e MOS Bo$o, vendors must clearlystate +%ic% #roiles o one t%rou$% si6 t%ey su##ort. or instance /MOS"om#atible C Proiles 1,,3,&,!n order to claim su##ort or a s#eciic #roile t%e vendor must ully im#lement allmessa$es in t%e manner s#eciied by t%e #roile. n addition, t%e vendor must

    ully im#lement and su##ort t%e +orlo+ described by t%e #roile. a vendor does not state #roile su##ort, or does not su##ort all messa$es orunctionality described by a #roile, or does not su##ort at least t+o #roiles, oneo t%em bein$ Proile 0, t%ey cannot claim MOS com#atibility.O#tional unctionality is clearly identiied +it% t%e +ord /O#tional or +it% t%e#%rase /Recommended For Practice in bold, ollo+ed +it% o#tional inormationin italics.

    (ll ot%er unctionality is re2uired.

    )%e #ur#ose o MOS Proiles is to describe minimum levels o unctionality andsu##ort. >endors are encoura$ed to derive more com#le6 levels o unctionalityrom any Proile so lon$ as su##ort is maintained or t%e basic #roile and MOSsynta6 and trans#ort rules are not com#romised.

  • 8/12/2019 MOS object

    9/227

    *. Pro#ile + , -asic Co$$"icatio

    )%is Proile enables basic MOS MB messa$e e6c%an$e and discoverybet+een a##lications and mac%ines usin$ Feb Services via E))P.

    Messages re:"ired #or s"pport o# Pro#ile +B

    %eartbeatre2Mac%nolistMac%no

    eeral Wor/ Alo& #or Pro#ile +

    5stablis% communication to anot%er MOS device "all a %eart@eatmet%od rom anot%er a##lication and receive a

    %eartbeatdataty#e in res#onse

    "all a re2Mac%nomet%od rom anot%er a##lication and receive alistMac%nodataty#e in res#onse.

    $ple$etatio Notes)%is Proile encom#asses t%e most basic re2uirements and unctions tosu##ort MOS Protocol messa$e transer. )%e t%ree basic met%odsincluded in t%is #roile, %eart@eat, re2Mac%noand listMac%nocan bee6c%an$ed bet+een any MOS v3.8.3 com#liant devicesPro#ile + re:"ired MOS $ethod s"pport

    heartbeat)%e %eartbeat messa$e is desi$ned to allo+ one a##lication toconirm to anot%er t%at it is still alive and communications bet+eent%e t+o mac%ines is viable.

    (n a##lication +ill res#ond to a %eartbeat messa$e +it% a%eartbeat dataty#e.

  • 8/12/2019 MOS object

    10/227

    0eco$$eded Wor/ PracticeB It is useful for a MOS Protocolenabled application to be aware of the three levels of connectivitywhich are required for MOS data exchange:

    1) etwor! "onnectivity: #ou $ust be able to %Ping& there$ote $achine hosting the application with which you wishto co$$unicate'

  • 8/12/2019 MOS object

    11/227

    eeral =>plaatio o# MOS $essage #or$at ad costr"ctio

    deti#icatio

    n #ractice t%e MOS and "S c%aracter names are#redeined in eac% system and P addresses associated +it%eac% name.

    =codig

    )%e su##orted c%aracter encodin$ is SO 10!&! ;-nicode< in-)8, as deined in )%e -nicode Standard, version &.0.

    MOS Message Aor$at

    )%e MOS Protocol Feb Service uses MB as t%e nteracedescri#tion lan$ua$e ;DB

  • 8/12/2019 MOS object

    12/227

    and a convention or re#resentin$ remote #rocedure callsand res#onses.

    MOS %eader5ac% MOS +eb service met%od contains t%e mosEeader

    com#le6 dataty#e. )%e mosEeaderJty#e enca#sulates t%emosD, ncsD, and messa$eD. )o #revent namin$ conlicseac% met%od contains a com#le6 ty#e or eac% MOS met%odand is named lie so: /met%odameJty#e. or e6am#le,%eartbeatJty#e.

    6ata Aor$at #or Object DdescriptioE #ield

    )%e value o Ob=ect 4descri#tion7is restricted to #lain-nicode -"S te6t t%at includes )ab, "R, B and t%eo#tional maru# or #ara$ra#%s, tabs and em#%asis.

    ormatted te6t suc% as E)MB, R), etc. +ill not be allo+edin t%e unstructured descri#tion area.

    Lag"ages)%e ollo+in$ rules a##ly:

    Data ta$s and meanin$ul constants ;lie -PD()5endor, can be instantiated +it%in t%e "S -. )%is (ctivecontrol %as t%e ability to orm an tem Reerence and #ass it to t%e"S or inte$ration as an tem Reerence into a Story. ;See t%eMOS v.8. (ctive S#eciicationchagig Messages bet&ee MOS devices)o send one o t%e /ro"onstruction messa$es rom an "S to a MOS:

    1

  • 8/12/2019 MOS object

    26/227

    a MOS device receives a messa$e rom t%e "S +%ic% reerences an4roD7 or 4storyD7 +%ic% is not no+n to t%e MOS +it%in t%e conte6t ot%e a##lication o t%e messa$e, t%en t%e MOS device +ill assume t%ere%as been a #rior error in communication +it% t%e "S. )%e MOS +ill t%enre2uest a ull list o t%e Runnin$ OrderH"ontent Bist rom t%e "S via t%e

    4roRe27 messa$e to t%e "S and t%e 4roBist7 res#onse to t%e MOS.or instance, i a MOS device receives an 4ro5lement(ction7messa$e +%ic% reerences an unno+n 4roD7, 4storyD7 or4itemD7, t%e MOS device +ill send an 4roRe27 messa$e to t%e"S +%ic% includes t%e 4roD7. )%e "S +ill t%en res#ond +it%an 4roBist7 messa$e +%ic% includes t%e entire current conte6t ot%e ROH"ontent Bist.

    0eco$$eded Wor/ PracticeB %ro& $essages allow the "S todyna$ically trans$it a sequence of ob0ects to a MOS device' he MOS

    device then deter$ines what to do with this list' In the case of video andaudio equip$ent4 this list fro$ the "S often represents the sequence tobe played on air' ;ust because content is presented in an ordered listdoes not i$ply an absolute need to actually execute the list in order'Specific applications $ay allow users to %hop around& and execute the listout of order without actually changing the list'$portat NoteB or any reason t%e se2uence o t%e Runnin$OrderH"ontent Bist on t%e MOS device is intentionally c%an$ed suc% t%at itno lon$er re#resents t%e se2uence as transmitted rom t%e "S, t%e MOSdevice +ill immediately send a series o 4ro5lementStat7 messa$es to t%e"S +it% a 4status7 o /DS"O5")5D and ("L all subse2uent /romessa$es +it% a 4status7 o /DS"O5")5D.

    )%e MOS device can recover sync%roniAation +it% t%e "S by sendin$ an4roRe27 messa$e to t%e "S and receivin$ a ull 4roBist7 messa$e inreturn. normation in t%e 4roBist7 messa$e +ill be used to re#lace t%e list#reviously modiied t%rou$% user in#ut in t%e MOS device.)%e MOS device can o#tionally send an 4ro5lementStat7 messa$e to t%e"S indicatin$ t%e ROH"ontent Bist is under manual or "S control.

  • 8/12/2019 MOS object

    27/227

    )%e 4ro5lement(ction7 messa$e in MOS v.8 unctionally re#laces t%eollo+in$ messa$es used in older versions o t%e #rotocol:

    roStory(##endroStorynsert

    roStoryRe#laceroStoryMoveroStoryMoveMulti#leroStoryS+a#roStoryDeleterotemnsertrotemRe#lacerotemMoveMulti#lerotemDelete

    )%e 4roReady)o(ir7 messa$e, sent rom t%e "S to t%e MOS device, isused to indicate t%at a s#eciied ROH"ontent Bist is editorially a##roved ornot a##roved or out#ut. )%is messa$e %as no direct im#act on MOSmessa$e lo+ or se2uencin$. t is u# to individual vendors and customersto determine +%at +or #ractices and unctionality may be lined to t%ismessa$e.

  • 8/12/2019 MOS object

    28/227

    *.2 Pro#ile 3 , !dvaced Object -ased Wor/#lo&

    )%is Proile allo+s an "S to re2uest a Media Ob=ect Server to create ane+ ob=ect +it% s#eciic #ro#erties, attributes and metadata descri#tion. t

    also allo+s a Media Ob=ect Server to re#lace an tem Reerenceembedded +it%in a s#eciic StoryHRunnin$ Order, and re2uest t%at a MOSdevice return a list o mosOb= descri#tions +%ic% meet certain searc%criteria..

    additio to s"pport #or Pro#iles +; ad *; these additioal MOSProtocol Messages $"st be s"pported #or Pro#ile 3B

    mosOb="reate

    mostemRe#lace

    mosRe2Ob=Bistamily o messa$es

    mosRe2Searc%ableSc%emamosBistSearc%ableSc%emamosRe2Ob=BistmosOb=Bist

    mosRe2Ob=(ction

    eeral Wor/ Alo& #or Pro#ile 3

    'he D$osObjCreateE ad D$os0e:Obj!ctioE $essages

    (n "S or "S user +is%es to create a ne+ ob=ect on a MediaOb=ect Server.

    )%e "S sends a re2uest to t%e Media Ob=ect Server, via t%e

    4mosOb="reate7 messa$e, to create a ne+ Ob=ect or Place Eolderto t%e Media Ob=ect Server.

    Fit%in t%e 4mosOb="reate7 messa$e t%e "S sends a descri#tion

    and metadata or t%e ne+ ob=ect.

    )%e Media Ob=ect Server res#onds +it% a 4mos(c7 messa$e,+%ic% includes:

    o t%e ob=ect +as created, a 4status7 value o /("L and a

    4statusDescri#tion7 +%ic% contains t%e ne+ 4ob=D7 value.

  • 8/12/2019 MOS object

    29/227

    o t%e ob=ect +as not created, a 4status7 value o /("L and a

    4statusDescri#tion7 +%ic% contains a te6tual error messa$e.

    t%e Ob=ect +as created as a result o t%e re2uest, t%e Media

    Ob=ect Server also sends a ne+ 4mosOb=7 messa$e on t%e lo+er#ort. )%is messa$e +ill contain t%e ull ob=ect descri#tion, #ointerand metadata.

    )%e "S may also modiy or delete t%e Ob=ect or Place%older t%at

    it created, usin$ t%e mosRe2Ob=(ctionmessa$e.

    0eco$$eded Wor/ PracticeB Media Ob0ects created with this

    $essage $ay be either real or virtual'

  • 8/12/2019 MOS object

    30/227

    )%e "S +ill send a urt%er and inde#endent4roStoryRe#lace7, 4rotemRe#lace7, or 4ro5lement(ction7messa$e, +%ic% t%e Media Ob=ect Server must acce#t and ("L.

    Proile & is su##orted, t%e "S +ill also send an inde#endent

    4roStorySend7 messa$e +%ic% must also be acce#ted and("LId.

    'he D$os0e:ObjListE #a$ily o# $essages or a $eneral searc%, t%e "S or "S "lient sends a mosRe2Ob=Bist

    messa$e +it% a sim#le searc% strin$ as t%e value o t%e4$eneralSearc%7 ta$.

    o Bo$ical o#erators are allo+ed in t%is strin$.

    o )%e MOS devices +ill searc% its database or t%is $eneral

    searc% term. )%e internal data ields to +%ic% t%e MOS a##liest%is searc% term is determined by t%e MOS.

    or a ield s#eciic searc%, t%e "S or "S client must irst as t%eMOS device or a list o ield deinitions, in t%e orm o a sc%ema

    o )%e "S or "S client sends a mosRe2Searc%ableSc%emamessa$e to t%e MOS.

    o )%e MOS returns a list o sc%ema #ointers, in t%e orm o -RIs,

    to t%e "S or "S client in t%e mosBistSearc%ableSc%emamessa$e.

    o t%e mosBistSearc%ableSc%ema messa$e contains no -RIs,t%en t%e "S s%ould reco$niAe t%at t%e MOS device does notsu##ort ield s#eciic searc%in$.

    o )%e "S or "S client t%en retrieves t%e sc%ema and s#eciiesield;s< to searc% +it% t%e value o t%e 4searc%ield7 ta$;s< int%e mosRe2Ob=Bist messa$e.

    o Multi#le 4searc%ield7 ta$s can be included in +it%in a sin$le4searc%?rou#7 structure. (ll 4searc%ield7 ta$s +ill be lo$ically/(Ded.

    o Multi#le 4searc%?rou#7 structures can be included. )%ese +ill

    be lo$ically /ORed. )%e MOS device t%en returns a se2uence o mosOb= messa$es +%ic%

    meet t%e searc% criteria.o )%ese messa$es are enca#sulated in t%e mosOb=Bist messa$e.

    o )%e inormation in t%e mosOb= messa$es, includin$ ob=Ds canbe used as normal by t%e "S or "S "lient.

    t is recommended t%at t%is amily o messa$es be used to resync%roniAe t%e"S and MOS devices instead o t%e older mosRe2(ll messa$e.

  • 8/12/2019 MOS object

    31/227

  • 8/12/2019 MOS object

    32/227

    *. Pro#ile 2 , !dvaced 0O1Cotet ListWor/#lo&

    )%is #roile enables a device to re2uest a ull list o all Runnin$OrdersH"ontent "ollections under MOS control in an "S. t also allo+sany device to receive t%e ull conte6t o data associated +it% a Runnin$OrderH"ontent Bist and send conte6tual /cues to t%e #arent Media Ob=ectServer.

    additio to s"pport #or Pro#iles +; ad *; these additioal MOSProtocol Messages $"st be s"pported #or Pro#ile 2B

    roRe2(ll

    roBist(llroStorySend

    eeral Wor/ Alo& #or Pro#ile 2

    Dro0e:!llE ad DroList!llE are #"ctioally si$ilar to Dro0e:E adDroListE.

    4roRe2(ll7 is a re2uest rom t%e MOS device to t%e "S or a listo all MOS (ctive Runnin$ Orders. 4roBist(ll7 is t%e res#onse rom

    t%e "S. )%e list contains t%e 4roD7, 4roSlu$7 and ot%ermetadata. or a ull listin$ o t%e contents o t%e RO t%e MOSdevice must issue a subse2uent 4roRe27 usin$ a 4roD7 rom t%e4roBist(ll7 messa$e.

    DroStorySedE is a $ethod by &hich the NCS ca sed the co$pletebody o# a story to aother device.

    )%is is useul or #rom#ters and #ublis%in$ devices +%ic% must bea+are not only o t%e se2uence o stories but also t%e ull body ote6t and metadata or eac% story, +%ic% is not ot%er+ise sent.

    0eco$$eded Wor/ PracticeB o send a co$plete list of storiesassociated with a +unning Order along with the bodies of allStories4 the "S $ust first construct a playlist in the Media Ob0ectServer using the %ro"onstruction& $essages4 ta!ing care to send=all= /story structures4 not 0ust Stories which contain /ite$structures belonging to a specific device' >or$al practice is to use%ro"onstruction& $essages to send only /story structures that

  • 8/12/2019 MOS object

    33/227

    contain /ite$s belonging to the parent Media Ob0ect Server')his is followed by an /roStorySend $essage for each of theStories in the "S +unning Order6"ontent "ollection' In this waychanges to the order of the Stories can be co$$unicated withoutretrans$itting Story ob0ects' ?i!ewise4 a Story can be updated

    without $a!ing a change to the Story Sequence'

  • 8/12/2019 MOS object

    34/227

    *.4 Pro#ile , te$ Cotrol

    )%is #roile enables a##lications to send /cue and control commands toMedia Ob=ect Servers

    additio to s"pport #or Pro#iles +; ad *; these additioal MOSProtocol Messages $"st be s"pported #or Pro#ile B

    rotem"ue ro"trl

    Drote$C"eE is a $ethod "sed to sigal or 7c"e a paret MOSdevice at a speci#ic ti$e.

    )%is messa$e is or notiication only, but can be used by t%e #arentMedia Ob=ect Server to allo+ ot%er a##lications to tri$$er renderin$,#ublis%in$ or out#ut o a s#eciic tem Reerence to an Ob=ect at as#eciic time, +%ic% can be in t%e uture. )%is is not a s#eciiccommand to #lay or tae action on an ob=ect.

    DroCtrlE is a $ethod "sed to sigal or 7c"e a paret MOS device ata speci#ic ti$e.

    )%is messa$e allo+s ot%er devices to send s#eciic and unambi$uous

    /PB(* /55"-)5 /P(-S5 /S)OP (D /S?(B commands to aMedia Ob=ect Server. )%ou$% t%ese messa$es +ere ori$inallyintended or control o audio and video servers, t%eir a##lication s%ouldnot be t%ou$%t o as limited to t%ese ty#es o out#ut devices.

    (##lication ote: )%e use and timin$ o t%ese messa$es is sub=ect tonet+or #ro#a$ation and a##lication #rocessin$ latency. Sync%ronicityand rame accuracy can be ac%ieved in t%e a##lication o t%e4rotem"ue7 messa$e i an event to +%ic% it is lined can beantici#ated by an amount o time e2ual to or $reater t%an total lin

    latency. )%e 4ro5vent)ime7 can t%en be set to an a##ro#riate uturevalue +%ic% in eect leads system latency.

  • 8/12/2019 MOS object

    35/227

    *.5 Pro#ile 4 , MOS 0edirectio

    )%is Proile #rovides a mec%anism or 4item7 structures containin$ mediaob=ects rom one server to be meanin$ully included in messa$es sent to a

    server ot%er t%an t%e one on +%ic% t%ey are immediately stored. )%isinormation enables servers to automate t%e transer o t%ese ob=ectsbet+een mac%ines, usin$ met%ods inde#endent o t%e MOS Protocol.

    Pro#ile 4 re:"ires #"ll s"pport #or Pro#iles +; ad * ad ca beapplied to Pro#iles 3; 2 ad

    A"lly H"ali#ied MOS 6

    Proile ! does not include any additional MOS messa$es. Eo+ever, itdoes re2uire t%at all MOS device com#atible +it% Proile ! use a s#eciicnamin$ convention or 4mosD7Is and 4ncsD7Is o t%is orm:

    4amily7.4mac%ine7.4location7.4enter#rise7.mosF%ere 4location7 and 4enter#rise7 are o#tional.)%is is called a /ully Gualiied MOS D

    or e6am#le, t%ese are valid ully Gualiied MOS DIs:

    aveed.server.camden.cbs.mostornado.mac%.+=la.allbritton.mosGuantuml.>idServ.mosSonny.#oint.city.com#any.mos

    -sin$ t%is namin$ convention, it is #ossible or a mac%ine to determine

    +%et%er an ob=ect is stored locally or on anot%er mac%ine o t%e sameamily or com#atible amily, and or t%at mac%ine to mae se#aratearran$ements or t%e transer o t%e reerenced ob=ect to t%e localmac%ine.

    )%is unctionality can be e6tended to transer material bet+een mac%ineslocated in t%e same buildin$, dierent buildin$s or dierent cities.

  • 8/12/2019 MOS object

    36/227

  • 8/12/2019 MOS object

    37/227

    *.8 Pro#ile 5 , MOS 0O1Cotet List Modi#icatio

    )%is #roile enables a Media Ob=ect Server to mae c%an$es to t%erunnin$ order in a e+sroom "om#uter System.

    additio to s"pport #or Pro#iles +; ad *; these additioal MOSProtocol Messages $"st be s"pported #or Pro#ile 5B

    roRe2Story(ction

  • 8/12/2019 MOS object

    38/227

    3. Media Object Server Protocol Message6e#iitio

    n t%e Structural Outline sections belo+ use o / s#eciies o#tional element, /Ns#eciies one or more o t%e element, and /s#eciies Aero or more o t%eelement. 5lements +it%out any o t%ese t%ree s#ecial c%aracters are re2uired.)a$s enclosed in #arent%esis and se#arated by Q re#resent a selection.)%e Synta6 section s%o+s t%e deinition o nonterminals or t%is messa$e romt%e D)D.56am#les s%o+n are re#resentative o synta6 only and do not re#resent sam#lesrom any system.

  • 8/12/2019 MOS object

    39/227

    3. -asic Object Co$$"icatio

    3.. $os!c/ !c/o&ledge MOS Object 6escriptio

    P"rpose

    )%e acno+led$ement or t%e 4mosOb=7 messa$e.

    0espose

    one C t%is is a res#onse to various MOSinitiated messa$es.

    Str"ct"ral O"tlie

    mosD ncsD messa$eD mos(c ob=D ob=Rev status statusDescri#tion

    Syta>

    =>a$ple

    &0001$#

  • 8/12/2019 MOS object

    40/227

    1 23

  • 8/12/2019 MOS object

    41/227

    3..* $osObj MOS Object 6escriptio

    P"rpose

    "ontains inormation t%at describes a uni2ue MOS Ob=ect to t%e "S. )%e "Suses t%is inormation to searc% or and reerence t%e MOS Ob=ect.

    Dobjro"pE tag

    o s#eciic values or t%is element are oicially deined. Deinition o values islet to t%e coni$uration and a$reement o MOS connected e2ui#ment. )%eintended use is or site coni$uration o a limited number o locally named stora$eolders in t%e "S or MOS, suc% as /"ontrol(, /"ontrol@ , /Ra+, /inis%ed,etc. or editorially descri#tive /cate$ory inormation, it is su$$ested t%at t%e4mos56ternalMetadata7 bloc be used.

    =>teral Metadata -loc/

    )%is data bloc can a##ear in several messa$es as a mec%anism or trans#ortin$additional metadata, inde#endent o sc%ema or D)D. F%en ound +it%in t%emosOb= messa$e, t%is bloc carries data deined e6ternal to t%e MOS Protocol.

    =>teral Metadata D$osScopeE tag

    )%e value o t%e 4mosSco#e7 ta$ im#lies t%rou$% +%at #roduction #rocessest%is inormation +ill travel.

    ( sco#e o /O@K5") im#lies t%is inormation is $enerally descri#tive o t%eob=ect and a##ro#riate or 2ueries. )%e metadata +ill not be or+arded intoStories or Playlists.

    ( sco#e o /S)OR* su$$ests t%is inormation may determine %o+ t%e Ob=ect isto be a##lied in a Story. or instance, ntellectual Pro#erty Mana$ement. )%isinormation +ill be or+arded +it% t%e contents o a Story.

    ( sco#e o /PB(*BS) su$$ests t%is inormation is s#eciic to describin$ %o+t%e Ob=ect is to be #ublis%ed, rendered, or #layed to air and t%us, +ill be included

    in t%e ro"reate Play Bist "onstruction and roStorySend messa$es.Sco#e allo+s systems to, o#tionally, rou$%ly ilter e6ternal metadata andselectively a##ly it to dierent #roduction #rocesses and out#uts. S#eciically, itis neit%er advisable nor eicient to send lar$e amounts o ina##ro#riate metadatato t%e Playlist in ro"reate messa$es. n addition to t%ese blocs o data bein$#otentially very lar$e, t%e media Ob=ect Server is, #resumably, already a+are ot%is data.

  • 8/12/2019 MOS object

    42/227

    0espose

    mos(c

    Str"ct"ral O"tlie

    mosD ncsD messa$eD mosOb= ob=D ob=Slu$ mos(bstract ob=?rou# ob=)y#e ob=)@

    ob=Rev ob=Dur status ob=(ir ob=#at%s

    ob=Pat% ob=Pro6yPat%

    created@y created c%an$ed@y c%an$ed

    descri#tion ;#Q emQ tab

  • 8/12/2019 MOS object

    43/227

    =>a$ple

    string string int string string string string string string

    string string string string string string string string

  • 8/12/2019 MOS object

    44/227

    string string string string string string string

    Syta> o# 0espose

    string int string

    string

    =>a$ple o# 0espose

    string int string string

  • 8/12/2019 MOS object

    45/227

    3..3 $os0e:Obj 0e:"est Object 6escriptio

    P"rpose

    Messa$e used by t%e "S to re2uest t%e descri#tion o an ob=ect.

    0espose

    mosOb= i ob=D is oundmos(c ot%er+ise

    Str"ct"ral O"tlie

    mosD ncsD messa$eD mosRe2Ob= ob=D

    Syta>

    =>a$ple

    string string int string

  • 8/12/2019 MOS object

    46/227

    0espose

    mosOb= i ob=D is oundmos(c ot%er+ise

    Syta> o# 0espose

    =>a$ple o# 0espose

    string

    string string string string string string string string string string string string string

  • 8/12/2019 MOS object

    47/227

    string string string string string string int string string

  • 8/12/2019 MOS object

    48/227

  • 8/12/2019 MOS object

    49/227

    string string int int

    0espose

    mos(c +%ic% t%en initiates t%e MOS Server to send a mosOb= every 6 numbero seconds.

    Syta> o# 0espose

    =>a$ple o# 0espose

    46ml version1.0 encodin$ut874soa#:5nvelo#e 6mlns:6si%tt#:HH+++.+3.or$H001HMBSc%emainstance6mlns:6sd%tt#:HH+++.+3.or$H001HMBSc%ema

    6mlns:soa#%tt#:HHsc%emas.6mlsoa#.or$Hsoa#Henvelo#eH7 4soa#:@ody7 4mosRe2(llJRes#onse 6mlns%tt#:HHmos#rotocol.comH+ebservicesH7 4mosRe2(llJResult7 4ob=D7strin$4Hob=D7 4ob=Rev7int4Hob=Rev7 4status7strin$4Hstatus7 4statusDescri#tion7strin$4HstatusDescri#tion7 4HmosRe2(llJResult7 4HmosRe2(llJRes#onse7 4Hsoa#:@ody74Hsoa#:5nvelo#e7

  • 8/12/2019 MOS object

    50/227

  • 8/12/2019 MOS object

    51/227

    =>a$ple

    string string string string string

    string string string string string string string string

  • 8/12/2019 MOS object

    52/227

    string string string string string string string string string string string string string string string string

    string

    0espose

    mos(c

    Syta> o# 0espose

    =>a$ple o# 0espose

  • 8/12/2019 MOS object

    53/227

    string int string string

  • 8/12/2019 MOS object

    54/227

    $os0e:ObjList #a$ily o# $essages

    P"rpose

    )o retrieve only selected ob=ect descri#tions rom a MOS.

    Co$$"icatio 'ype

    "S S5R>5R to MOS and "S "B5) to MOS

    Messages i this #a$ily

    mosRe2Searc%ableSc%emamosBistSearc%ableSc%emamosRe2Ob=Bist

    mosOb=Bist

    Wor/#lo&

    1

  • 8/12/2019 MOS object

    55/227

    )%e sim#le met%od +ill searc% all deault ields in t%e MOS database, asdeined by t%e MOS vendor. Only one 4$eneralSearc%7 ield may be#resent.b

  • 8/12/2019 MOS object

    56/227

    *. N"$ber A"ctios

    A"ctio Para$eters 0et"r 'ype 6escriptio;um,er ob=ect umber "onverts to a number

    3. -oolea A"ctios

    A"ctio Para$eters 0et"r 'ype 6escriptio)oolean ob=ect @oolean

    "onverts to a booleanvalue

    alse @oolean Returns alse;ot boolean @oolean nverts a boolean value

    7rue @oolean Returns true

    Pat% searc% re2uests are assumed to be case sensitive.Rules on Sortin$ are as ollo+s: (ll ields o t%e same name %ave to %ave t%e same sort@yOrder and

    sort)y#e attributes or t%e same ieldname. )%is is+%y, or e6am#le, HPresenter is t%e same in t%e irstsearc%?rou# as it is in t%e second.

    o t+o unlie ields can s%are t%e same sort order. Presenter canIt besort@yOrder 1 in t%e same re2uest as Producer%as a sort@yOrder o 1.

    )%e MOS determines sortin$ rules accordin$ to t%e natural lan$ua$eo t%e MOS System 5nvironment

    4searc%ield7Is +it%in t%e same 4searc%?rou#7 are lo$ically =oined

    ;(DIed

  • 8/12/2019 MOS object

    57/227

    eeral otes@ot% Searc% Met%ods can be used to$et%er, in +%ic% case t%e 4$eneralSearc%7is lo$ically =oined ;(DIed< +it% t%e 4searc%?rou#7 results. )%e Sim#le and"om#le6 met%ods may also be used se#arately and inde#endent o eac% ot%er.

    )%e 4$eneralSearc%7 ta$ must al+ays be #resent, even i ull.or bot% met%ods t%e "S can s#eciy t%e number o searc% results to return,+%ic% is t%e dierence bet+een t%e inte$er values o 4listReturnStart7 and4listReturn5nd7.

    )%e 4listReturnStart7 ta$ must al+ays be #resent and must al+ays %ave a valueo 1 or $reater.)%e 4BistReturn5nd7 ta$ must al+ays be #resent, but a value is o#tional. a

    value is #resent, it must be $reater t%an or e2ual to 4listReturnStart7.Omission o a value or 4listReturn5nd7 im#lies t%at all #ossible searc% resultss%ould be returned. "are s%ould be taen +%en im#lementin$ t%is o#tion to avoidreturnin$ more #ointers t%an is necessary +%ic% may over+%elm net+or ora##lication band+idt%.Pa$in$ is su##orted by su##lyin$ c%ained values or 4 listReturnStart7 and4listReturn5nd7, e.$. 10, 1&0, &180. )%ese values re#resent re2uests int%e mosRe2Ob=Bist messa$e. n t%e mosOb=Bist messa$e t%ese values indicatet%e actual number o ob=ects returned.4listReturn)otal7a##lies only to t%e mosOb=Bist messa$e and t%is ta$ isre2uired. t%e value is null, t%is indicates $enerally more t%an one ob=ect %asbeen ound. ( non Aero value indicates t%e total number o ob=ects +%ic% meett%e searc% criteria and can be returned.

    ( Aero value o 4listReturn)otal7 indicates no ob=ects +ere located +%ic% meett%e searc% criteria. n t%is case t%e values o 4listReturnStart7 and4listReturn5nd7 +ould also be Aero.4listReturnStatus7 s%ould contain a %uman readable status messa$e, o 18ma6 c%aracters, +%ic% indicates t%e reason or a Aero value in 4listReturn)otal7.4listReturnStatus7 can o#tionally be used to return additional %uman readablestatus inormation +%en 4listReturn)otal7 is a nonAero value."ac%ed searc%in$ is enabled by t%e mandatory use o t%e 42ueryD7 ield, +%ic%is deined as a 18 c%aracter D uni2ue +it%in t%e sco#e o t%e "S system.)%ou$% t%e ull values o 4$eneralSearc%7 andHor 4searc%?rou#7Is must still besu##lied in eac% and every 4mosRe2Ob=Bist7 messa$e, t%e 42ueryD7 value

  • 8/12/2019 MOS object

    58/227

    #rovides a s%ort cut or t%e MOS device, +%ic% may c%oose to buer t%e resultso irst 2uery and t%en return additional #a$ed re2uests or t%e same 2uery roma buer.

  • 8/12/2019 MOS object

    59/227

    3.*.3$os0e:SearchableSche$a

    P"rpose

    ( mec%anism or t%e "S to re2uest t%e MOS send a #ointer to a sc%ema in+%ic% searc%able ields are deined by t%e MOS device.

    Co$$"icatio 'ype

    "S S5R>5R to MOS and "S "B5) to MOS

    0espose

    mosBistSearc%ableSc%ema

    Str"ct"ral O"tlie

    mosD ncsD messa$eD mosRe2Searc%ableSc%ema

    Syta>

    =>a$ple

    string string int

  • 8/12/2019 MOS object

    60/227

    3.*.2 $osListSearchableSche$a

    P"rpose

    ( mec%anism or t%e MOS to send a #ointer to a sc%ema in +%ic% searc%ableields are deined or t%e "S device.

    Co$$"icatio 'ypeMOS to NCS SERVER and MOS to NCS CLIENT

    0espose

    one C t%is is a res#onse to mosRe2Searc%ableSc%ema.

    Str"ct"ral O"tlie

    mosD ncsD messa$eD mosBistSearc%ableSc%ema mosSc%ema

    Syta> o# 6atatype

    =>a$ple

  • 8/12/2019 MOS object

    61/227

    string

  • 8/12/2019 MOS object

    62/227

    3.*. $os0e:ObjList

    P"rpose

    )o retrieve only selected ob=ect descri#tions rom a MOS.

    Co$$"icatio 'ype

    "S S5R>5R to MOS and "S "B5) to MOS

    0espose

    mosOb=Bist

    Str"ct"ral O"tlie

    mosD ncsD messa$eD mosRe2Ob=Bist ;username< 2ueryD

    listReturnStart listReturn5nd $eneralSearc% mosSc%ema searc%?rou# searc%ieldN ;Pat%, sort@yOrder, sort)y#e

  • 8/12/2019 MOS object

    63/227

    Syta>

    =>a$ple

    string string string string string

  • 8/12/2019 MOS object

    64/227

    3.*.4 $osObjList

    P"rpose

    Returns selected ob=ect descri#tions rom a MOS.

    Co$$"icatio 'ype

    MOS to "S S5R>5R and MOS to "S "B5)

    0espose

    one C t%is is a res#onse to mosRe2Ob=Bist.

    Str"ct"ral O"tlie

    mosD ncsD messa$eD mosOb=Bist 2ueryD listReturnStart listReturn5nd listReturn)otal listReturnStatus

    list mosOb=N

    Syta>

  • 8/12/2019 MOS object

    65/227

    =>a$ple

    string string string string

  • 8/12/2019 MOS object

    66/227

  • 8/12/2019 MOS object

    67/227

    3.3 Object ad te$ $aage$et

    3.3. $osObjCreate , MOS Object Create

    P"rpose

    (llo+s an "S to re2uest t%e Media Ob=ect Server to create a Media Ob=ect +it%s#eciic metadata associated +it% it.

    0espose

    mos(c ;i ob=ect can be created t%en status descri#tion ob=D< ("L ;i ob=ect "(O) be created, status descri#tion reasonor error< mosOb=

    Str"ct"ral O"tlie

    mos mosD ncsD messa$eD mosOb="reate ob=Slu$ ob=?rou# ob=)y#e

    ob=)@ ob=Dur time created@y descri#tion mos56ternalMetadata

    Syta>

  • 8/12/2019 MOS object

    68/227

    =>a$ple

    string string int string string string string string string string string string string string string

    Syta> o# 0espose

    4s:element namemosOb="reateRes#onse74s:com#le6)y#e7 4s:se2uence7 4s:element minOccurs1 ma6Occurs1 namemosOb="reateResult

    ty#etns:mos(cJty#e4Hs:se2uence7

    4Hs:com#le6)y#e74Hs:element7

    =>a$ple o# 0espose

    46ml version1.0 encodin$ut87

  • 8/12/2019 MOS object

    69/227

    4soa#:5nvelo#e 6mlns:6si%tt#:HH+++.+3.or$H001HMBSc%emainstance6mlns:6sd%tt#:HH+++.+3.or$H001HMBSc%ema6mlns:soa#%tt#:HHsc%emas.6mlsoa#.or$Hsoa#Henvelo#eH7 4soa#:@ody7 4mosOb="reateRes#onse 6mlns%tt#:HHmos#rotocol.comH+ebservicesH74mosOb="reateResult7 4ob=D7strin$4Hob=D7 4ob=Rev7int4Hob=Rev7 4status7strin$4Hstatus7 4statusDescri#tion7strin$4HstatusDescri#tion7 4HmosOb="reateResult7 4mos(cResult7 4ob=D7strin$4Hob=D7 4ob=Rev7int4Hob=Rev7 4status7strin$4Hstatus7 4statusDescri#tion7strin$4HstatusDescri#tion7 4Hmos(cResult7 4HmosOb="reateRes#onse7 4Hsoa#:@ody74Hsoa#:5nvelo#e7

  • 8/12/2019 MOS object

    70/227

    3.3.* $oste$0eplace , 0eplace oe te$ 0e#erece &ith aother

    P"rpose

    )%is messa$e allo+s a Media Ob=ect Server to re#lace an tem Reerence in aStory +it% ne+ metadata values andHor additional ta$s. )%e Story must be in aMOS (ctive PlayBist. )%us, t%is messa$e is in t%e /ro amily o messa$es rat%ert%an t%e /mos, or lo+er #ort, amily. Eo+ever, t%is messa$e is initiated by t%emedia Ob=ect Server, rat%er t%an t%e "S.

    -ehavior

    )%is messa$e must reerence an e6istin$ uni2ue tem Reerence in a MOS(ctive PlayBist t%rou$% t%e values o ncsD, roD, storyD, and itemD.

    metadata ta$s in t%e mostemRe#lace messa$e already e6ist in t%e tar$et temReerence, values +it%in t%e tem Reerence +ill be re#laced by t%e values in t%emostemRe#lace messa$e.

    t%e metadata ta$s do not already e6ist in t%e tar$et tem Reerence t%ey +ill beadded.

    a mos56ternalMetadata bloc is included in t%e mostemRe#lace messa$e, it+ill re#lace an e6istin$ mos56ternalMetadata bloc olyi t%e values o4mosSc%ema7 in t%e t+o blocs matc%, and only or t%e irst occurrence o abloc +it% a matc%in$ 4mosSc%ema7 ta$. Ot%er+ise t%e mos56ternalMetadata

    bloc +ill be added to t%e tar$et tem Reerence. t%e temD in t%e mostemRe#lace messa$e does not matc% an e6istin$ temDin t%e s#eciied Story t%en no action +ill be taen and t%e mostemRe#lacemessa$e +ill be re#lied to +it% an ro(c messa$e s#eciyin$ t%e tem values int%e mostemRe#lace messa$e and carryin$ a status value o /("L.

    0espose

    ro(c

    Subsequent messages

    roStoryRe#lace, rotemRe#lace, ro5lement(ctionC ( successulmostemRe#lace o#eration +ill result in a c%an$e to an tem reerenceembedded in a Story. )%is ne+ inormation must no+ be #laced in associatedMOS Playlists. (ny one o t%e t%ree messa$es listed +ill re#lace t%e old itemreerence in t%e #laylist +it% t%e ne+ly u#dated item reerence rom t%is Story.

  • 8/12/2019 MOS object

    71/227

    roStorySendC ( successul mostemRe#lace o#eration +ill result in a c%an$e int%e body o a Story. )%is c%an$e must be sent bac out i an roStorySend tar$et%as been deined or t%e RO.

    Str"ct"ral O"tlie

    mosD ncsD messa$eD mostemRe#lace roD storyD item itemD

    itemSlu$ ob=D mosD

    mosPlu$nD mos(bstract

    ob=Pat%s ob=Pat% ob=Pro6yPat%

    item"%annel item5dStart item5dDur

    item-ser)imin$Dur item)ri$$er macron macroOut mos56ternalMetadata

    Syta>

  • 8/12/2019 MOS object

    72/227

    =>a$ple

    string string int string string string string

    string string string string string string int int int string string string

    string string string string

    0espose

    ro(c

    Syta> o# 0espose

  • 8/12/2019 MOS object

    73/227

    =>a$ple o# 0espose

    string

    string string string string string string

    3.3.3 $os0e:Obj!ctio NCS re:"ests actio o MOS object

    P"rpose

    (llo+s an "S to re2uest t%e Media Ob=ect Server to create, modiy or delete amedia ob=ect. )%is is a re2uest only. ( ("L res#onse is #erectly valid andmust be antici#ated. t is #ossible t%at an ("L condition mi$%t never bereturned.

    !ctio 7operatio attrib"te 7obj6 attrib"te

    "reate an Ob=ect /5F (ttribute not used ;s%ould be omittedModiy an Ob=ect /-PD()5 ob=D o t%e reerenced Ob=ect

    Delete an Ob=ect /D5B5)5 ob=D o t%e reerenced Ob=ect

    ( /5F o#eration creates a /#lace%older Ob=ect t%at %as no media.

  • 8/12/2019 MOS object

    74/227

    (n /-PD()5 o#eration #rovides ne+ metadata values or an e6istin$ Ob=ect.)%e intent is t%at t%e s#eciied values +ill re#lace t%e corres#ondin$ Ob=ectvalues. )%e Media Ob=ect Server +ill mer$e in any mos56ternalMetadata blocsas described in t%e mostemRe#lace messa$e.

    ( /D5B5)5 o#eration +ill delete an e6istin$ Ob=ect rom t%e Media Ob=ectServer inventory.)%e "S must not e6#ect an /-PD()5 o#eration to succeed i it contains ne+values or ob=)y#e, ob=)@, or ob=Dur and t%e Ob=ect already %as actual media.

    ( Media Ob=ect Server may c%oose to re#ort an action as successul even +%enit does not ulil t%e entire re2uest. or instance, t%e "S mi$%t send an/-PD()5 o#eration containin$ ne+ ob=Slu$ and ob=)y#e values. t%e Ob=ectalready %as media, t%e Media Ob=ect Server may c%an$e its ob=Slu$ value butleave its ob=)y#e value unc%an$ed. n t%at case, t%e Media Ob=ect Server may

    res#ond +it% an ("L +%ose status descri#tion indicates t%at some but not allvalues c%an$ed.

    0espose

    mos(c t%e s#eciied action cannot be com#leted, t%e status is ("L and t%e statusdescri#tion is a reason or t%e error. t%e s#eciied action is successully com#leted, t%e messa$e +ill tae one o

    t%ree orms:1. t%e action is /5F, t%e status descri#tion +ill be t%e ob=D.. t%e action is /-PD()5, t%e status decri#tion may be any additional

    inormation t%e Media Ob=ect Server +ants to send. See t%e e6am#leabove.

    3. t%e action is /D5B5)5, t%e status descri#tion may be any additionalinormation t%e Media Ob=ect Server +ants to send.

    S"bse:"et $essages

    t%e s#eciied action is successully com#leted, t%e MOS +ill subse2uently senda mosOb=messa$e. t +ill tae one o t%ree orms:

    1. t%e action is /5F, t%e status +ill be /5F.. t%e action is /-PD()5, t%e status +ill be /-PD()5D.3. t%e action is /D5B5)5, t%e status +ill be /D5B5)5D.

    Str"ct"ral O"tlie

  • 8/12/2019 MOS object

    75/227

    mosD ncsD messa$eD mosRe2Ob=(ction ;o#eration Y5F, -PD()5, D5B5)5Z ob=DY6Z< ob=Slu$

    mos(bstract ob=?rou# ob=)y#e ob=)@ ob=Dur time created@y c%an$ed@y c%an$ed descri#tion mos56ternalMetadata

    Syta>

  • 8/12/2019 MOS object

    76/227

    t*pe="s:string" !>

  • 8/12/2019 MOS object

    77/227

    =>a$ple Create

    string string int string string string string

    string string string string string string string string string string string

    string string

  • 8/12/2019 MOS object

    78/227

    0espose

    ro(c

    Syta> o# 0espose

    =>a$ple o# 0espose

    string int string string

  • 8/12/2019 MOS object

    79/227

    ro (0"ig Order) #a$ily o# $essages

    3.2 ro Playlist Costr"ctio

    3.2. ro!c/ !c/o&ledge 0"ig Order

    P"rpose

    MOS res#onse to recei#t o any Runnin$ Order command. )%e res#onse maycontain t%e status or one or more tems in a Runnin$ Order. )%is is useul +%ent%e ro(c is in res#onse to a ro"reate or roRe#lace command.

    0espose

    one

    Str"ct"ral O"tlie

    mosD ncsD messa$eD ro(c roD roStatus ;storyD, itemD,ob=D, item"%annel, status

  • 8/12/2019 MOS object

    80/227

    56am#le +it% ro"reate

    string string string string string string string

  • 8/12/2019 MOS object

    81/227

    3.2.* roCreate Create 0"ig Order

    P"rpose

    Messa$e rom t%e "S to t%e MOS t%at deines a ne+ Runnin$ Order.

    0espose

    ro(c

    Str"ct"ral O"tlie

    mosD ncsD messa$eD ro"reate

    roD roSlu$ ro"%annel ro5dStart ro5dDur ro)ri$$er macron macroOut mos56ternalMetadata story storyD

    storySlu$ storyum mos56ternalMetadata item itemD itemSlu$ ob=D mosD

    mos(bstract ob=Pat%s ob=Pat%

    ob=Pro6yPat% item"%annel item5dStart item5dDur

    item-ser)imin$Dur item)ri$$er macron macroOut

  • 8/12/2019 MOS object

    82/227

    mos56ternalMetadata

    Syta>

    =>a$ple

    string string int string string string

    string string string string string string string string

    string string string string

  • 8/12/2019 MOS object

    83/227

    string string string

    0espose

    ro(c

    Syta> o# 0espose

    =>a$ple o# 0espose string string string string string string string

  • 8/12/2019 MOS object

    84/227

    3.2.3 ro0eplace 0eplace 0"ig Order

    P"rpose

    Re#laces an e6istin$ Runnin$ Order deinition in t%e MOS +it% anot%er one sent

    rom t%e "S.

    0espose

    ro(c

    Str"ct"ral O"tlie

    mosD ncsD messa$eD

    roRe#lace roD roSlu$ ro"%annel ro5dStart ro5dDur ro)ri$$er macron macroOut mos56ternalMetadata story

    storyD storySlu$ storyum mos56ternalMetadata item itemD itemSlu$ ob=D mosD

    mos(bstract ob=Pat%s

    ob=Pat% ob=Pro6yPat% item"%annel item5dStart item5dDur item-ser)imin$Dur item)ri$$er

  • 8/12/2019 MOS object

    85/227

  • 8/12/2019 MOS object

    86/227

  • 8/12/2019 MOS object

    87/227

    3.2.2 roMetadata0eplace , 0eplace 0O $etadata &itho"t deletigthe 0O str"ct"re

    P"rpose

    )%is messa$e allo+s metadata associated +it% a runnin$ order to be re#laced+it%out deletin$ t%e runnin$ order and sendin$ t%e entire runnin$ order a$ain.

    -ehavior

    )%is messa$e must reerence an e6istin$ runnin$ order metadata ta$s in t%e roMetadataRe#lace messa$e already e6ist in t%e tar$etRO, values +it%in t%e RO +ill be re#laced by t%e values in t%eroMetadataRe#lace messa$e.

    t%e metadata ta$s do not already e6ist in t%e tar$et RO t%ey +ill be added.

    a mos56ternalMetadata bloc is included in t%e roMetadataRe#lace messa$e,it +ill re#lace an e6istin$ mos56ternalMetadata bloc olyi t%e values omosSc%ema in t%e t+o blocs matc%. Ot%er+ise t%e mos56ternalMetadata bloc+ill be added to t%e tar$et RO. t%e ROD in t%e roMetadataRe#lace messa$e does not matc% an e6istin$ROD t%en no action +ill be taen and t%e roMetadataRe#lace messa$e +ill bere#lied to +it% an ro(c messa$e +%ic% carryin$ a status value o /("L.

    0espose

    ro(c

    Str"ct"ral O"tlie

    mosD ncsD messa$eD roMetadataRe#lace

    roD roSlu$ ro"%annel ro5dStart ro5dDur ro)ri$$er roMacron roMacroOut

    http://www.enps.com/mosproto/MOS%20Files/#roAckhttp://www.enps.com/mosproto/MOS%20Files/#roAck
  • 8/12/2019 MOS object

    88/227

    mos56ternalMetadata

    Syta>

    =>a$ple

    string string int string string

    string string string string string string string string

  • 8/12/2019 MOS object

    89/227

  • 8/12/2019 MOS object

    90/227

  • 8/12/2019 MOS object

    91/227

    =>a$ple o# 0espose

    string string

    string string string string string

  • 8/12/2019 MOS object

    92/227

    3. ro Sychroi9atio; 6iscovery ad Stat"s

    3.. ro0e: 0e:"est 0"ig Order

    P"rpose

    Re2uest or a com#lete build o a Runnin$ Order Playlist.O)5: )%is messa$e can be used by eit%er "S or MOS.

    ( MOS can use t%is to /resync its Playlist +it% t%e "S Runnin$ Order orto obtain a ull descri#tion o t%e Playlist at any time.

    (n "S can use t%is as a dia$nostic tool to c%ec t%e order o t%e Playlistconstructed in t%e MOS versus t%e se2uence o tems in t%e Runnin$Order.

    0espose

    roBistor ro(c;ro(c +it% a ("L value is sent i: t%e Runnin$ Order D is notvalid, roBist cannot be returned or some reason, or i t%e Runnin$ Order is notavalible

    =>a$ple

    string

    string int

  • 8/12/2019 MOS object

    99/227

    3..2 roList!ll List !ll 0"ig Order 6escriptios

    P"rpose

    Provides a descri#tion o all Runnin$ Orders no+n by a "S to a MOS.

    0espose

    one

    Str"ct"ral O"tlie

    mosD ncsD messa$eD

    roBist(ll ro roD roSlu$ ro"%annel ro5dStart ro5dDur ro)ri$$er mos56ternalMetadata

    Syta>

  • 8/12/2019 MOS object

    100/227

    56am#le

    string string string string string string

    string string string string string string

    string string string string string string string

  • 8/12/2019 MOS object

    101/227

    3.. ro0eady'o!ir deti#y a 0"ig Order as 0eady to !ir

    P"rpose

    )%e messa$e allo+s t%e "S to si$nal t%e MOS t%at a Runnin$ Order %as beeneditorially a##roved ready or air.

    0espose

    ro(c

    Str"ct"ral O"tlie

    mosD

    ncsD messa$eD roReady)o(ir roD ro(ir

    Syta>

    =>a$ple

    string string int string

  • 8/12/2019 MOS object

    102/227

    string

    0espose

    ro(c

    Syta> o# 0espose

    =>a$ple o# 0espose string string string string string string string

  • 8/12/2019 MOS object

    103/227

    3.4 ro Story ad te$ Se:"ece Modi#icatio

    3.4. ro=le$et!ctio , Per#or$s speci#ic !ctio o a 0"igOrder

    P"rpose

    )%is command e6ecutes S5R), R5PB("5, MO>5, D5B5)5, and SF(Po#erations on one or more elements in a #laylist. )%e elements can be eit%erStories or tems. )%e command s#eciies one or more source elements and asin$le tar$et element. )%e source elements are t%ose Stories or tems to beacted u#on. )%e tar$et element s#eciies +%ere in t%e runnin$ order t%e actionstae #lace.

    (s +it% t%e storylevel and itemlevel commands, t%e S5R) and R5PB("5o#erations send ne+ content to t%e MOS. )%us t%e elementJsource ta$ mustcontain eit%er all Stories or all tems, de#endin$ on +%ic% is bein$ inserted orre#laced.)%e MO>5, D5B5)5, and SF(P o#erations act on content already e6istin$ int%e MOS. )%us t%e elementJsource ta$ must contain eit%er all Story Ds or alltem Ds, de#endin$ on +%ic% is bein$ moved, deleted, or s+a##ed.

    )%e ollo+in$ table describes +%at $oes in t%e elementJsource and t%eelementJtar$et or eac% o t%e ei$%t #ossible o#erations.

    Operatio ele$etJtarget ele$etJso"rce

    nsertin$ stories ( storyD s#eciyin$ t%e storybeore +%ic% t%e source storiesare inserted

    One or more stories toinsert

    nsertin$ items ( storyD and itemD s#eciyin$t%e item beore +%ic% t%esource items are inserted

    One or more items to insert

    Re#lacin$ a story ( storyD s#eciyin$ t%e story to

    be re#laced

    One or more stories to #ut

    in its #laceRe#lacin$ an item ( storyD and itemD s#eciyin$t%e item to be re#laced

    One or more items to #ut inits #lace

    Movin$ stories ( storyD s#eciyin$ t%e storybeore +%ic% t%e source storiesare moved

    One or more storyDss#eciyin$ t%e stories to bemoved

    Movin$ items ( storyD and itemD s#eciyin$t%e item beore +%ic% t%e

    One or more itemDss#eciyin$ t%e items in t%e

  • 8/12/2019 MOS object

    104/227

    source items are moved story to be movedDeletin$ stories ot needed, since deletes donIt

    %a##en relative to anot%er storyOne or more storyDss#eciyin$ t%e stories to bedeleted

    Deletin$ items ( storyD s#eciyin$ t%e story

    containin$ t%e items to bedeleted

    One or more itemDs

    s#eciyin$ t%e items in t%estory to be deleted

    S+a##in$ stories (n em#ty storyD ta$, or t%eelementJtar$et ta$ itsel isabsent

    56actly t+o storyDss#eciyin$ t%e stories to bes+a##ed

    S+a##in$ items ( storyD s#eciyin$ t%e storycontainin$ t%e items to bes+a##ed

    56actly t+o itemDss#eciyin$ t%e items to bes+a##ed

    ote: )%is messa$e eectively re#laces messa$es 3.!.1 C 3.!.11 and +ill besu##orted in uture versions o MOS.

    Str"ct"ral O"tlie

    mosD ncsD messa$eD ro5lement(ction ;o#eration ;S5R), R5PB("5, MO>5, D5B5)5,SF(P

  • 8/12/2019 MOS object

    105/227

    @ecause t%is command is com#le6, +e #rovide several e6am#les.

    sert e>a$ple isertig a story i a r"do&B

    nsert a ne+ story +it% D1 beore t%e story +it% D in t%e 'PM runnin$order.

    string string int string string string string

    string string string string string

  • 8/12/2019 MOS object

    106/227

    string string string string int int int string string string string string

    aircace.nescenter.comncs.nescenter.com

    ##$0# & $ 1@ )arcelona oot,all $

    $@ &@#A$@ testmos

    CCserverCmediaCclip#D$0$8cd$#$0s0d.mxf

    ttp:!!server!prox*!clipe.mv

    0 @1 1 $8 &@#A$8 testmos 0 #1

  • 8/12/2019 MOS object

    107/227

    sert e>a$ple * isertig a e& ite$ ito a storyB

    nsert a ne+ item +it% D beore t%e item +it% D 3 +it%in t%e story +it%D. string string

    int string string string string string string

    string string string string string string string int int

    int string string string string string

  • 8/12/2019 MOS object

    108/227

    aircace.nescenter.com

    ncs.nescenter.com ### & $ $# $@ ;4' 36 &1D8@#

    testmos

    CCserverCmediaCclip#D$0$8cd$#$0s0d.mxfttp:!!server!prox*!clipe.mv

    0 @00 AD0

    0eplace e>a$ple replacig a story i a r"do&B

    Re#lace t%e story +it% D ;in t%e 'PM runnin$ order< +it% a ne+ story +it% D 1. string string int string

  • 8/12/2019 MOS object

    109/227

    string string string string string string string string string string string

    string int int int string string string string string

    aircace.nescenter.com

    ncs.nescenter.com ## & $ 1@

    orto oot,all $ $@ &@#A$@ testmos

    CCserverCmediaCclip#D$0$8cd$#$0s0d.mxf

  • 8/12/2019 MOS object

    110/227

    ttp:!!server!prox*!clipe.mv

    0 @1

    1 $8 &@#A$8 testmos 0 #1

    0eplace e>a$ple * replacig a ite$ i a storyB

    Re#lace t%e item +it% D 3 +it% ne+ item +it% D +it%in t%e story +it%D.

    string string int string string string string string string string string

  • 8/12/2019 MOS object

    111/227

    string string string string string int int int string string string string string

    aircace.nescenter.com

    ncs.nescenter.com ## & $ $# $@

    ;4' 36 &1D8@# testmos

    CCserverCmediaCclip#D$0$8cd$#$0s0d.mxfttp:!!server!prox*!clipe.mv

    0 @00 AD0

    Move e>a$ple $ovig a storyB

  • 8/12/2019 MOS object

    112/227

    )%is moves t%e story +it% D beore t%e story +it% D in t%e 'PM runnin$order. string string int string string string

    string string string string string string string

    string string string int int int string string string string

    string

    aircace.nescenter.com

    ncs.nescenter.com ##A

  • 8/12/2019 MOS object

    113/227

    & $ @

    Move e>a$ple * $ovig a bloc/ o# storiesB

    )%is moves stories +it% D and D1 beore story +it% D in t%e 'PMrunnin$ order.

    string string int string string string string

    string string string string string string string string string int int int string string string

  • 8/12/2019 MOS object

    114/227

    string string

    aircace.nescenter.com

    ncs.nescenter.com ##@ & $ @ 1$

    Move e>a$ple 3 $ovig ite$s &ithi a storyB

    )%is moves an item +it% D3 and D & beore t%e item +it% D1 +it%in t%estory +it% D in t%e 'PM runnin$ order. string string int string string

    string string string string string

  • 8/12/2019 MOS object

    115/227

    string string string string string string int int int string string string string string

    aircace.nescenter.com

    ncs.nescenter.com ##8 & $ 1$

    $# $

    6elete e>a$ple deletig a story #ro$ the r"do&B

    )%is removes t%e story +it% D3 rom t%e 'PM runnin$ order.

    string

  • 8/12/2019 MOS object

    116/227

    string int string string string string string string string string

    string string string string string int int int string string string string string

    aircace.nescenter.com

    ncs.nescenter.com ##D &

    #

    6elete e>a$ple * deletig ite$s #ro$ a storyB

  • 8/12/2019 MOS object

    117/227

    )%is removes items +it% D3 and D& rom t%e story +it% D.

    string string int string string string string string string string string string string string

    string string int int int string string string string string

    aircace.nescenter.com

    ncs.nescenter.com #0 &

  • 8/12/2019 MOS object

    118/227

    $ $# $

    S&ap e>a$ple , s&appig t&o stories i the r"do&B

    )%is s+a#s t%e story +it% D3 +it% t%e story +it% D' in t%e 'PM runnin$ order.

    string string int string

    string string string string string string

    string string string string string string int int

  • 8/12/2019 MOS object

    119/227

    int string string string string string

    aircace.nescenter.com

    ncs.nescenter.com ##D & #

    S&ap e>a$ple * , s&appig t&o ite$s i a storyB

    )%is s+a#s t%e items +it% D3 and t%e item +it% D& in t%e story +it% D.

    string string int string string

    string string string string string

  • 8/12/2019 MOS object

    120/227

    string string string string string string int int int string string string string string

    aircace.nescenter.com

    ncs.nescenter.com #0

    & $

    $# $

    0espose

    ro(c

    Syta> o# 0espose

  • 8/12/2019 MOS object

    121/227

    =>a$ple o# 0espose

    string string string

    string string string string

  • 8/12/2019 MOS object

    122/227

    3.5. ro Cotrol ad Stat"s #eedbac/

    3.5. ro=le$etStat Stat"s o# a Sigle =le$et i a MOS 0"igOrder

    P"rpose

    Ro5lementStatis a met%od or t%e MOS to u#date t%e "S on t%e status o anytem or RO. )%is allo+s t%e "S to relect t%e status o any element in t%e MOSRunnin$ Order in t%e "S Runnin$ Order dis#lay.

    )%is messa$e is a member o bot% #roile and &. or use +it% #roile set t%eelement attribute to eit%er )5M or RO to u# date t%e "S on t%e status o anitem or a RO.

    0espose

    ro(c

    Port

    MOS -##er Port ;10'&1< Runnin$ Order

    Str"ct"ral O"tlie

    mosD ncsD messa$eD ro5lementStat ;element YRO,)5MZa$ple te$ Stat"s

    46ml version1.0 encodin$ut87 4soa#:5nvelo#e6mlns:6si%tt#:HH+++.+3.or$H001HMBSc%emainstance6mlns:6sd%tt#:HH+++.+3.or$H001HMBSc%ema6mlns:soa#%tt#:HHsc%emas.6mlsoa#.or$Hsoa#Henvelo#eH7 4soa#:@ody7 4ro5lementStat 6mlns%tt#:HHmos#rotocol.comH+ebservicesH7 4mosEeaderJin#ut7 4mosD7strin$4HmosD7 4ncsD7strin$4HncsD7 4messa$eD7int4Hmessa$eD7 4HmosEeaderJin#ut7 4element7)5M4Helement7 4ro5lementStatJin#ut7

    4roD7strin$4HroD7 4storyD7strin$4HstoryD7 4itemD7strin$4HitemD7 4ob=D7strin$4Hob=D7 4item"%annel7strin$4Hitem"%annel7 4status7strin$4Hstatus7 4time7strin$4Htime7 4Hro5lementStatJin#ut7 4Hro5lementStat7 4Hsoa#:@ody7 4Hsoa#:5nvelo#e7

    =>a$ple 0O Stat"s

    46ml version1.0 encodin$ut87 4soa#:5nvelo#e6mlns:6si%tt#:HH+++.+3.or$H001HMBSc%emainstance6mlns:6sd%tt#:HH+++.+3.or$H001HMBSc%ema6mlns:soa#%tt#:HHsc%emas.6mlsoa#.or$Hsoa#Henvelo#eH7 4soa#:@ody7 4ro5lementStat 6mlns%tt#:HHmos#rotocol.comH+ebservicesH7 4mosEeaderJin#ut7 4mosD7strin$4HmosD7 4ncsD7strin$4HncsD7 4messa$eD7int4Hmessa$eD7

  • 8/12/2019 MOS object

    124/227

    4HmosEeaderJin#ut7 4element7RO4Helement7 4ro5lementStatJin#ut7 4roD7strin$4HroD7 4storyD7strin$4HstoryD7 4itemD7strin$4HitemD7 4ob=D7strin$4Hob=D7 4item"%annel7strin$4Hitem"%annel7 4status7strin$4Hstatus7 4time7strin$4Htime7 4Hro5lementStatJin#ut7 4Hro5lementStat7 4Hsoa#:@ody7 4Hsoa#:5nvelo#e7

    3.5.* rote$C"e , Noti#icatio o# te$ =vet

    P"rpose

    (llo+s a device, suc% as a #rom#ter, to send a time cue or an tem.

    6escriptio

    )%is command allo+s a non MOS or "S device to send a time cue to t%e#arent Media Ob=ect Server ;or (utomation MOS< or a s#eciic temevent. )%is is not a command to e6ecute or #lay. nstead, t%is is intendedto #rovide eedbac to t%e #arent device as to t%e current e6ecution #ointo t%e #ro$ram.)%e values 4mosD7, 4roD7, 4storyD7, and 4itemD7 are derived romt%e tem reerence embedded in a story. )%e story inormation is

    assumed to be transmitted via t%e roStorySend messa$e.)%e Media Ob=ect Server or automation device t%at receives t%iscommand may use t%is inormation to u#date status or $enerate devicetri$$ers. O#tionally, t%e messa$e may be redirected to t%e "S as ameans o #rovidin$ additional status inormation.

    Str"ct"ral O"tlie

    mosDncsD

    messa$eD rotem"ue

    mosDroDstoryDitemDro5vent)y#e

    ro5vent)ime mos56ternalMetadata

  • 8/12/2019 MOS object

    125/227

    Syta>

    =>a$ple

    (n e6am#le o a notiication messa$e orced to t%e "S:

    string string int string string string string

  • 8/12/2019 MOS object

    126/227

    stringstring

    string string string string

  • 8/12/2019 MOS object

    127/227

    (n e6am#le o a notiication messa$e sent to t%e #arent MOS. ote t%ecounterintuitive assi$nment o t%e #arent MOS name to t%e 4ncsD7 ield:

    string string int string string string string string string string string string

    0espose

    ro(c

    Syntax of Response

    =>a$ple o# 0espose

  • 8/12/2019 MOS object

    128/227

  • 8/12/2019 MOS object

    129/227

  • 8/12/2019 MOS object

    130/227

  • 8/12/2019 MOS object

    131/227

    =>a$ple

    string string int string string string string

    string string string string

    0espose

    ro(c

    Syta> o# 0espose

  • 8/12/2019 MOS object

    132/227

    =>a$ple o# 0espose

    string string string string string string string

  • 8/12/2019 MOS object

    133/227

    3.8 Metadata =>port

    3.8. roStorySed , Sed Story i#or$atio; icl"dig -ody o# theStory

    P"rpose

    )%is messa$e enables sendin$ t%e body o story rom t%e "S to a Media Ob=ectServer. tem reerences ;storytem< are embedded +it%in t%e storyIs te6t. )%eseitem reerences are not intended to be dis#layed on t%e #rom#ter, but insteadcan o#tionally be used to send a messa$e ;rotem"ue< to t%e media ob=ectserver indicated in t%e embedded reerence. "om#osed rom inormation in t%eembedded item reerence, t%e rotem"uemessa$e could be $enerated by t%e#rom#ter as t%is %idden te6t ;storytem< scrolls #ast t%e ima$inary e6ecutionHreadline o t%e #rom#ter dis#lay.

    )%e storyteminormation can also o#tionally allo+ t%e #rom#ter vendor todis#lay t%e len$t% o t%e embedded ob=ect and #er%a#s even a countdo+n.

    )%e roStorySendmessa$e is able to transmit a$encyH+ire #rotocol data byaddin$ t%e o#tional attribute Read1stM5Mas@ody to t%e story@odyta$ andsetttin$ it to true. )%e Read1stM5Mas@ody ta$ +ill allo+ t%e irst M5M bloc tosubstitute t%e story body. -sers s%ould loo or t%e body o t%e story in t%e irstM5M bloc. 56am#les o a$encyH+ire data are ne+sMB, P", ((, and ot%ercustom ormats. Read1stM5Mas@ody is boolean t%e #ro#er synta6 +ould be:Read1stM5Mas@odytrue or Read1stM5Mas@odyalse.

    Prom#ters, radio systems, e6ternal arc%ive systems, accountin$ systems, and#otentially ot%er systems and devices can mae use o t%is inormation.

    Str"ct"ral O"tlie

    mosD ncsD messa$eD roStorySend roD storyD storySlu$

    storyum story@ody ;Read1stM5Mas@ody

  • 8/12/2019 MOS object

    134/227

    tab #i #$ b

    u storytem itemD itemSlu$ ob=D mosD mos(bstract

    ob=Pat%s ob=Pat% ob=Pro6yPat%

    item"%annel

    item5dStart item5dDuritem-ser)imin$Dur

    item)ri$$er macron macroOut

    mos56ternalMetadata mos56ternalMetadata

  • 8/12/2019 MOS object

    135/227

    Syta>

    =>a$ple 0oStorySed

    n order to a##ly roStorySendto im#lementation o a #rom#ter, you must use t%ismessa$e in con=unction +it% an ro"reatemessa$e +%ic% sends all stories to t%e#rom#ter rom t%e Runnin$ Order ;orced Play Bist "onstruction

  • 8/12/2019 MOS object

    136/227

    or roStorynsert< i only t%e body o t%e story %as c%an$ed and not its #osition+it%in t%e Runnin$ Order.

    string string int string string string string ,oolean string string string string string

    0espose

    ro(c

    Syta> o# 0espose

  • 8/12/2019 MOS object

    137/227

    =>a$ple o# 0espose

    string string string string string string string

    3.8.* ro=le$etStat Stat"s o# a Sigle =le$et i a MOS 0"igOrder

    P"rpose

    Ro5lementStatis a met%od or t%e MOS to u#date t%e "S on t%e status o anyStory. )%is allo+s t%e "S to relect t%e status o any element in t%e MOS

    Runnin$ Order in t%e "S Runnin$ Order dis#lay.

    )%is messa$e is a member o bot% #roile and &. or use +it% #roile & set t%eelement attribute to S)OR* in order to u#date t%e "S on t%e status o a storyater #rocessin$ /ro"reation and roStorySend messa$es.

    0espose

    ro(c

    Port

    MOS -##er Port ;10'&1< Runnin$ Order

    Str"ct"ral O"tlie

    mosD ncsD messa$eD

  • 8/12/2019 MOS object

    138/227

    ro5lementStat ;element YS)OR*Za$ple te$ Stat"s

    46ml version1.0 encodin$ut87 4soa#:5nvelo#e6mlns:6si%tt#:HH+++.+3.or$H001HMBSc%emainstance6mlns:6sd%tt#:HH+++.+3.or$H001HMBSc%ema6mlns:soa#%tt#:HHsc%emas.6mlsoa#.or$Hsoa#Henvelo#eH7 4soa#:@ody7 4ro5lementStat 6mlns%tt#:HHmos#rotocol.comH+ebservicesH7 4mosEeaderJin#ut7 4mosD7strin$4HmosD7 4ncsD7strin$4HncsD7 4messa$eD7int4Hmessa$eD7 4HmosEeaderJin#ut7 4element7S)OR*4Helement7 4ro5lementStatJin#ut7 4roD7strin$4HroD7 4storyD7strin$4HstoryD7 4itemD7strin$4HitemD7 4ob=D7strin$4Hob=D7

  • 8/12/2019 MOS object

    139/227

    4item"%annel7strin$4Hitem"%annel7 4status7strin$4Hstatus7 4time7strin$4Htime7 4Hro5lementStatJin#ut7 4Hro5lementStat74Hsoa#:@ody74Hsoa#:5nvelo#e7

  • 8/12/2019 MOS object

    140/227

    3.? MOS 0O1Cotet List Modi#icatio

    3.?. ro0e:Story!ctio , MOS re:"estsactio o NCS story

    P"rpose

    (llo+s a MOS to re2uest t%at t%e "S create, modiy or delete a story in t%e"S. )%is is a re2uest only. ( ("L res#onse is #erectly valid and must beantici#ated. t is #ossible t%at an ("L condition mi$%t never be returned.

    Operatio 7operatio attrib"te

    "reate a Story /5FModiy a Story /-PD()5Delete a Story /D5B5)5

    ( /5F o#eration creates a ne+ Story. )%e "S decides +%ere it +ill be in t%es#eciied runnin$ order.

    (n /-PD()5 o#eration re#laces an e6istin$ Story in t%e s#eciied runnin$ order.

    ( /D5B5)5 o#eration deletes an e6istin$ Story in t%e s#eciied runnin$ order.

    (n "S may c%oose to re#ort an o#eration as successul even i it does not ulilt%e entire re2uest.

    S"bse:"et Messages

    )%ere are t%ree #ossible se2uences o messa$es t%at are sent by t%e "S i t%eo#eration is successully com#leted.1. t%e o#eration is /5F, t%e "S +ill send a roStorynsert messa$e or t%ee2uivalent ro5lement(ction messa$e to t%e MOS. t may t%en also send aroStorySend messa$e or t%e Story.. t%e o#eration is /-PD()5, t%e "S +ill send a roStoryRe#lace messa$e ort%e e2uivalent ro5lement(ction messa$e to t%e MOS. t may t%en also send aroStorySend messa$e or t%e Story.

    3. t%e o#eration is /D5B5)5, t%e "S +ill send a roStoryDelete messa$e ort%e e2uivalent ro5lement(ction messa$e to t%e MOS.

    Str"ct"ral O"tlie

    mosD ncsD

    http://www.mosprotocol.com/MOS%20Files/MOS%20v281-522.htm#mosID%23mosIDhttp://www.mosprotocol.com/MOS%20Files/MOS%20v281-522.htm#ncsID%23ncsIDhttp://www.mosprotocol.com/MOS%20Files/MOS%20v281-522.htm#mosID%23mosIDhttp://www.mosprotocol.com/MOS%20Files/MOS%20v281-522.htm#ncsID%23ncsID
  • 8/12/2019 MOS object

    141/227

    messa$eD roRe2Story(ction ;o#eration Y5F, -PD()5, D5B5)5Z leaseBoc YdurationZ username< roStorySend roD

    storyD storySlu$ storyum story@ody;Read1stM5Mas@ody< storyPresenter storyPresenterRR #

    em tab #i #$

    b u storytem itemD itemSlu$ ob=D mosD mos(bstract

    ob=Pat%s ob=Pat% ob=Pro6yPat%

    item"%annel item5dStart item5dDur item-ser)imin$Dur item)ri$$er macron macroOut

    mos56ternalMetadata mos56ternalMetadata

    S"nta!

    http://www.mosprotocol.com/MOS%20Files/MOS%20v281-522.htm#requestID%23requestIDhttp://www.mosprotocol.com/MOS%20Files/MOS%20v281-522.htm#requestID%23requestID
  • 8/12/2019 MOS object

    142/227

  • 8/12/2019 MOS object

    143/227

    =>a$ple , Create

    string string int ;E ,o, string

    string string string ,oolean string string string

    string string

    =>a$ple , Modi#y

    string string

  • 8/12/2019 MOS object

    144/227

    int 7E ,o, string string string string ,oolean string string string

    string string

    =>a$ple , 6elete

    string string int E'E7E

    ,o, string string string string ,oolean string

  • 8/12/2019 MOS object

    145/227

    string string string string

    0espose

    ro(c

    t%e s#eciied action cannot be com#leted, t%e "S sends a ("L messa$e+it% roStatus containin$ a reason or t%e error. t%e s#eciied action is successully com#leted, t%e "S sends an ("Lmessa$e. t%e o#eration is /5F, t%e storyD +ill be in roStatus.

    Syta> o# 0espose

    =>a$ple o# 0espose

    http://www.mosprotocol.com/MOS%20Files/MOS%20v281-522.htm#rosAckhttp://www.mosprotocol.com/MOS%20Files/MOS%20v281-522.htm#rosAck
  • 8/12/2019 MOS object

    146/227

    string string string string string string string

  • 8/12/2019 MOS object

    147/227

    2 Other $essages ad data str"ct"res

    2.. heartbeat Coectio Co#idece dicator

    P"rpose

    Messa$e sent or t%e #ur#ose o veriyin$ net+or and a##lication continuity.

    Str"ct"ral O"tlie

    mosD ncsD messa$eD %eartbeat time

    Syta>

    =>a$ple

    string string int

  • 8/12/2019 MOS object

    148/227

    string

    0espose

    Eeartbeat

    Syta> o# 0espose

    =>a$ple o# 0espose string

  • 8/12/2019 MOS object

    149/227

    2..* re:Mach#o 0e:"est Machie #or$atio

    P"rpose

    Met%od or an "S or MOS to determine more inormation about its counter#art.

    Str"ct"ral O"tlie

    mosD ncsD messa$eD re2Mac%no

    Syta>

    =>a$ple

    strin strin int

    0espose

    2..3 listMach#o Machie 6escriptio List

    P"rpose

    Met%od or an "S or MOS to send inormation about itsel.

  • 8/12/2019 MOS object

    150/227

  • 8/12/2019 MOS object

    151/227

    ty#es:strin$H74s:element minOccurs0 ma6Occurs1 namemodel

    ty#es:strin$H74s:element minOccurs0 ma6Occurs1 name%+Rev

    ty#es:strin$H74s:element minOccurs0 ma6Occurs1 names+Rev

    ty#es:strin$H74s:element minOccurs0 ma6Occurs1 nameDOM

    ty#es:strin$H74s:element minOccurs0 ma6Occurs1 nameS ty#es:strin$H74s:element minOccurs0 ma6Occurs1 nameD ty#es:strin$H74s:element minOccurs0 ma6Occurs1 nametime

    ty#es:strin$H74s:element minOccurs0 ma6Occurs1 nameo#)ime

    ty#es:strin$H74s:element minOccurs0 ma6Occurs1 namemosRev

    ty#es:strin$H74s:element minOccurs0 ma6Occurs1 namemosProile0

    ty#es:strin$H74s:element minOccurs0 ma6Occurs1 namemosProile1

    ty#es:strin$H74s:element minOccurs0 ma6Occurs1 namemosProile

    ty#es:strin$H74s:element minOccurs0 ma6Occurs1 namemosProile3

    ty#es:strin$H74s:element minOccurs0 ma6Occurs1 namemosProile&

    ty#es:strin$H74s:element minOccurs0 ma6Occurs1 namemosProile'

    ty#es:strin$H74s:element minOccurs0 ma6Occurs1 namemosProile!

    ty#es:strin$H74s:element minOccurs0 ma6Occurs1 namemosProile

    ty#es:strin$H7

    4s:element minOccurs0 ma6Occurs1 namedeault(ctivety#etns:(rrayO(ctiveJty#eH7

    4s:element minOccurs0 ma6Occurs1namemos56ternalMetadata ty#etns:(rrayOMos56ternalMetadataJty#eH7

    4Hs:se2uence74Hs:com#le6)y#e7

    4s:com#le6)y#e name(rrayO(ctiveJty#e74s:se2uence7

    4s:element minOccurs0 ma6Occursunboundedname(ctiveJty#e nillabletrue ty#etns:(ctiveJty#eH7

    4Hs:se2uence74Hs:com#le6)y#e7

    4s:com#le6)y#e name(ctiveJty#e74s:se2uence7

    4s:element minOccurs0 ma6Occurs1 namecontrolileBocationty#es:strin$H7

    4s:element minOccurs0 ma6Occurs1 namecontrolSlu$ty#es:strin$H7

    4s:element minOccurs0 ma6Occurs1 namecontrolamety#es:strin$H7

  • 8/12/2019 MOS object

    152/227

    4s:element minOccurs0 ma6Occurs1namecontrolDeaultParams ty#es:strin$H7

    4s:element minOccurs0 ma6Occurs1 namemodety#es:strin$H7

    4Hs:se2uence74Hs:com#le6)y#e7

  • 8/12/2019 MOS object

    153/227

    Exmple of Response

    string string string string string string string string string string string string

    string string string string string string string string string string

    string string string string string string string string

  • 8/12/2019 MOS object

    154/227

    2..2 $os=>teralMetadata , =>teral Metadata

    P"rpose

    )%is data bloc can a##ear in several messa$es as a mec%anism or trans#ortin$additional metadata, inde#endent o sc%ema or D)D.

    -ehavior

    )%e value o t%e 4mosSco#e7 ta$ im#lies t%rou$% +%at #roduction #rocessest%is inormation +ill travel.

    ( sco#e o /O@K5") im#lies t%is inormation is $enerally descri#tive o t%eob=ect and a##ro#riate or 2ueries.

    ( sco#e o /S)OR* su$$ests t%is inormation may determine %o+ t%e Ob=ect isused in a Story. or instance, ntellectual Pro#erty Mana$ement. )%isinormation +ill be stored and used +it% t%e Story.

    ( sco#e o /PB(*BS) su$$ests t%is inormation is s#eciic to describin$ %o+t%e Ob=ect is to be #ublis%ed, rendered, or #layed to air and t%us, +ill be includedin t%e Play Bist in addition to t%e Story.)%is mec%anism allo+s us to rou$%ly ilter e6ternal metadata and selectivelya##ly it to dierent #roduction #rocesses and out#uts. S#eciically, it is neit%eradvisable nor a##ro#riate to send lar$e amounts o ina##ro#riate metadata to t%e

    Playlist in ro"reate messa$es. n addition to t%ese blocs o data bein$#otentially very lar$e, t%e media Ob=ect Server is, #resumably, already a+are ot%is data.)%e value o t%e 4mosSc%ema7 ta$ +ill be descri#tive o t%e sc%ema used +it%int%e 4mosPayload7. )%e value o 4mosSc%ema7 is im#lied to be a #ointer or-RB to t%e actual sc%ema document.)%e contents o 4mosPayload7 must be +ell ormed MB, re$ardless o t%esc%ema used.

  • 8/12/2019 MOS object

    155/227

  • 8/12/2019 MOS object

    156/227

    2.. $oste$0e#erece (or 7ite$) , Metadata bloc/ tras#erredby !ctive@ Cotrols icl"ded i roCreate $essages

    P"rpose

    )%is data bloc a##ears in t%e MOS Protocol as a subset o t%e ro"reatecommands, but may also stand alone as recommended mec%anism ortranserrin$ tem inormation rom an "S #lu$in to t%e "S. t is im#lied t%att%is ormat +ill also be included in t%e body o t%e Story and t%us +ill be out#ut int%e roStorySend messa$es.

    -ehavior

    )%e metadata in t%e tem Reerence is a descri#tion o %o+ to e6ecute #laybacor instantiation o an ob=ect, #ointed to by t%e 4ob=D7. )%e 4mosD7 is re2uired

    or orced #laylist construction, maintenance o tem Reerences +it%in storiesand or association +it% MOS (ctive com#onents. )%e 4mos(bstract7 ield#rovides a dis#layable abstract o t%e Ob=ectHtem, more verbose t%an t%e4itemSlu$7. 4mos(bstract7 may contain ormattin$.t is recommended t%at vendor or site s#eciic ta$s be included in t%e4mos56ternalMetadata7 structure, not in t%e body o t%e messa$e.

    Str"ct"ral O"tlie

    itemJty#e

    itemD itemSlu$ ob=D mosD mos(bstract ob=Pat%s ob=Pat%

    ob=Pro6yPat% item"%annel item5dStart item5dDur

    item-ser)imin$Dur item)ri$$er macron macroOut mos56ternalMetadata

    Syta>

  • 8/12/2019 MOS object

    157/227

    =>a$ple

    1&an )ites og vo##$#ncs.com&an )ites og vo trt :8

    CCserverCmediaCclip#D$0$8cd$#$0s0d.mxfttp:!!server!prox*!clipe.mv

    10101#10manual$eDde$#DDa 'I'/(7

  • 8/12/2019 MOS object

    158/227

  • 8/12/2019 MOS object

    159/227

    )%e scenario described is =ust one s#ecial situation o course, it is not relevantor messa$es +%ic% say /$ive me t%at #iece o inormation lie t%e mosRe2Ob=messa$e.Eo+ever t%e messa$eD ield +as added to most messa$es, because t%eremi$%t be ot%er usa$es also.

    F%en debu$$in$ MOS inte$rations it +ill be %el#ul to see t%e messa$eD in t%elo$ iles o bot% sides o a communication.

    Messa$es includin$ a messa$eD ield:

    Messa$es used or re2uests, +%ic% e6#ect an ans+er rom a reci#ient,%ave a uni2ue messa$eD in t%e messa$eD ield.56am#les: ro"reate, mosOb=

    Messa$es used as res#onse to a re2uest %ave t%e same messa$eD ast%e re2uest.56am#les: mos(c, ro(c

    Messa$es +%ic% are only re#eated messa$es due to a retry attem#t %avet%e same messa$eD as t%e ori$inal messa$e sent at t%e irst try.

    Mandatory ield:

    )%e messa$eD is a mandatory ield in t%e messa$es in +%ic% it occurs.Eo+ever an em#ty messa$eD ta$ is allo+ed or messa$es +%en used int%e (ctive interace, as or t%e (ctive interace t%ere is no need or auni2ue identiier.

    ncrementin$:

    )%e sender in a MOS communication increments t%e messa$eD by oneor eac% ne+ re2uest it sends, t%e last used messa$eD must be#ersistent. )%e messa$eD +ra#s to 1 +%en t%e limit o t%e data ty#e isreac%ed.

    Syta>

    )%e contents o t%e element must be a 3bit si$ned inte$er, decimal or%e6adecimal, +it% a value lar$er t%an or e2ual to 1. messa$eD is a sub elemento t%e mosEeader. )%e synta6 or t%e mosEeader is:

  • 8/12/2019 MOS object

    160/227

    =>a$ple

    string string int

  • 8/12/2019 MOS object

    161/227

    2..5 objPaths , Fa$big"o"s poiters to $edia #iles

    P"rpose

    )%e DobjPathsEstructure is intended to #rovide lins to one or more renderin$so a media ob=ect. )%ese lins can be used, +it%out ambi$uity, to allo+mac%ines etc% t%e media ob=ect as a ile. )%is, in eect, e6#licitly enables /MOSRedirection and ne+ uses o media #ro6ies.

    )%e DobjPathsEstructure is an additional and o#tional com#onent to be included+it%in t%ese e6istin$ structures:

    D$osObjEDite$E

    e!aior

    This structure, embedded in mosObj and item structures, enables

    systems to retrieve foreign media files, both essence and proxy. The

    objPaths structure must contain a) a single objPath or objProxyPathfield b) multiple objPath or objProxyPath fields.

    Str"ct"ral O"tlie

    ob=Pat%s

    ob=Pat% ob=Pro6yPat%

    Syta>

  • 8/12/2019 MOS object

    162/227

    =>a$ple o# the DobjPathsE str"ct"reB

    Co$poets o# the DobjPathsE str"ct"re areB

    DobjPathEta$

    DobjPro>yPathEta$tech6escriptioattribute

    DobjPathE#rovides a #at% to a ile ob=ect in a orm intended or#roduction or distribution. )%is #at% can be ormatted as a -", E))P or)P lin.

  • 8/12/2019 MOS object

    163/227

    DobjPro>yPathE#rovides a #at% to an alternate tec%nical orm o t%eob=ect, most oten #rovided at a lo+er resolutionHbit rateHile siAe ascom#ared to t%e DobjPathE. )%is #at% can be ormatted as a -" orE))P lin. )P is not allo+ed

    )%ese are e6am#les o #at% ormats:

    1< E))P lina. %tt#:HHserverH#ro6yHcli#3908cd30s0e.+mv

    < )P lina. t#:HHserverH#ro6yHcli#3908cd30s0e.+mv

    3< -" lina. [[server[media[cli#3908cd30s0d.m6

    )%e tech6escriptioattribute #rovides a brie and very $eneral tec%nical

    descri#tion o t%e codec or ile ormat. ote t%at t%e codec name s%ouldcome irst, ollo+ed by additional o#tional descri#tion.

    56am#les:

    /MP5? >ideo

    /FM9 '0Lb#s

    Scope o# DobjPathsEB

    )%e DobjPathsEstructure is intended to be included in bot% D$osObjEmessa$es and Dite$Estructures.

    n t%e conte6t o Dite$Estructures, t%e DobjPathsEstructure is intendedto be included in Stories.

    )%e DobjPathsEstructure s%ould be considered to %ave an im#lied Sco#eo /Story and by #reerence not #assed to t%e #arent MOS device inro"onstruction messa$es rom t%e "S.

    (n e6ce#tion to t%is is i redirection is used. n t%is case t%e DobjPathEstructure is intended to be #assed to non#arent MOS devices. )%eDobjPathEstructure +ill enable non#arent devices to etc% t%e mediaob=ect as a ile rom t%e #arent MOS device.

    )%e DobjPathEstructure s%ould be #assed in all roStorySend messa$esas #art o t%e unmodiied Dite$Estructure +it%in eac% Story.

    http://server/proxy/clip392028cd2320s0e.wmvftp://server/proxy/clip392028cd2320s0e.wmvhttp://server/proxy/clip392028cd2320s0e.wmvftp://server/proxy/clip392028cd2320s0e.wmv
  • 8/12/2019 MOS object

    164/227

    =>a$ple

    56am#le o t%e use o t%e DobjPathsEstructure in a D$osObjEmessa$e:

    string string int string string

    string string string string string string string string string string string string string

  • 8/12/2019 MOS object

    165/227

    string string string string

    56am#le o t%e use o t%e DobjPathsEstructure in a Dite$Estructure:

  • 8/12/2019 MOS object

    166/227

  • 8/12/2019 MOS object

    167/227

    . MOS v*.8.* !ctive@ Cotrol Speci#icatio

    )%is s#eciication describes t%e +ay an "S Eost and an (ctive Plu$n %ostedinside it interact. )%e t+o main $oals are:

    )o allo+ le6ibility in deinin$ t%e siAe and unction o t%e (ctive Plu$n

    )o allo+ modiication o tem Reerences inside "S storiest is assumed t%at any communication initiated by eit%er a##lication is t%e result ot%e user +%o is runnin$ t%em #erormin$ an action.

    . Methods; =vets ad 6ata 'ypes

    Methods

    $osMsgAro$%ost>@ code to call t%e met%od mi$%t loo lie t%is:

    sctive%esponse = mos&sgrom4ostFmos&sgH

    =vets

    $osMsgAro$Pl"g>@ code or t%e "S Eost event %andler mi$%t loo lie t%is:

    rivate (u, &osctive%5mos&sgromlug/nFmos&sg as(tringJ mosesponse as (tringH

    K rocess mos&sg...

    K ssign esponse accordingl*.. mosesponse = 6et+(tor*(endFHEnd (u,

  • 8/12/2019 MOS object

    168/227

    6ata 'ype

    $osMsg ;-nicode -"S

  • 8/12/2019 MOS object

    169/227

    .* -ehavior

    ?eneral

    Messa$es are sent rom t%e "S Eost to t%e (ctive Plu$n via t%emosMs$romEost Met%od or t%e OB5 dra$ and dro# data ty#emosMs$. Res#onses to select messa$es are returned via t%e returnvalue o t%e mosMs$romEost met%od.Messa$es are sent rom t%e (ctive Plu$n to t%e "S Eost via t%emosMs$romPlu$n event or t%e OB5 dra$ and dro# data ty#emosMs$. Res#onses to mosMs$romPlu$n events are returned via

    t%e mosRes#onse #arameter. Messa$es sent via OB5 dra$ and dro#receive no res#onse.Fe %ave tried to enable data transer bet+een t%e "S Eost and t%e

    (ctive Plu$n via dra$ and dro# o#erations as +ell as nondra$ anddro# Met%ods and 5vents. )%us it s%ould be #ossible or a##licationdevelo#ers to enable eyboard e2uivalent o#erations or most dra$and dro# o#erations.

  • 8/12/2019 MOS object

    170/227

    Start -#:

    1

  • 8/12/2019 MOS object

    171/227

    9

  • 8/12/2019 MOS object

    172/227

    !dditioal #"ctioalityB

    1

  • 8/12/2019 MOS object

    173/227

  • 8/12/2019 MOS object

    174/227

    3

  • 8/12/2019 MOS object

    175/227

    transer t%e (ctive control to anot%er +indo+ or release itsreerence to t%e ob=ect. t%e "S Eost c%an$es t%e mode or conte6t o t%e control rat%ert%an releasin$ it, it +ill return an ncs(##no messa$e indicatin$ t%e

    ne+ mode in t%e mosRes#onse #arameter. t%e "S Eost releases its reerence to t%e (ctive control, it +illreturn an ncs(c messa$e +it% a status o ("L. t may release itsreerence to t%e (ctive durin$ t%e mosMs$romPlu$n event orater returnin$. )%e (ctive must not allo+ itsel to be destroyeduntil ater t%e call %as returned. De#endin$ on t%e com#ilerunctionality, t%is may re2uire t%e tem#orary increment o t%eob=ectIs reerence count until t%e call %as com#leted. ailure to doso may result in an access violation +%en t%e call returns.

  • 8/12/2019 MOS object

    176/227

    .3 !ctive@ Co$$"icatio $essages

    MOS Messages

    cs!c/cs0e:!pp#ocs!pp#ocs0e:!ppModecsStory0e:"estcste$0e:"estroStorySedcste$$oste$0eplacecs0e:!ppClose

    .3. cs!c/ !c/o&ledge $essage

    P"rpose

    )%is allo+s eit%er t%e "S Eost or (ctive Plu$n to acno+led$e recei#t ocertain messa$es. )%e status value is eit%er /("L or /5RROR. it is /5RROR,t%e statusDescri#tion value o#tionally describes t%e #roblem.

    0espose

    one C t%is is a res#onse to several messa$es.

    Str"ct"ral O"tlie

    mosncs(c

    statusstatusDescri#tion

  • 8/12/2019 MOS object

    177/227

    Syta>

    4X5B5M5) ncs(c ;status, statusDescri#tiona$ple

    4mos74ncs(c7

    4status75RROR4Hstatus74Hncs(c7

    4Hmos7

  • 8/12/2019 MOS object

    178/227

    .3.* cs0e:!pp#o , 0e:"est !pplicatio i#or$atio adcote>t

    P"rpose

    )%is allo+s t%e (ctive Plu$n to re2uest conte6tual inormation rom t%e "SEost. t%e "S Eost can ulill t%e re2uest, it returns t%e ncs(##no messa$eWot%er+ise, it returns ncs(c +it% a status o /5RROR.

    0espose

    ncs(##noor

    ncs(c

    Str"ct"ral O"tlie

    mosncsRe2(##no

    Syta>

    4X5B5M5) ncsRe2(##no ;a$ple

    4mos74ncsRe2(##noH7

    4Hmos7

  • 8/12/2019 MOS object

    179/227

    .3.3 cs!pp#o , !pplicatio i#or$atio ad cote>t

    P"rpose

    )%is allo+s t%e "S Eost to send conte6tual inormation to t%e (ctive Plu$n.)%e inormation includes #roduct inormation about t%e "S Eost, t%e conte6t in+%ic% t%e (ctive Plu$n can be instantiated, t%e available screen siAes andmodes or t%e (ctive Plu$n +indo+ and +%et%er t%e +indo+ can be closed byt%e (ctive.ote: )%is messa$e %as t+o orms. )%e irst uses t%e mosOb= structure and t%esecond uses t%e roDHStoryDHitem structure. )%ese ta$s are listed as o#tionalWt%e messa$e can be used +it%out conte6t o mosOb=HroDHStoryDHteminormation i t%e #ur#ose is to instantiate an /em#ty control.

    )%e ollo+in$ are valid values o 4mode7:"O)(5D C