def get_login_cookie(login, password, api="icq.net", api2=None): if api2 is None: api2 = api r = get_login_data(login, password, api2) sessionSecret = r["response"]["data"]["sessionSecret"] token = r["response"]["data"]["token"]["a"] sessionKey = hmac_sha256_base64(sessionSecret, password) uri = "https://api.oscar.%s/aim/startOSCARSession" % api d = dict(a=token, f="json", k=ICQ_API_KEY, ts=r["response"]["data"]["hostTime"], useTLS=1) queryString = WebFormData(d=LazySortedDict(d)).replace("+", "%20") hashData = "GET&" + urllib.quote(uri, safe="") + "&" + queryString.encode("url") digest = hmac_sha256_base64(hashData, sessionKey) url = uri + "?" + queryString + "&sig_sha256=" + digest ret = simplejson.loads(wget(url)) return ret