add users objects to the direct messages response
This commit is contained in:
parent
f91f07e139
commit
49ea9b552a
2 changed files with 55 additions and 13 deletions
|
|
@ -307,7 +307,7 @@ class EndpointsMixin(object):
|
||||||
_params = params
|
_params = params
|
||||||
_params['json'] = 'true'
|
_params['json'] = 'true'
|
||||||
new_style_direct_messages = self.get('direct_messages/events/list', params=_params)['events']
|
new_style_direct_messages = self.get('direct_messages/events/list', params=_params)['events']
|
||||||
old_style_direct_messages = old_format_direct_messages(new_style_direct_messages)
|
old_style_direct_messages = old_format_direct_messages(new_style_direct_messages, self.show_user)
|
||||||
return old_style_direct_messages
|
return old_style_direct_messages
|
||||||
get_direct_messages.iter_mode = 'id'
|
get_direct_messages.iter_mode = 'id'
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,26 @@
|
||||||
import time
|
import time
|
||||||
|
import json
|
||||||
|
|
||||||
def old_format_direct_messages(new_direct_messages):
|
|
||||||
|
def load_users():
|
||||||
|
try:
|
||||||
|
with open('users.json', 'r') as f:
|
||||||
|
users = json.load(f)
|
||||||
|
return users
|
||||||
|
except ValueError as e:
|
||||||
|
print(e)
|
||||||
|
return {}
|
||||||
|
|
||||||
|
|
||||||
|
def save_users(users):
|
||||||
|
with open('users.json', 'w') as f:
|
||||||
|
print('users saved')
|
||||||
|
json.dump(users, f)
|
||||||
|
|
||||||
|
|
||||||
|
def old_format_direct_messages(new_direct_messages, get_user_object):
|
||||||
|
users = load_users()
|
||||||
|
new_user = False
|
||||||
old_direct_messages = []
|
old_direct_messages = []
|
||||||
for new_direct_message in new_direct_messages:
|
for new_direct_message in new_direct_messages:
|
||||||
old_direct_message = {}
|
old_direct_message = {}
|
||||||
|
|
@ -9,23 +29,45 @@ def old_format_direct_messages(new_direct_messages):
|
||||||
old_direct_message['text'] = new_direct_message['message_create']['message_data']['text']
|
old_direct_message['text'] = new_direct_message['message_create']['message_data']['text']
|
||||||
old_direct_message['sender_id'] = int(new_direct_message['message_create']['sender_id'])
|
old_direct_message['sender_id'] = int(new_direct_message['message_create']['sender_id'])
|
||||||
old_direct_message['sender_id_str'] = new_direct_message['message_create']['sender_id']
|
old_direct_message['sender_id_str'] = new_direct_message['message_create']['sender_id']
|
||||||
# todo complete user object - sender
|
|
||||||
old_direct_message['sender'] = {
|
if not new_direct_message['message_create']['sender_id'] in users.keys():
|
||||||
'id': old_direct_message['sender_id'],
|
print('NEW USERRRR')
|
||||||
'id_str': old_direct_message['sender_id_str']
|
print('SENDER ===> ', new_direct_message['message_create']['sender_id'])
|
||||||
}
|
print('USER.KEYS ==>', users.keys())
|
||||||
# todo user sender screen name
|
print(new_direct_message['message_create']['sender_id'])
|
||||||
|
sender_object = get_user_object(user_id=new_direct_message['message_create']['sender_id'])
|
||||||
|
new_user = True
|
||||||
|
else:
|
||||||
|
sender_object = users[new_direct_message['message_create']['sender_id']]
|
||||||
|
|
||||||
|
users[new_direct_message['message_create']['sender_id']] = sender_object
|
||||||
|
old_direct_message['sender'] = sender_object
|
||||||
|
old_direct_message['sender_screen_name'] = sender_object['screen_name']
|
||||||
|
|
||||||
old_direct_message['recipient_id'] = int(new_direct_message['message_create']['target']['recipient_id'])
|
old_direct_message['recipient_id'] = int(new_direct_message['message_create']['target']['recipient_id'])
|
||||||
old_direct_message['recipient_id_str'] = new_direct_message['message_create']['target']['recipient_id']
|
old_direct_message['recipient_id_str'] = new_direct_message['message_create']['target']['recipient_id']
|
||||||
# todo complete user recipient screen name
|
|
||||||
old_direct_message['recipient'] = {
|
if not new_direct_message['message_create']['target']['recipient_id'] in users.keys():
|
||||||
'id': old_direct_message['recipient_id'],
|
print('NEW USERRRR')
|
||||||
'id_str': old_direct_message['recipient_id_str']
|
print('RECIPIENT ===> ', new_direct_message['message_create']['target']['recipient_id'])
|
||||||
}
|
print('USER.KEYS ==>', users.keys())
|
||||||
|
print(new_direct_message['message_create']['target']['recipient_id'])
|
||||||
|
recipient_object = get_user_object(user_id=new_direct_message['message_create']['target']['recipient_id'])
|
||||||
|
new_user = True
|
||||||
|
else:
|
||||||
|
recipient_object = users[new_direct_message['message_create']['target']['recipient_id']]
|
||||||
|
|
||||||
|
users[new_direct_message['message_create']['target']['recipient_id']] = recipient_object
|
||||||
|
old_direct_message['recipient'] = recipient_object
|
||||||
|
old_direct_message['recipient_screen_name'] = recipient_object['screen_name']
|
||||||
|
|
||||||
old_direct_message['created_at'] = time.ctime(float(new_direct_message['created_timestamp']))
|
old_direct_message['created_at'] = time.ctime(float(new_direct_message['created_timestamp']))
|
||||||
old_direct_message['entities'] = new_direct_message['message_create']['message_data']['entities']
|
old_direct_message['entities'] = new_direct_message['message_create']['message_data']['entities']
|
||||||
|
|
||||||
old_direct_messages.append(old_direct_message)
|
old_direct_messages.append(old_direct_message)
|
||||||
|
|
||||||
|
if new_user:
|
||||||
|
save_users(users)
|
||||||
|
|
||||||
return old_direct_messages
|
return old_direct_messages
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue