SONOS - rateItem - Не вызывает "Операция не удалась"
Нажатие на любую из кнопок оценки в моем приложении SONOS приводит к появлению ошибки "Ошибка операции", и я не знаю почему. Все остальное в приложении работает, как и ожидалось, за исключением этого.
Вот код для моей функции элемента оценки. Я использую модуль pysimplesoap.
def rateItem(id, rating, device, householdId, loginToken):
# rating =
# Unrated track -> rating = 1 (good) | rating = 0 (bad)
# Track has thumbs up -> rating = 3 (good) | rating = 2 (bad)
# Track has thumbs down -> rating = 5 (good) | rating = 6 (bad)
user_record = SonosUserRecord.collection.find_one({"loginToken": loginToken})
user = get_user_from_username(username=user_record["username"])
now = datetime.utcnow()
SonosUserRecord.collection.update({"loginToken": loginToken}, {"$set": {"last_update": now}})
#rateItemResponse = {"shouldSkip": "false"}
if rating == 1 or rating == 5:
print "Rated positive"
# Rated positive
rating_value = 5
toid = id.split(":")[1]
rating = MongoTrackRating(user, toid)
rating.set_rating(int(rating_value))
MongoTrackRatingAggregate.update_track_rating_aggregate(toid, int(rating_value))
if rating == 0 or rating == 2:
print "Rated negative"
# Rated negative
#rateItemResponse["shouldSkip"] = "true"
rating_value = 1
toid = id.split(":")[1]
rating = MongoTrackRating(user, toid)
rating.set_rating(int(rating_value))
MongoTrackRatingAggregate.update_track_rating_aggregate(toid, int(rating_value))
return rateItemResponse
И тогда я регистрирую это.
dispatcher.register_function('rateItem', rateItem,
returns={"rateItemResult": list},
args={"id": str, "rating": int, 'device':str, 'householdId':str, 'loginToken': str})
Что мне не хватает?