Skip to content
Back to top
View this page

# XEP-0439: Quick Response

XEP-0439 on xmpp.org

class slixmpp.plugins.xep_0439.XEP_0439(xmpp, config=None)

  XEP-0439: Quick Response

  ask_for_actions(mto, body, actions, mtype='chat', lang=None, *, mfrom=None)

    Send a message with a set of actions.

    Parameters:

      - mto (`JID`) – The JID of the entity which will receive the message

      - body (`str`) – The message body of the question

      - actions (`Iterable`[`tuple`[`str`, `str`]]) – A set of tuples containing (action, label) for each action

      - mtype (`Literal`[`'chat'`, `'error'`, `'groupchat'`, `'headline'`, `'normal'`]) – The message type

      - lang (`str` | `None`) – The lang of the message (if not use, the default for this session will be used.

  ask_for_response(mto, body, responses, mtype='chat', lang=None, *, mfrom=None)

    Send a message with a set of responses.

    Parameters:

      - mto (`JID`) – The JID of the entity which will receive the message

      - body (`str`) – The message body of the question

      - responses (`Iterable`[`tuple`[`str`, `str`]]) – A set of tuples containing (value, label) for each response

      - mtype (`Literal`[`'chat'`, `'error'`, `'groupchat'`, `'headline'`, `'normal'`]) – The message type

      - lang (`str` | `None`) – The lang of the message (if not use, the default for this session will be used.

## Stanza elements

class slixmpp.plugins.xep_0439.stanza.Action(xml=None, parent=None)

  Action element.

      <action xmlns="urn:xmpp:tmp:quick-response" id="merge-32643" label="Merge Now" />

  interfaces: ClassVar[set[str]] = {'id', 'label'}

    The set of keys that the stanza provides for accessing and manipulating the underlying XML object. This set may be augmented with the `plugin_attrib` value of any registered stanza plugins.

  name: ClassVar[str] = 'action'

    The XML tag name of the element, not including any namespace prefixes. For example, an `ElementBase` object for `<message />` would use `name = 'message'`.

  namespace: str = 'urn:xmpp:tmp:quick-response'

    The XML namespace for the element. Given `<foo xmlns="bar" />`, then `namespace = "bar"` should be used. The default namespace is `jabber:client` since this is being used in an XMPP library.

  plugin_attrib: ClassVar[str] = 'action'

    For `ElementBase` subclasses which are intended to be used as plugins, the `plugin_attrib` value defines the plugin name. Plugins may be accessed by using the `plugin_attrib` value as the interface. An example using `plugin_attrib = 'foo'`:

        register_stanza_plugin(Message, FooPlugin)
        msg = Message()
        msg['foo']['an_interface_from_the_foo_plugin']

class slixmpp.plugins.xep_0439.stanza.ActionSelected(xml=None, parent=None)

  Selected Action element.

      <action-selected xmlns="urn:xmpp:tmp:quick-response" id="merge-32643" />

  interfaces: ClassVar[set[str]] = {'id'}

    The set of keys that the stanza provides for accessing and manipulating the underlying XML object. This set may be augmented with the `plugin_attrib` value of any registered stanza plugins.

  name: ClassVar[str] = 'action-selected'

    The XML tag name of the element, not including any namespace prefixes. For example, an `ElementBase` object for `<message />` would use `name = 'message'`.

  namespace: str = 'urn:xmpp:tmp:quick-response'

    The XML namespace for the element. Given `<foo xmlns="bar" />`, then `namespace = "bar"` should be used. The default namespace is `jabber:client` since this is being used in an XMPP library.

  plugin_attrib: ClassVar[str] = 'action_selected'

    For `ElementBase` subclasses which are intended to be used as plugins, the `plugin_attrib` value defines the plugin name. Plugins may be accessed by using the `plugin_attrib` value as the interface. An example using `plugin_attrib = 'foo'`:

        register_stanza_plugin(Message, FooPlugin)
        msg = Message()
        msg['foo']['an_interface_from_the_foo_plugin']

class slixmpp.plugins.xep_0439.stanza.Response(xml=None, parent=None)

  Response element.

      <response xmlns="urn:xmpp:tmp:quick-response" xml:lang="en" value="yes" label="Sure!" />

  interfaces: ClassVar[set[str]] = {'label', 'value'}

    The set of keys that the stanza provides for accessing and manipulating the underlying XML object. This set may be augmented with the `plugin_attrib` value of any registered stanza plugins.

  name: ClassVar[str] = 'response'

    The XML tag name of the element, not including any namespace prefixes. For example, an `ElementBase` object for `<message />` would use `name = 'message'`.

  namespace: str = 'urn:xmpp:tmp:quick-response'

    The XML namespace for the element. Given `<foo xmlns="bar" />`, then `namespace = "bar"` should be used. The default namespace is `jabber:client` since this is being used in an XMPP library.

  plugin_attrib: ClassVar[str] = 'response'

    For `ElementBase` subclasses which are intended to be used as plugins, the `plugin_attrib` value defines the plugin name. Plugins may be accessed by using the `plugin_attrib` value as the interface. An example using `plugin_attrib = 'foo'`:

        register_stanza_plugin(Message, FooPlugin)
        msg = Message()
        msg['foo']['an_interface_from_the_foo_plugin']

slixmpp.plugins.xep_0439.stanza.register_plugins()