Mercurial > libervia-backend
diff src/plugins/plugin_sec_otr.py @ 1134:8def4a3f55c2
plugin OTR: temporary potr monkey patch to work around a unicode bug, to be removed as soon as a potr fixed version is released (potr maintainer should do it soon)
author | Goffi <goffi@goffi.org> |
---|---|
date | Mon, 25 Aug 2014 21:32:23 +0200 |
parents | ef7b7dd5c5db |
children | 3158f9e08760 |
line wrap: on
line diff
--- a/src/plugins/plugin_sec_otr.py Mon Aug 25 21:32:23 2014 +0200 +++ b/src/plugins/plugin_sec_otr.py Mon Aug 25 21:32:23 2014 +0200 @@ -154,11 +154,28 @@ def __init__(self, host): log.info(_(u"OTR plugin initialization")) + self._fixPotr() # FIXME: to be removed when potr will be fixed self.host = host self.context_managers = {} host.trigger.add("MessageReceived", self.MessageReceivedTrigger, priority=100000) host.trigger.add("sendMessage", self.sendMessageTrigger, priority=100000) + def _fixPotr(self): + # FIXME: potr fix for bad unicode handling + # this method monkeypatch it, must be removed when potr + # is fixed + + def getDefaultQueryMessage(self, policy): + defaultQuery = '?OTRv{versions}?\nI would like to start ' \ + 'an Off-the-Record private conversation. However, you ' \ + 'do not have a plugin to support that.\nSee '\ + 'https://otr.cypherpunks.ca/ for more information.' + v = '2' if policy('ALLOW_V2') else '' + msg = defaultQuery.format(versions=v) + return msg.encode('ascii') + + potr.context.Account.getDefaultQueryMessage = getDefaultQueryMessage + @defer.inlineCallbacks def profileConnected(self, profile): client = self.host.getClient(profile)