使用Skype SDK聊天消息显示两次

时间:2016-08-21 00:03:21

标签: javascript asynchronous skype skype-for-business

我使用了skype sdk Here,这是我的代码片段

之后
<html>
<head>
	<style>
		ul {
		    list-style-type: none;
		    margin: 0;
		    padding: 0;
		    overflow: hidden;
		    border-radius: 5px;
		    background-color: #333333;
		    text-align: center;
		}

		li { display: inline-block; }

		li a {
		    display: block;
		    color: white;
		    text-align: center;
		    padding: 16px;
		    text-decoration: none;
		    border-bottom: none;
		}

		    li a:hover { background-color: #111111 }
	</style>
</head>
<body>
	 <header class="navigation">
        <nav>
            <ul>
                <li><a class="active" href="#home">Home</a></li>
                <li><a href="#download">Download</a></li>
                <li><a href="#contact">Contact</a></li>
                <!-- Maybe the navigation bar gets more buttons in the future. -->
            </ul>
        </nav>

        <h1>Test Test Test</h1>
    </header>
</body>
</html>

但是,当状态处于暂挂状态或即使失败时,会显示该消息,此后我尝试将消息放入其中,但它只出现在另一边而不是我的。

Github相关问题Here

2 个答案:

答案 0 :(得分:1)

为什么添加typeof newMsg.direction != 'function'条件,是否更正? 您的代码行为在此处似乎是正确的,因为仅当消息为“Outgoing”而不是“Succeeded”时,消息才会附加。 您是否有原始解决方案的任何错误或日志

conversation.historyService.activityItems.added(function(message) {
if (message.type() == 'TextMessage') {
    if (message.direction() == 'Incoming' ) {
        historyAppend(XMessage(message));
    } else if (message.direction() == 'Outgoing' && message.status() === "Succeeded") {
            historyAppend(XMessage(message));
    }
}
});

答案 1 :(得分:0)

我确实通过解决方法解决了这个问题,无论message.direction()值

,首先附加消息