2017-02-09 21 views
0

Я пытаюсь ответить на входящее сообщение (я считаю, что мне не нужно отправлять какие-либо приглашения в этом случае).UCWA отвечает на входящее сообщение

После того, как 'сообщение' ресурса от 'разговора' отправителя получил, я взял ссылку

<link rel="messaging" href="/ucwa/oauth/v1/applications/103298024370/communication/conversations/81bf5ef8-885f-4579-9add-a5857ccf6903/messaging" /> 

Тогда я построил URL:

url = host + "/ucwa/oauth/v1/applications/103298024370/communication/conversations/81bf5ef8-885f-4579-9add-a5857ccf6903/messaging" + "?OperationId=73dc2a78-2c09-43d3-ade9-166a17845a03"; 

(OperationID я генерируемый)

Возможно, я отправлю эту ссылку с ответным сообщением.

Ответ был:

<?xml version="1.0" encoding="utf-8"?> 
<reason xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/rtc/2012/03/ucwa"> 
    <code>ServiceFailure</code> 
    <subcode>None</subcode> 
    <message>Your request couldn't be completed.</message> 
    <debugInfo> 
     <property name="errorReportId">14cb93491da94ab8a638e148462fcc21</property> 
    </debugInfo> 
    <parameters /> 
</reason> 

Мой сценарий:

1) когда-то приходит событие 'messagingInvitation', I 'следуют' 'Принимать' ссылку. 2) после события (ы), которые я получаю, который содержит 'разговор' ресурс:

<sender rel="conversation" href="/ucwa/oauth/v1/applications/103298024370/communication/conversations/81bf5ef8-885f-4579-9add-a5857ccf6903"> 
     <updated rel="messaging" href="/ucwa/oauth/v1/applications/103298024370/communication/conversations/81bf5ef8-885f-4579-9add-a5857ccf6903/messaging"> 
      <resource rel="messaging" href="/ucwa/oauth/v1/applications/103298024370/communication/conversations/81bf5ef8-885f-4579-9add-a5857ccf6903/messaging"> 
       <link rel="conversation" href="/ucwa/oauth/v1/applications/103298024370/communication/conversations/81bf5ef8-885f-4579-9add-a5857ccf6903" /> 
       <link rel="stopMessaging" href="/ucwa/oauth/v1/applications/103298024370/communication/conversations/81bf5ef8-885f-4579-9add-a5857ccf6903/messaging/terminate" /> 
       <property name="state">Connecting</property> 
      </resource> 
     </updated> 
    </sender> 

3) Затем, еще один 'событие' прибывает, соответствующая часть:

<sender rel="communication" href="/ucwa/oauth/v1/applications/103298024370/communication"> 
    <updated rel="conversation" href="/ucwa/oauth/v1/applications/103298024370/communication/conversations/81bf5ef8-885f-4579-9add-a5857ccf6903"> 
     <resource rel="conversation" href="/ucwa/oauth/v1/applications/103298024370/communication/conversations/81bf5ef8-885f-4579-9add-a5857ccf6903"> 
      <link rel="applicationSharing" href="/ucwa/oauth/v1/applications/103298024370/communication/conversations/81bf5ef8-885f-4579-9add-a5857ccf6903/applicationSharing" /> 
      <link rel="audioVideo" href="/ucwa/oauth/v1/applications/103298024370/communication/conversations/81bf5ef8-885f-4579-9add-a5857ccf6903/audioVideo" /> 
      <link rel="dataCollaboration" href="/ucwa/oauth/v1/applications/103298024370/communication/conversations/81bf5ef8-885f-4579-9add-a5857ccf6903/dataCollaboration" /> 
      <link rel="messaging" href="/ucwa/oauth/v1/applications/103298024370/communication/conversations/81bf5ef8-885f-4579-9add-a5857ccf6903/messaging" /> 
      <link rel="phoneAudio" href="/ucwa/oauth/v1/applications/103298024370/communication/conversations/81bf5ef8-885f-4579-9add-a5857ccf6903/phoneAudio" /> 
      <link rel="localParticipant" href="/ucwa/oauth/v1/applications/103298024370/communication/conversations/81bf5ef8-885f-4579-9add-a5857ccf6903/participants/XXXXX" title="xxxxxxx" /> 
      <link rel="addParticipant" href="/ucwa/oauth/v1/applications/103298024370/communication/participantInvitations?conversation=81bf5ef8-885f-4579-9add-a5857ccf6903" /> 
      <property name="state">Connected</property> 
      <property name="threadId">AdKCFu+gFQccG58iQA6mppaTcfoeBwAABC+wAACcbnAAAHuvoAAhdqzwAAv+RhAAAuLo8A==</property> 
      <property name="subject"></property> 
      <propertyList name="activeModalities"> 
       <item>Messaging</item> 
      </propertyList> 
      <property name="importance">Normal</property> 
      <property name="recording">False</property> 
     </resource> 

<property name="state">Connected</property>

Значит, я подключен, не так ли?

Какой должен быть следующий шаг?

ответ

0

Мой сценарий обновления

Вы действительно подключены как к разговору и обмена сообщениями. Ваш следующий шаг должен состоять в том, чтобы либо выдавать запрос GET на ресурс обмена сообщениями, либо искать события, связанные с обменом сообщениями, который содержит ссылки на sendMessage. Наконец, с этой ссылкой sendMessage вы можете предоставить текст/обычный текст с сообщением, которое вы хотите отправить.

Начальные ноты

Вы не должны быть в состоянии ответить на любые полученные сообщения, если не активный разговор. messaging resource не является правильным ресурсом для ответа на сообщения. В вашем сценарии, если вы получаете сообщение от другого контакта и не установили разговор, вы бы посмотрели messagingInvitation, который включал сообщение. Если это ваш сценарий, предполагаемое решение - проверить ссылки ресурсов обмена сообщениями и найти ссылку addMessaging и POST на том месте, где оно появляется, вы можете включить ответное сообщение.

Если это не сценарий, не стесняйтесь предоставить дополнительную информацию.

+0

Я обновил свой сценарий – yuris

+0

Зачем мне нужно «ПОЛУЧИТЬ запрос на ресурс обмена сообщениями»? Я получу там ссылку sendMessage? – yuris

+0

Если вы не видите каких-либо ресурсов обмена сообщениями в канале событий, которые выставляют ссылки (sendMessage, stopMessaging и т. Д.), Вам необходимо вручную выпустить GET для обмена сообщениями, чтобы отменить эту информацию. – ShelbyZ