Move Client._upload to State
This commit is contained in:
@@ -1305,30 +1305,7 @@ class Client(object):
|
|||||||
)
|
)
|
||||||
|
|
||||||
def _upload(self, files, voice_clip=False):
|
def _upload(self, files, voice_clip=False):
|
||||||
"""Upload files to Facebook.
|
return self._state._upload(files, voice_clip=voice_clip)
|
||||||
|
|
||||||
`files` should be a list of files that requests can upload, see
|
|
||||||
`requests.request <https://docs.python-requests.org/en/master/api/#requests.request>`_.
|
|
||||||
|
|
||||||
Return a list of tuples with a file's ID and mimetype.
|
|
||||||
"""
|
|
||||||
file_dict = {"upload_{}".format(i): f for i, f in enumerate(files)}
|
|
||||||
|
|
||||||
data = {"voice_clip": voice_clip}
|
|
||||||
|
|
||||||
j = self._payload_post(
|
|
||||||
"https://upload.facebook.com/ajax/mercury/upload.php", data, files=file_dict
|
|
||||||
)
|
|
||||||
|
|
||||||
if len(j["metadata"]) != len(files):
|
|
||||||
raise FBchatException(
|
|
||||||
"Some files could not be uploaded: {}, {}".format(j, files)
|
|
||||||
)
|
|
||||||
|
|
||||||
return [
|
|
||||||
(data[mimetype_to_key(data["filetype"])], data["filetype"])
|
|
||||||
for data in j["metadata"]
|
|
||||||
]
|
|
||||||
|
|
||||||
def _sendFiles(
|
def _sendFiles(
|
||||||
self, files, message=None, thread_id=None, thread_type=ThreadType.USER
|
self, files, message=None, thread_id=None, thread_type=ThreadType.USER
|
||||||
|
@@ -266,3 +266,29 @@ class State(object):
|
|||||||
"queries": _graphql.queries_to_json(*queries),
|
"queries": _graphql.queries_to_json(*queries),
|
||||||
}
|
}
|
||||||
return self._post("/api/graphqlbatch/", data, as_graphql=True)
|
return self._post("/api/graphqlbatch/", data, as_graphql=True)
|
||||||
|
|
||||||
|
def _upload(self, files, voice_clip=False):
|
||||||
|
"""Upload files to Facebook.
|
||||||
|
|
||||||
|
`files` should be a list of files that requests can upload, see
|
||||||
|
`requests.request <https://docs.python-requests.org/en/master/api/#requests.request>`_.
|
||||||
|
|
||||||
|
Return a list of tuples with a file's ID and mimetype.
|
||||||
|
"""
|
||||||
|
file_dict = {"upload_{}".format(i): f for i, f in enumerate(files)}
|
||||||
|
|
||||||
|
data = {"voice_clip": voice_clip}
|
||||||
|
|
||||||
|
j = self._payload_post(
|
||||||
|
"https://upload.facebook.com/ajax/mercury/upload.php", data, files=file_dict
|
||||||
|
)
|
||||||
|
|
||||||
|
if len(j["metadata"]) != len(files):
|
||||||
|
raise _exception.FBchatException(
|
||||||
|
"Some files could not be uploaded: {}, {}".format(j, files)
|
||||||
|
)
|
||||||
|
|
||||||
|
return [
|
||||||
|
(data[_util.mimetype_to_key(data["filetype"])], data["filetype"])
|
||||||
|
for data in j["metadata"]
|
||||||
|
]
|
||||||
|
Reference in New Issue
Block a user