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

mod_iq_last.py « modules - github.com/mrDoctorWho/vk4xmpp.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 8b79e94e03391f59d0fd524b0111b5cb9ac51e8f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# coding: utf-8
# This file is a part of VK4XMPP transport
# © simpleApps, 2013 — 2015.

from __main__ import *
import xmpp
import utils


@utils.threaded
def last_handler(cl, iq):
	jidFrom = iq.getFrom()
	jidTo = iq.getTo()
	source = jidFrom.getStripped()
	destination = jidTo.getStripped()
	id = vk2xmpp(destination)
	if id == TransportID:
		last = int(time.time() - startTime)
		name = IDENTIFIER["name"]
	elif source in Transport and id in Transport[source].friends:
		last = Transport[source].vk.method("execute.getLastTime", {"uid": id}) or 0
		last = int(time.time() - last)
		name = Transport[source].vk.getUserData(id).get("name", "Unknown")
	else:
		raise xmpp.NodeProcessed()
	result = xmpp.Iq("result", to=jidFrom, frm=destination)
	result.setID(iq.getID())
	result.setTag("query", {"seconds": str(last)}, xmpp.NS_LAST)
	result.setTagData("query", name)
	sender(cl, result)


MOD_TYPE = "iq"
MOD_HANDLERS = ((last_handler, "get", xmpp.NS_LAST, False),)
MOD_FEATURES = [xmpp.NS_LAST]
MOD_FEATURES_USER = [xmpp.NS_LAST]