не просматривать конкретный сохраненный разговор Javascript

В основном мое приложение может читать сохраненный разговор через Skype для бизнеса. Но Skype для бизнеса не может читать сохраненные разговоры через мое приложение.

Я использую JavaScript при разработке своего приложения.

Ниже более подробная информация;

Я пытаюсь сохранить папку истории разговоров и правильно ее увидеть в собственном клиенте Skype для бизнеса.

Вот мой SOAP-запрос:

POST /EWS/Exchange.asmx HTTP/1.1
Host: <username>:<password>@<domain>
Content-Type: text/xml

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope
  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
  xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages"
  xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soap:Header>
    <t:RequestServerVersion Version="Exchange2013" />
  </soap:Header>
  <soap:Body>
    <m:CreateItem MessageDisposition="SaveOnly">
      <m:SavedItemFolderId>
        <t:FolderId Id="AAMkADI2ZWUxY2Y4LTM4MjQtNGRiMC04NGU5LWNjMTkwMmI2ZGZhYwAuAAAAAAARYud90uTpQaW383uiLjbQAQBu8bl+jmTVT6UWWk0qHuXQAAAA2qSWAAA=" ChangeKey="AQAAABYAAABu8bl+jmTVT6UWWk0qHuXQAAAA2q+x" />
      </m:SavedItemFolderId>
      <m:Items>
        <t:Message>
          <t:ItemClass>IPM.Note.Microsoft.Conversation</t:ItemClass>
          <t:Subject>Conversation with John Doe</t:Subject>
          <t:Body BodyType="HTML">
            <![CDATA[<head
            xmlns:xs="http://www.w3.org/2001/XMLSchema"
            xmlns:msxsl="urn:schemas-microsoft-com:xslt"
            xmlns:history="http://schemas.microsoft.com/2008/10/sip/convItems"
            xmlns:rtc="urn:microsoft-rtc-xslt-functions"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><style type="text/css">
            <!-- @charset "utf-8"; body { margin-left: 11px; margin-top: 11px; margin-right: 11px; margin-bottom: 11px; } p { margin:0; padding:0; } .header { font-size: 16px; font-style: normal; line-height: 18px; font-weight: bold; font-variant: normal; text-transform: none; color: #000000; text-decoration: none; font-family: "Segoe UI"; } .callDuration { font-family: "Segoe UI"; font-size: 11px; font-style: normal; line-height: 18px; font-weight: normal; font-variant: normal; text-transform: none; color: #000000; text-decoration: none; } .notes_bkg { background-color: #e4eefc; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #b5c4df; vertical-align: middle; padding-top: 5px; padding-right: 8px; padding-bottom: 5px; padding-left: 20px; } .notes_title { font-family: "Segoe UI"; font-size: 12px; font-style: normal; line-height: 18px; font-weight: bold; font-variant: normal; text-transform: none; color: #15429d; text-decoration: none; } .note_message { font-family: "Segoe UI"; font-size: 11px; font-style: normal; line-height: 18px; font-weight: normal; font-variant: normal; text-transform: none; color: #15429d; text-decoration: none;} .list_name { font-family: "Segoe UI"; font-size: 12px; font-style: normal; font-weight: bold; font-variant: normal; text-transform: none; color: #000000; text-decoration: none; line-height: 18px; } .list_title_company { font-family: "Segoe UI"; font-size: 11px; font-style: normal; line-height: 18px; font-weight: normal; font-variant: normal; text-transform: uppercase; color: #666666; text-decoration: none; } .list_label { font-family: "Segoe UI"; font-size: 11px; font-style: normal; line-height: 25px; font-weight: normal; font-variant: normal; text-transform: none; color: #C0C0C0; text-decoration: none; } .links { font-family: "Segoe UI"; font-size: 11px; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; color: #0000FF; text-decoration: underline; } .line { border-top-width: 1px; border-top-style: solid; border-top-color: #b5c4df; height: 1px; background-color: #b5c4df; } .footer_line { padding-top: 30px; padding-bottom: 0px; padding-right: 0px; padding-left: 0px; } .footer { font-family: "Segoe UI"; font-size: 11px; font-style: normal; line-height: 0px; font-weight: normal; font-variant: normal; text-transform: none; color: #C0C0C0; text-decoration: none; padding-top: 11px; padding-bottom: 8px; } .header_box { padding-top: 11px; padding-bottom: 11px; } .contacts_box { padding-top: 20px; padding-bottom: 0px; padding-right: 0px; padding-left: 80px; } .list_value { font-family: "Segoe UI"; font-size: 11px; font-style: normal; line-height: 25px; font-weight: normal; font-variant: normal; text-transform: none; color: #000000; text-decoration: none; } .im_sender { font-family: "Segoe UI"; font-size: 11px; font-style: normal; line-height: 18px; font-weight: bold; font-variant: normal; text-transform: none; color: #666666; text-decoration: none; } .message_timestamp { font-family: "Segoe UI"; font-size: 11px; font-style: normal; line-height: 18px; font-weight: bold; font-variant: normal; text-transform: none; color: #666666; text-decoration: none; } .messageInfo { margin-left:8px; } .notification { font-family: "Segoe UI"; font-size: 11px; font-style: normal; line-height: 18px; font-weight: normal; font-variant: normal; text-transform: none; color: #666666; text-decoration: none; } -->
          </style>
        </head>
        <body>
          <div
            xmlns:xs="http://www.w3.org/2001/XMLSchema"
            xmlns:msxsl="urn:schemas-microsoft-com:xslt"
            xmlns:history="http://schemas.microsoft.com/2008/10/sip/convItems"
            xmlns:rtc="urn:microsoft-rtc-xslt-functions">
            <span>My Name</span>
            <span>05:28 PM:</span>
            <div>
              <meta name="Generator" content="Microsoft Word 15 (filtered)"
                <style>
                  <!-- /* Font Definitions */ @font-face {font-family:"Cambria Math"; panose-1:2 4 5 3 5 4 6 3 2 4;} @font-face {font-family:"Segoe UI"; panose-1:2 11 5 2 4 2 4 2 2 3;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {margin-top:0cm; margin-right:0cm; margin-bottom:8.0pt; margin-left:0cm; line-height:107%; font-size:11.0pt; font-family:"Calibri",sans-serif;} .MsoChpDefault {font-family:"Calibri",sans-serif;} .MsoPapDefault {margin-bottom:8.0pt; line-height:107%;} /* Page Definitions */ @page WordSection1 {size:612.0pt 792.0pt; margin:72.0pt 72.0pt 72.0pt 72.0pt;} div.WordSection1 {page:WordSection1;} -->
                </style>
                <div>
                  <p style="margin-bottom:0cm;margin-bottom:.0001pt;line-height:normal;text-autospace:none">
                    <span style="font-size:10.0pt;font-family:&quot;Segoe UI&quot;,sans-serif;color:black">test</span>
                  </p>
                </div>
              </div>
            </div>
          </body></html>]]>
        </t:Body>
        <t:ExtendedProperty>
          <t:ExtendedFieldURI DistinguishedPropertySetId="PublicStrings" PropertyName="ConversationXml.{CA2F170A-A22B-4f0a-B899-93439DEC3FBC}" PropertyType="String" />
          <t:Value>&lt;conversations
            xmlns=&quot;http://schemas.microsoft.com/2008/10/sip/convItems&quot; minSupportedClientVersion=&quot;3.0.0.0&quot;&gt;&lt;conversationXml&gt;&lt;/conversationXml&gt;&lt;/conversations&gt;
          </t:Value>
        </t:ExtendedProperty>
        <t:ExtendedProperty>
          <t:ExtendedFieldURI DistinguishedPropertySetId="PublicStrings" PropertyName="Direction.{2DA4DF04-920D-4b0b-A1D7-5FC9D21857FE}" PropertyType="Integer" />
          <t:Value>1</t:Value>
        </t:ExtendedProperty>
        <t:ExtendedProperty>
          <t:ExtendedFieldURI DistinguishedPropertySetId="PublicStrings" PropertyName="Modalities.{0885EA21-B7A5-4050-BFDB-AD46DE1D6A87}" PropertyType="Integer" />
          <t:Value>1</t:Value>
        </t:ExtendedProperty>
        <t:ExtendedProperty>
          <t:ExtendedFieldURI DistinguishedPropertySetId="PublicStrings" PropertyName="IsCustomSubject.{703DC3CB-8F24-4e3f-932F-206233656759}" PropertyType="Integer" />
          <t:Value>0</t:Value>
        </t:ExtendedProperty>
        <t:ExtendedProperty>
          <t:ExtendedFieldURI DistinguishedPropertySetId="PublicStrings" PropertyName="DisplayDirection.{4255C773-497E-4b5e-9205-F360CAF3316A}" PropertyType="String" />
          <t:Value>Incoming</t:Value>
        </t:ExtendedProperty>
        <t:ExtendedProperty>
          <t:ExtendedFieldURI DistinguishedPropertySetId="PublicStrings" PropertyName="RemoteParty.{664AD731-19D0-4344-93FD-682FE0440D95}" PropertyType="String" />
          <t:Value>john.doe@domain</t:Value>
        </t:ExtendedProperty>
        <t:ExtendedProperty>
          <t:ExtendedFieldURI DistinguishedPropertySetId="PublicStrings" PropertyName="HistoryInfo.{553F3F08-FC28-41db-859E-63457407F806}" PropertyType="String" />
          <t:Value>john.doe@domain</t:Value>
        </t:ExtendedProperty>
        <t:ExtendedProperty>
          <t:ExtendedFieldURI PropertyTag="3591" PropertyType="Integer" />
          <t:Value>1</t:Value>
        </t:ExtendedProperty>
        <t:ToRecipients>
          <t:Mailbox>
            <t:EmailAddress>john.doe@domain</t:EmailAddress>
          </t:Mailbox>
          <t:Mailbox>
            <t:EmailAddress>my.account@domain</t:EmailAddress>
          </t:Mailbox>
        </t:ToRecipients>
        <t:From>
          <t:Mailbox>
            <t:Name>My Name</t:Name>
            <t:EmailAddress>my.account@domain</t:EmailAddress>
          </t:Mailbox>
        </t:From>
      </t:Message>
    </m:Items>
  </m:CreateItem>
</soap:Body>undefined</soap:Envelope>

Я использую фиктивные данные в запросе выше. Идентификатор папки внутри тега <SavedItemFolderId> — это идентификатор папки истории конверсий. Запрос также имеет довольно большой HTML-контент со стилями.

Я могу сохранить элемент в папке «История бесед» и просмотреть его в своем клиенте Outlook.

Хотя я вижу его как элемент истории бесед в родном клиенте Skype для бизнеса Windows, я не могу видеть содержимое беседы (сообщения), когда дважды щелкаю по нему.

Я думаю, что неправильно делаю конфигурацию или HTML-контент.

Кто-нибудь когда-нибудь пытался сохранить историю разговоров и увидеть ее в родном клиенте? У вас есть какие-либо предложения?


person tntstn    schedule 17.10.2017    source источник
comment
у вас есть комментарий по этому вопросу?   -  person tntstn    schedule 13.11.2017


Ответы (1)


Я решил эту проблему.

реальная проблема в том, что вы генерируете разговорXml, но не помещаете тело своего сообщения внутрь этого разговораXML. Поэтому, если вы укажете параметр, как показано ниже, вы решите проблему.

вы увидите +body+ (тело в формате HTML)

Кстати, вы должны указать формат, в котором вы размещаете тело (текст/HTML, текст/RTF)

let cnvXML ='<conversations xmlns=\"http://schemas.microsoft.com/2008/10/sip/convItems\" minSupportedClientVersion=\"3.0.0.0\"><conversationXml><imReceived xmlns=\"http://schemas.microsoft.com/2008/10/sip/convItems\" ts=\"2017-11-14T07:18:47Z\" from=\"sip:[email protected]\" displayName=\"Tan Tastan\" firstMessage=\"true\" type=\"text/html\"><messageInfo type=\"text/html\" msgid=\"\" sequenceid=\"0\">'+body+'</messageInfo></imReceived></conversationXml></conversations>';

Затем вы должны изменить эти два параметра, как показано ниже;

...SetExtendedProperty(RemoteParty, "sip:[email protected]"); ...SetExtendedProperty(HistoryInfo, "sip:[email protected]");

После этого вы обнаружите еще одну проблему, которая находится на вкладке «История родного Skype», вы увидите, что предварительный просмотр сообщений не отображается. Поэтому, если вы добавите параметр, как показано ниже, вы решите вторую проблему.

...SetExtendedProperty(PreviewMessage, messagePreview);

Надеюсь понятно объяснил решение.

person tntstn    schedule 15.11.2017