Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mrDoctorWho/vk4xmpp.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormrDoctorWho <mrdoctorwho@gmail.com>2015-04-25 19:49:58 +0300
committermrDoctorWho <mrdoctorwho@gmail.com>2015-04-25 19:49:58 +0300
commit819131477fc2f1cacecba173772dd7d0cb97c994 (patch)
tree664af7e157c9eecf9ec92a8884e8c09341268222 /extensions/captcha_forms.py
parent0515686a9cea8bbe48a5967e097f936143a6d601 (diff)
Brand new refactored function connect() in the User class and auth() in
VK class New logic in mod_iq_register Overall code quality changes.
Diffstat (limited to 'extensions/captcha_forms.py')
-rw-r--r--extensions/captcha_forms.py44
1 files changed, 20 insertions, 24 deletions
diff --git a/extensions/captcha_forms.py b/extensions/captcha_forms.py
index a3ca929..5173932 100644
--- a/extensions/captcha_forms.py
+++ b/extensions/captcha_forms.py
@@ -5,40 +5,36 @@
from hashlib import sha1
-def sendCaptcha(self):
- logger.debug("VKLogin: sending message with captcha to %s" % self.source)
- body = _("WARNING: VK sent captcha to you."
- " Please, go to %s and enter text from image to chat."
- " Example: !captcha my_captcha_key. Tnx") % self.engine.captcha["img"]
- msg = xmpp.Message(self.source, body, "chat", frm=TransportID)
+def sendCaptcha(user, url):
+ logger.debug("VKLogin: sending message with captcha to %s" % user.source)
+ body = _("WARNING: VK has sent you a CAPTCHA."
+ " Please, follow %s and enter the text shown on the image to the chat."
+ " Example: !captcha my_captcha_key. Tnx") % url
+ msg = xmpp.Message(user.source, body, "chat", frm=TransportID)
x = msg.setTag("x", namespace=xmpp.NS_OOB)
- x.setTagData("url", self.engine.captcha["img"])
+ x.setTagData("url", url)
captcha = msg.setTag("captcha", namespace=xmpp.NS_CAPTCHA)
- image = utils.getLinkData(self.engine.captcha["img"], False)
+ image = utils.getLinkData(url, False)
if image:
hash = sha1(image).hexdigest()
encoded = image.encode("base64")
form = utils.buildDataForm(type="form", fields = [
- {"var": "FORM_TYPE", "value": xmpp.NS_CAPTCHA, "type": "hidden"},
- {"var": "from", "value": TransportID, "type": "hidden"},
- {"var": "ocr", "label": _("Enter shown text"),
- "payload": [
- xmpp.Node("required"),
- xmpp.Node("media", {"xmlns": xmpp.NS_MEDIA},
- [
- xmpp.Node("uri", {"type": "image/jpg"},
- ["cid:sha1+%s@bob.xmpp.org" % hash]
- )
- ])
- ]
- }
- ])
+ {"var": "FORM_TYPE", "value": xmpp.NS_CAPTCHA, "type": "hidden"},
+ {"var": "from", "value": TransportID, "type": "hidden"},
+ {"var": "ocr", "label": _("Enter shown text"),
+ "payload": [xmpp.Node("required"),
+ xmpp.Node("media", {"xmlns": xmpp.NS_MEDIA},
+ [xmpp.Node("uri", {"type": "image/jpg"},
+ ["cid:sha1+%s@bob.xmpp.org" % hash]
+ )
+ ])
+ ]}
+ ])
captcha.addChild(node=form)
oob = msg.setTag("data", {"cid": "sha1+%s@bob.xmpp.org" % hash, "type": "image/jpg", "max-age": "0"}, xmpp.NS_URN_OOB)
oob.setData(encoded)
sender(Component, msg)
- Presence = xmpp.protocol.Presence(self.source, show="xa", status=body, frm=TransportID)
- sender(Component, Presence)
+ sendPresence(user.source, TransportID, show="xa", reason=body)
TransportFeatures.update({xmpp.NS_OOB,
xmpp.NS_MEDIA,