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['json'] = 'true'
|
||||
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
|
||||
get_direct_messages.iter_mode = 'id'
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,26 @@
|
|||
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 = []
|
||||
for new_direct_message in new_direct_messages:
|
||||
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['sender_id'] = int(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'] = {
|
||||
'id': old_direct_message['sender_id'],
|
||||
'id_str': old_direct_message['sender_id_str']
|
||||
}
|
||||
# todo user sender screen name
|
||||
|
||||
if not new_direct_message['message_create']['sender_id'] in users.keys():
|
||||
print('NEW USERRRR')
|
||||
print('SENDER ===> ', new_direct_message['message_create']['sender_id'])
|
||||
print('USER.KEYS ==>', users.keys())
|
||||
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_str'] = new_direct_message['message_create']['target']['recipient_id']
|
||||
# todo complete user recipient screen name
|
||||
old_direct_message['recipient'] = {
|
||||
'id': old_direct_message['recipient_id'],
|
||||
'id_str': old_direct_message['recipient_id_str']
|
||||
}
|
||||
|
||||
if not new_direct_message['message_create']['target']['recipient_id'] in users.keys():
|
||||
print('NEW USERRRR')
|
||||
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['entities'] = new_direct_message['message_create']['message_data']['entities']
|
||||
|
||||
old_direct_messages.append(old_direct_message)
|
||||
|
||||
if new_user:
|
||||
save_users(users)
|
||||
|
||||
return old_direct_messages
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue