1
0
Fork 0
mirror of https://github.com/vanitasvitae/Smack.git synced 2024-11-27 14:32:06 +01:00
Smack/documentation/extensions/jingle.md
Florian Schmaus 6bb001d274 New Jingle API groundwork
A start for the new Jingle API. Since Jingle is a single IQ with many
plugable extensions, there are some particularities we need to deal
with, e.g. jingle users have to register with JingleManager.

This is untested code. There may be drangons.
2017-05-30 08:45:27 +02:00

1.8 KiB

Jingle

XEP related: XEP-0116: Jingle

Jingle Element Structure

jingle
│  action (REQUIRED, XEP-0166 § 7.2)
|    content-accept
|    content-add
|    content-modify
|    content-reject
|    content-remove
|    description-info
|    security-info
|    session-accept
|    session-info
|    session-initiate
|    transport-accept
|    transport-info
|    transport-reject
|    transport-replace
│  initator (RECOMMENDED for session initiate, NOT RECOMMENDED otherwise, full JID, XEP-0166 § 7.1)
│  responder (RECOMMENDED for session accept, NOT RECOMMENDED otherwise, full JID. XEP-0166 § 7.1)
│  sid (REQUIRED, SHOULD match XML Nmtoken production)
│
├── <reason/> (optional, XEP-0166 § 7.4)
│    │
│    └──(alternative─session│busy│..)
│
└── <content/> (one or more, XEP-0166 § 7.3)
     │  creator (REQUIRED, must be one of)
	 |    initiator
	 |    responder
     │  disposition (OPTIONAL)
     │  name (REQUIRED)
     │  senders (OPTIONAL, except when content-modify then REQUIRED)
	 |    both (default)
	 |    initiator
	 |    none
	 |    responder
     │
     ├──description
     │  │  media
     │  │  xmlns
     │  │
     │  ├──payload─type
     │  │
     │  └──file (XEP─0234)
     │
     └──transport
        │  xmlns
        │  pwd (OPTIONAL, XEP-0176 Jingle ICE)
        │  ufrag (OPTIONAL, XEP-0176 Jingle ICE)
        │  mode (XEP-0234 Jingle File Transfer)
        │  sid (XEP-0234 Jingle File Transfer)
        │
        └──candidate
              component
              foundation
              generation
              id
              ip
              network
              port
              priority
              protocol
              type