Fixing missing communication messages

Description

Some APIs under the following packages return a list of media-participants that may drop participants' medias:

com.inin.pubapi.server.purecloud.resources.conversation.media

com.inin.pubapi.server.purecloud.resources.routing.conversation

Change Category

Informational
API

Change Context

We are addressing this issue ini response to the reported bug.

Change Impact

The response of the above impacted APIs is represented by the object MediaConversation which has the attribute " participants ".
The attribute " participants " is a list of objects that extend the MediaParticipant object.
The object MediaParticipant is a mix from:

  • the participant's data (like: Id , Purpose , User , etc)
  • and only one of the participant’s communication data (like: ConnectedTime , EndTime , ToAddress , FromAddress , etc)
  • and the communication media data ( messageId , messageStatus , messageTime , etc)

As the currently implementation returns only one of the participant's communications, hence the attribute " participants " doesn't have objects with the same attribute " MediaParticipant.id ".
The fix will return all the participant's communications, hence the attribute " participants " can have objects with the same attribute " MediaParticipant.id " as the object will represent the participant but with different communication.

The developer to make sure that his code does NOT expect that the attribute " participants " have only distinct " MediaParticipant.id ".

So with change, in some cases, the attribute " participants " might have duplicated " MediaParticipant.id "

Date of Change

February 15th, 2022

Impacted APIs

GET api/v2/conversations/callbacks/{conversationId}
GET api/v2/conversations/callbacks/
GET api/v2/conversations/calls/{conversationId}
GET api/v2/conversations/calls/
GET api/v2/conversations/chats/{conversationId}
GET api/v2/conversations/chats/
GET api/v2/conversations/cobrowsesessions/{conversationId}
GET api/v2/conversations/cobrowsesessions/
GET api/v2/conversations/emails/{conversationId}
GET api/v2/conversations/emails/
GET api/v2/conversations/messages/{conversationId}
GET api/v2/conversations/messages/
GET api/v2/conversations/screenshares/{conversationId}
GET api/v2/conversations/screenshares/
GET api/v2/conversations/socials/{conversationId}
GET api/v2/conversations/socials/
GET api/v2/conversations/videos/{conversationId}
GET api/v2/conversations/videos/
POST api/v2/conversations/videos/{conversationId}/participants/{participantId}/pin
DELETE api/v2/conversations/videos/{conversationId}/participants/{participantId}/pin
GET api/v2/routing/queues/{queueId}/conversations/callbacks
GET api/v2/routing/queues/{queueId}/conversations/calls
GET api/v2/routing/queues/{queueId}/conversations/chats
GET api/v2/routing/queues/{queueId}/conversations/emails

References

[SERVOPS-32203]

This topic was automatically closed 62 days after the last reply. New replies are no longer allowed.