I have also been thinking about implementing polls for some time. For polls in the context of a chat (1:1 or MUC) this is my proposal:

XEP-0004 says the following:

The <x/> element qualified by the 'jabber:x:data' namespace SHOULD be included either directly as a first-level child of a <message/> stanza or ...

The full context for the data is provided by three things ... the place of the form within ... structured conversation (e.g., a message <thread/>)

For <message/> stanzas, the <thread/> SHOULD be copied in the reply if provided. The <x/> element qualified by the 'jabber:x:data' namespace MUST be a child of the <message/> stanza.

This gives us a very natural poll transport mechanism, as follows:

        <message id="poll1" type="groupchat" from="romeo">
                <x xmlns="jabber:x:data" type="form">
                        <field var="FORM_TYPE" 
type="hidden"><value>urn:...polls</value></field>
                        <field var="q" label="A or B?" type="list-single">
                                <option><value>A</value></option>
                                <option><value>B</value></option>
                        </field>
                </x>
                <thread>poll-uuid</thread>
        </message>

        <message id="pollresponse1" type="groupchat" from="juliet">
                <x xmlns="jabber:x:data" type="submit">
                        <field var="FORM_TYPE" 
type="hidden"><value>urn:...polls</value></field>
                        <field var="q" label="A or B?" type="list-single">
                                <value>A</value>
                        </field>
                </x>
                <thread>poll-uuid</thread>
        </message>

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Standards mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to