Show error messages in failed audio uploads. Hopefully Fixes api uploads in sndup

This commit is contained in:
Manuel Cortez 2018-01-31 17:12:43 -06:00
parent 3c0824aad4
commit 80cb5567d5
4 changed files with 21 additions and 4 deletions

View File

@ -10,6 +10,8 @@ import sound
from pubsub import pub from pubsub import pub
if system == "Windows": if system == "Windows":
from wxUI.dialogs import message, urlList from wxUI.dialogs import message, urlList
from wxUI import commonMessageDialogs
from extra import translator, SpellChecker, autocompletionUsers from extra import translator, SpellChecker, autocompletionUsers
from extra.AudioUploader import audioUploader from extra.AudioUploader import audioUploader
elif system == "Linux": elif system == "Linux":
@ -114,11 +116,12 @@ class basicTweet(object):
url = dlg.uploaderFunction.get_url() url = dlg.uploaderFunction.get_url()
pub.unsubscribe(dlg.uploaderDialog.update, "uploading") pub.unsubscribe(dlg.uploaderDialog.update, "uploading")
dlg.uploaderDialog.destroy() dlg.uploaderDialog.destroy()
if url != 0: if "sndup.net/" in url:
self.message.set_text(self.message.get_text()+url+" #audio") self.message.set_text(self.message.get_text()+url+" #audio")
self.text_processor() self.text_processor()
else: else:
output.speak(_(u"Unable to upload the audio")) commonMessageDialogs.common_error(url)
dlg.cleanup() dlg.cleanup()
dlg = audioUploader.audioUploader(self.session.settings, completed_callback) dlg = audioUploader.audioUploader(self.session.settings, completed_callback)
self.message.text_focus() self.message.text_focus()

View File

@ -52,7 +52,7 @@ class audioUploader(object):
self.uploaderDialog = wx_transfer_dialogs.UploadDialog(self.file) self.uploaderDialog = wx_transfer_dialogs.UploadDialog(self.file)
output.speak(_(u"Attaching...")) output.speak(_(u"Attaching..."))
if self.dialog.get("services") == "SNDUp": if self.dialog.get("services") == "SNDUp":
base_url = "http://sndup.net/post.php" base_url = "https://sndup.net/post.php"
if len(self.config["sound"]["sndup_api_key"]) > 0: if len(self.config["sound"]["sndup_api_key"]) > 0:
url = base_url + '?apikey=' + self.config['sound']['sndup_api_key'] url = base_url + '?apikey=' + self.config['sound']['sndup_api_key']
else: else:

View File

@ -55,6 +55,7 @@ class Upload(object):
def perform_transfer(self): def perform_transfer(self):
log.debug("starting upload...") log.debug("starting upload...")
self.start_time = time.time() self.start_time = time.time()
print self.url
self.response=requests.post(url=self.url, data=self.monitor, headers={"Content-Type":self.m.content_type}, allow_redirects=self.follow_location, stream=True) self.response=requests.post(url=self.url, data=self.monitor, headers={"Content-Type":self.m.content_type}, allow_redirects=self.follow_location, stream=True)
log.debug("Upload finished.") log.debug("Upload finished.")
self.complete_transfer() self.complete_transfer()
@ -69,5 +70,15 @@ class Upload(object):
self.completed_callback(self.obj) self.completed_callback(self.obj)
if hasattr(self,'fin') and callable(self.fin.close): if hasattr(self,'fin') and callable(self.fin.close):
self.fin.close() self.fin.close()
def get_url(self): def get_url(self):
return self.response.json()['url'] try:
data = self.response.json()
except:
return _("Error in file upload: {0}").format(self.data.content,)
if data.has_key("url") and data["url"] != "0":
return data["url"]
elif data.has_key("error") and data["error"] != "0":
return data["error"]
else:
return _("Error in file upload: {0}").format(self.data.content,)

View File

@ -86,3 +86,6 @@ def delete_filter():
def existing_filter(): def existing_filter():
return wx.MessageDialog(None, _(u"This filter already exists. Please use a different title"), _(u"Error"), wx.OK).ShowModal() return wx.MessageDialog(None, _(u"This filter already exists. Please use a different title"), _(u"Error"), wx.OK).ShowModal()
def common_error(reason):
return wx.MessageDialog(None, reason, _(u"Error"), wx.OK).ShowModal()