有没有人使用 UCMA 2.0 sdk 通过即时消息流成功发送格式化文本?
在 MSDN 上似乎没有很好的记录。有没有例子?有什么书讲这个?
今天早些时候我自己在一个工作项目中遇到了这个问题。我目前无法访问我的代码,但它基本上可以通过执行以下操作...
MimePartContentDescription text;
MimePartContentDescription html;
MimePartContentDescription package;
text = new MimePartContentDescription(
new ContentType("text/plain"),
Encoding.UTF8.GetBytes(message_text) );
html = new MimePartContentDescription(
new ContentType("text/html"),
Encoding.UTF8.GetBytes(message_html) );
package = new MimePartContentDescription(
new ContentType("multipart/alternative"), null
);
package.Add(html);
package.Add(text);
// Call BeginSendMessage ... SendMessageCompleted is async callback.
imFlow.BeginSendMessage(package.ContentType, package.GetBody, SendMessageCompleted, imFlow)
此方法将消息的两个版本包装到一个“包”(如果您愿意的话)中,它将优雅地降级,向无法处理 HTML 的客户端提供纯文本版本,或者如果客户端支持它,将提供 HTML。
感谢'mdip'发布上述代码解决方案......
http://social.msdn.microsoft.com/Forums/en/ucmanagedsdk/thread/c532bbb9-f593-4443-85af-4e0708b8532c
我的理解是消息提示只是字符串。如果要为字符串添加格式,建议在提示中使用常见的 html 格式,然后将收到的提示输入到 HTML 感知控件中。