convert new direct messages to old direct messages format
This commit is contained in:
parent
ccfffc4a16
commit
4f20ac5b36
2 changed files with 39 additions and 4 deletions
|
|
@ -19,6 +19,7 @@ import os
|
|||
import warnings
|
||||
from io import BytesIO
|
||||
from time import sleep
|
||||
from utils import old_format_direct_messages
|
||||
#try:
|
||||
#from StringIO import StringIO
|
||||
#except ImportError:
|
||||
|
|
@ -198,7 +199,8 @@ class EndpointsMixin(object):
|
|||
'command': 'INIT',
|
||||
'media_type': media_type,
|
||||
'total_bytes': size,
|
||||
'media_category': media_category
|
||||
'media_category': media_category,
|
||||
'json': 'true'
|
||||
}
|
||||
response_init = self.post(upload_url, params=params)
|
||||
media_id = response_init['media_id']
|
||||
|
|
@ -303,7 +305,9 @@ class EndpointsMixin(object):
|
|||
https://developer.twitter.com/en/docs/direct-messages/sending-and-receiving/api-reference/get-messages
|
||||
|
||||
"""
|
||||
return self.get('direct_messages/events/list', params=params)
|
||||
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)
|
||||
return old_style_direct_messages
|
||||
get_direct_messages.iter_mode = 'id'
|
||||
|
||||
def get_sent_messages(self, **params):
|
||||
|
|
@ -313,7 +317,7 @@ class EndpointsMixin(object):
|
|||
https://developer.twitter.com/en/docs/direct-messages/sending-and-receiving/api-reference/get-sent-message
|
||||
|
||||
"""
|
||||
return self.get('direct_messages/events/list', params=params)
|
||||
return self.get('direct_messages/events/list', params=params)['events']
|
||||
get_sent_messages.iter_mode = 'id'
|
||||
|
||||
def get_direct_message(self, **params):
|
||||
|
|
@ -323,7 +327,7 @@ class EndpointsMixin(object):
|
|||
https://developer.twitter.com/en/docs/direct-messages/sending-and-receiving/api-reference/get-message
|
||||
|
||||
"""
|
||||
return self.get('direct_messages/events/show', params=params)
|
||||
return self.get('direct_messages/events/show', params=params)['events']
|
||||
|
||||
def destroy_direct_message(self, **params):
|
||||
"""Destroys the direct message specified in the required ``id`` parameter
|
||||
|
|
|
|||
31
twython/utils.py
Normal file
31
twython/utils.py
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
import time
|
||||
|
||||
def old_format_direct_messages(new_direct_messages):
|
||||
old_direct_messages = []
|
||||
for new_direct_message in new_direct_messages:
|
||||
old_direct_message = {}
|
||||
old_direct_message['id'] = int(new_direct_message['id'])
|
||||
old_direct_message['id_str'] = new_direct_message['id']
|
||||
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
|
||||
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']
|
||||
}
|
||||
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)
|
||||
|
||||
return old_direct_messages
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue