В настоящее время я добавляю видеоуслуги в приложение с использованием медиа-сервисов Azure и Azure Storage с C# web api. Процесс загрузки, кажется, работает правильно, и я вижу, где успешно завершена работа с администратором. консоль.Сообщения о уведомлении Azure никогда не попадают в очередь уведомлений с использованием Media Services
Однако, если я запускаю приложение под отладчиком, я вижу, где сообщения добавляются в очередь для фактической обработки видео, но я никогда не получаю никаких сообщений в очереди уведомлений. Я продолжаю просматривать код, но я не вижу ничего, что кажется отключенным. Кто-нибудь сталкивался с этим раньше или имел какое-либо представление о том, что может быть проблемой? В настоящее время я тестирую в режиме отладки, когда мои строки подключения установлены на UseDevelopmentStorage=true
.
// create a NotificationEndPoint queue based on the endPointAddress
string endPointAddress = "queuename";
// setup the notificationEndPoint based on the queue and endPointAddress
this.notificationEndPoint = this._context.NotificationEndPoints.Create(Guid.NewGuid().ToString(), NotificationEndPointType.AzureQueue, endPointAddress);
if (this.notificationEndPoint != null)
{
job.JobNotificationSubscriptions.AddNew(NotificationJobState.All, this.notificationEndPoint);
await job.SubmitAsync().ConfigureAwait(false);
.
.
.
Here is the message object:
public class VideoJobNotificationMessage : AzureQueueMessage
{
// MessageVersion is used for version control.
public string MessageVersion { get; set; }
// Type of the event. Valid values are
// JobStateChange and NotificationEndpointRegistration.
public string EventType { get; set; }
// ETag is used to help the customer detect if
// the message is a duplicate of another message previously sent.
public string ETag { get; set; }
// Time of occurrence of the event.
public string TimeStamp { get; set; }
// Collection of values specific to the event.
public IDictionary<string, object> Properties { get; set; }
}
Должен ли я выглядеть, чтобы добавить этот файл и связанные с ним файлы в мой тестовый проект? – user1790300
Вы можете просто клонировать репозиторий. Добавьте сведения о своей учетной записи и оконечной точке очереди в app.config и отлаживайте ее. Или вы можете добавить чек в свой код, чтобы убедиться, что вы создаете очередь, если она не существует, и добавьте несколько минут сна, прежде чем проверять, что уведомление получено. Как я уже говорил, вы не должны ожидать мгновенного уведомления после завершения работы, уведомление может появиться через несколько минут. Статья, описывающая функцию уведомления -http: //azure.microsoft.com/en-us/documentation/articles/media-services-check-job-progress/#check_progress_with_queues –
Он продолжает терпеть неудачу в этой строке Assert.IsTrue (сообщения. Любые()). Кажется, что сообщения не входят в очередь. Я даже установил задержку Thread.Sleep в течение 10 минут, все еще нет сообщений в очереди. Что может быть причиной этого? – user1790300