Jingle (XEP-0166) là m t b công c h tr XMPP trong vi c truy n t i các d li u đa ph ng ti n, vì c b n XMPP ch cung c p kh n ng v n chuy n các th XML gi a các th c th khác nhau trên m ng. Jingle s d ng XMPP nh m t kênh tín hi u đ cài đ t, qu n lý, và h y các phiên giao d ch truy n thông, trong khi đó d li u s đ c trao đ i qua m t kênh d li u thông qua các giao th c khác không ph i là XMPP.
Jingle đ c thi t k theo các mô đun:
ôV ng d ng, th hi n cách th c v n chuy n trong m t phiên, Jingle h tr các ch c n ng nh “voice and video chat” (Jingle RTP Sessions XEP-0167), “file transfer” (Jingle File Transfer XEP-0234), …
ôV ph ng th c v n chuy n, th hi n cách mà d li u đ c g i đi, ví d nh User Datagram Protocol (UDP), SOCKS5 Bytestreams (XEP-0260) hay In-Band Bytestreams (XEP-0261).
Quy trình ho t đ ng c a m t phiên Jingle nh sau:
ôA g i B m t yêu c u bao g m lo i ng d ng và ph ng th c v n chuy n.
ôA và B s th ng l ng v các giá tr c a lo i ng d ng và ph ng th c v n chuy n.
ôB s ch p nh n ho c t ch i yêu c u c a A.
ôN u ch p nh n, d li u s đ c truy n t i d a vào lo i ng d ng trên n n ph ng th c v n chuy n.
ôTrong quá trình trao đ i, A và B có th thay đ i m t vài thông s c a phiên.
ôCu i cùng, k t thúc m t phiên trao đ i d li u.
Hình 2.6:Quá ho t đ ng c a m t phiên Jingle
Ngu n: Oreilly (2009), The Definitive Guide, Trang 126
M t s hành đ ng trong quá trình giao d ch c a Jingle:
ôsession-initiate: kh i t o m t phiên giao d ch m i.
ôsession-info: g i thông tin b n tin trong su t quá trình giao d ch, có th là m t l nh ping ho c m t b n tin báo hi u (ringing s d ng trong Jingle RTP Session)
ôsession-terminate: k t thúc phiên.
ôtransport-accept: ch p nh n hành đ ng transport-replace.
ôtransport-info: trao đ i các “candidates”.
ôtransport-replace: đnh ngh a l i ph ng th c v n chuy n ho c thay th v i m t ph ng th c khác.
ôtransport-reject: t ch i hành đ ng transport-replace.
ôcontent-accept: ch p nh n yêu c u content-add.
ôcontent-add: thêm n i dung vào phiên giao d ch.
ôcontent-remove: xóa b n i dung kh i phiên.
ôcontent-modify: thay đ i h ng trao đ i thông tin.
ôcontent-reject: t ch i hành đ ng content-add
ôdescription-info: trao đ i các thông tin liên quan đ n t ng ng d ng.