2016-07-27 1 views
0

Я использую Skype Web SDK на некоторое время. Однако даже после использования того же кода, приведенного в примере, я получаю 2 сообщения, которые я отправляю, когда у меня есть вход в систему. Что-нибудь для использования в коде, чтобы ограничить это?Двойное из каждого сообщения в Skype Web SDK

ответ

0

Ваша проблема кажется похожа на мою, вы можете найти здесь то, что я сделал, чтобы справиться с этим: https://github.com/OfficeDev/skype-web-sdk-samples/issues/11

В основном сообщение первым в «ожидании» состояния, а затем в «удалось» состояние. Так оно появляется дважды. Вот почему вы хотите, чтобы добавить условие о состоянии, как этот:

else if (message.direction() == 'Outgoing' && message.status() === "Succeeded") 
+0

Спасибо. Это работало как прелесть. – Swathi

0

Это может быть вызвано двумя прослушивателями событий, прикрепленными к событию «добавлено». Я бы дважды проверял, что каждое сообщение удваивается: app.toJSON() возвращает моментальный снимок приложения, которое можно проверить в консоли dev - там вы можете найти массив activityItems и посмотреть, есть ли в нем дубликаты.

+0

На самом деле, я думаю, я знаю, почему вы получаете два события. Когда SDK отправляет сообщение, он немедленно добавляет его в коллекцию с текущей локальной меткой времени: 'message.timestamp() == new Date'. Однако, когда сервер подтверждает, что сообщение отправлено, оно также дает отметку времени для сообщения для сервера. SDK хочет сохранять сообщения, упорядоченные по меткам времени, поэтому он вставляет сообщение в коллекцию. Вот почему вы видите одно событие «удален», за которым следует одно событие «добавлено». Рассмотрите возможность обработки «удаленных» событий в пользовательском интерфейсе. – antonkh

0

Вопрос, который antonkh упоминает выше, является причиной повторяющихся сообщений. Это было исправлено, чтобы только повторно вставить сообщение (чтобы сохранить упорядочение по метке времени), если метка времени действительно изменяется достаточно, чтобы требовать сортировки. В большинстве случаев это означает, что изменение порядка сообщений не изменится, чтобы больше не видеть повторяющиеся сообщения.

Смежные вопросы