來源:http://fungsiong.blogspot.tw/2010/11/hbbtv-javescript-api-dsm-cc-stream_15.html

 

(以下資料歡迎轉載,請著名出處)
HbbTV - JaveScript API 取得 DSM-CC stream events (上) 
上一篇介紹HbbTV架構瀏覽器應用層,解析接收的DSM-CC事件的呈現是採用JavaScript的API[1],增加和移除串流事件聆聽者(event listener)與Carousel物件存取XMLHttpRequest這兩部分,本篇將介紹第三部份內容購買之延伸application/oipfDrmAgent嵌入物件的API。 
3.  延伸application/oipfDrmAgent嵌入物件
介紹支援application/oipfDrmAgent嵌入物件類別,包含性質(properties)、方法和事件。 
                                表 1. 內容購買的操作程序


function onContentPurchaseMessageReceived(Integer messageNb, String messageBytes, String DRMSystemID)


描述
此function被有效的SAS_async_msg()呼叫,透過開啟SAS資源接收APDU,或從CA系統指定DRMSystemID變數
Integer messageNb message_nb的值是從SAS_asyc_msg()的APDU而來


String messageBytes
message_bytes字串內容域來自SAS_asyc_msg()的APDU,編碼為16進位,EX:0A10B81033(訊息長度 = 5 bytes)
String DRMSystemID 包含URN的DVB CASystemID原本的訊息,此字串的字首為10進位的CA_System_ID (urn:dvb:casystemid: )


function onContentPurchase(Integer cpEventID, String DRMSystemID)


此function根據事件表單參照下表
整數:cpEventID 事件標示符號,有效值如下,


事件標示符號


描述


語意
0 Session成功開啟 此session為SAS資源指定CA系統成功開啟
1 Session關閉 此session為SAS資源指定CA系統關閉
2 無用的CA system CA系統不能用,也就是CAM已移除
3 新的CA system 新CA系統變成可使用,也就是已插入CAM
 
字串 DRMSystemID:CA系統完成生成事件
(資料來源:ETSI)
表 2. 內容購買的訊息傳遞方法


function sendContentPurchaseMessage(Integer messageNb, String messageBytes, String DRMSystemID)


描述
傳送內容購買訊息(content purchasing message)格式的訊息給CA系統,回傳的編碼:


結果碼


描述


語意


0


成功
訊息成功通過到下層的軟體堆疊(underlying software stack)。
備註:這不是指訊息成功傳遞


1
無效的CA系統

CA系統指示終端不存在DRMSystemID


2
Session未準備好 Session選擇CA系統未建立完成


3
Protocol沒有支援 CA系統沒有支援內容購買訊息
length_field()和message_length域(參考CI+的M.2.2[2])於終端自動生成的SAS_async_msg()內


變數
(Argument)


messageNb
訊息號碼,其定義在CI+的M.2.2[2],於SAS_saync_msg()映射到的message_nb


messageBytes
訊息bytes,其定義在CI+的M.2.2[2],於SAS_saync_msg()映射到的message_byte()為16進位編碼,EX:0A10B81033(長度為5bytes)
DRMSystemID URN指向CASystemID傳送訊息
(資料來源:ETSI)
表 3. 內部事件onContentPurchase和onContentPurchaseMessageReceived與相關DOM2事件與性質


內部事件

(intrinsic event)


相關的DOM2事件


DOM2事件性質(properties)


onContentPurchase


ContentPurchaseEvent
Bubbles: NO
Cancelable: NO
Context Info: cpEventID, 
DRMSystemID


onContentPurchase
MessageReceived


ContentPurchase
MessageReceivedEvent
Bubbles: NO
Cancelable: NO
Context Info: messageNb, 
messageBytes, DRMSystemID


注意
以上的DOM2事件可直接發送給目標事件,沒有bubble也沒有capture,應用程序不仰賴接收ContentPurchaseEvent事件於bubbling或capturing階段,addEventLister()方法被application/oipfDrmAgent物件呼叫,忽略第三參數addEventListener(就是useCapture)
                                 (資料來源:ETSI)
參考文獻
1. ETSI TS 102 796 (V1.1.1) Hybrid Broadcast Broadband TV
2. CI Plus Forum, CI Plus Specification: "Content Security Extensions to the Common Interface", V1.2 (2009-04). NOTE: Available at http://www.ci-plus.com/data/ci_plus_specification_v1.2.pdf.
arrow
arrow
    全站熱搜

    戮克 發表在 痞客邦 留言(0) 人氣()