getThreadList is not working yet...

This commit is contained in:
Taehoon Kim
2015-04-21 21:17:10 +09:00
parent ad913147cb
commit bdbdaf120e
2 changed files with 32 additions and 16 deletions

View File

@@ -94,9 +94,9 @@ class Client(object):
self.user_channel = "p_" + str(self.uid) self.user_channel = "p_" + str(self.uid)
self.ttstamp = '' self.ttstamp = ''
#r = self._get('https://www.facebook.com/') r = self._get('https://www.facebook.com/')
#self.rev = int(r.text.split('"revision":',1)[1].split(",",1)[0]) self.rev = int(r.text.split('"revision":',1)[1].split(",",1)[0])
self.rev = int(random()*100000) #self.rev = int(random()*100000)
soup = bs(r.text) soup = bs(r.text)
self.fb_dtsg = soup.find("input", {'name':'fb_dtsg'})['value'] self.fb_dtsg = soup.find("input", {'name':'fb_dtsg'})['value']
@@ -137,8 +137,8 @@ class Client(object):
'context' : "search", 'context' : "search",
'path' : "/home.php", 'path' : "/home.php",
'request_id' : str(uuid1()), 'request_id' : str(uuid1()),
'__user' : self.uid,
'__a' : '1', '__a' : '1',
'__user' : self.uid,
'__req' : str_base(self.req_counter, 36), '__req' : str_base(self.req_counter, 36),
'__rev' : self.rev, '__rev' : self.rev,
} }
@@ -156,10 +156,11 @@ class Client(object):
def sendMessage(self, message, thread_id): def sendMessage(self, message, thread_id):
timestamp = now() timestamp = now()
date = datetime.now() date = datetime.now()
form = { data = {
'client' : 'mercury', 'client' : 'mercury',
'fb_dtsg' : self.fb_dtsg, 'fb_dtsg' : self.fb_dtsg,
'ttstamp' : self.ttstamp, 'ttstamp' : self.ttstamp,
'__a' : '1',
'__user' : self.uid, '__user' : self.uid,
'__req' : str_base(self.req_counter, 36), '__req' : str_base(self.req_counter, 36),
'__rev' : self.rev, '__rev' : self.rev,
@@ -182,24 +183,34 @@ class Client(object):
'message_batch[0][html_body]' : False, 'message_batch[0][html_body]' : False,
'message_batch[0][ui_push_phase]' : 'V3', 'message_batch[0][ui_push_phase]' : 'V3',
'message_batch[0][status]' : '0', 'message_batch[0][status]' : '0',
'message_batch[0][message_id]' : self.generateMessageID(), 'message_batch[0][message_id]' : generateMessageID(self.client_id),
'message_batch[0][manual_retry_cnt]' : '0', 'message_batch[0][manual_retry_cnt]' : '0',
'message_batch[0][thread_fbid]' : thread_id, 'message_batch[0][thread_fbid]' : thread_id,
'message_batch[0][has_attachment]' : False 'message_batch[0][has_attachment]' : False
} }
print form
r = self._post("https://www.facebook.com/ajax/mercury/send_messages.php", form) r = self._post("https://www.facebook.com/ajax/mercury/send_messages.php", form)
print r return r.ok
self.r = r
self.j = get_json(r.text)
def generateMessageID(self, client_id=None): def getThreadList(self, start, end):
if not client_id: timestamp = now()
client_id = self.client_id date = datetime.now()
k = now() data = {
l = int(random() * 4294967295) 'client' : 'web_messenger',
return ("<%s:%s-%s@mail.projektitan.com>" % (k, l, client_id)); 'fb_dtsg' : self.fb_dtsg,
'ttstamp' : self.ttstamp,
'__a' : '1',
'__user' : self.uid,
'__req' : str_base(self.req_counter, 36),
'__rev' : self.rev,
'inbox[offset]' : start,
'inbox[limit]' : end,
}
print data
r = self._post("https://www.facebook.com/ajax/mercury/threadlist_info.php", data)
self.r = r
return r.ok
def sendSticker(self): def sendSticker(self):
pass pass

View File

@@ -30,3 +30,8 @@ def str_base(number,base):
return str_base(d, base) + digit_to_char(m) return str_base(d, base) + digit_to_char(m)
return digit_to_char(m) return digit_to_char(m)
def generateMessageID(client_id=None):
k = now()
l = int(random() * 4294967295)
return ("<%s:%s-%s@mail.projektitan.com>" % (k, l, client_id));