def create_message_stanza(stanza, encrypted_payload, with_fallback_text): b64encoded_payload = b64encode(encrypted_payload) openpgp_node = Node('openpgp', attrs={'xmlns': Namespace.OPENPGP}) openpgp_node.addData(b64encoded_payload) stanza.addChild(node=openpgp_node) eme_node = Node('encryption', attrs={ 'xmlns': Namespace.EME, 'namespace': Namespace.OPENPGP }) stanza.addChild(node=eme_node) if with_fallback_text: stanza.setBody( '[This message is *encrypted* with OpenPGP (See :XEP:`0373`]')
def set_nickname(self, nickname, public=False): task = yield access_model = 'open' if public else 'presence' options = { 'pubsub#persist_items': 'true', 'pubsub#access_model': access_model, } item = Node('nick', {'xmlns': Namespace.NICK}) if nickname is not None: item.addData(nickname) result = yield self.publish(Namespace.NICK, item, id_='current', options=options, force_node_options=True) yield finalize(task, result)