Skip to content

[FEATURE REQ] Additional options in ListReadReceiptOptions #1889

@jacobspie

Description

@jacobspie

Is your feature request related to a problem? Please describe.
I am listing all the threads, and displaying the last message and whether they have any unread messages.
In order to do this, I am having to fetch all read receipts for all threads every time I refresh. Skip does not work for this, since it provides read receipts for other users, and re-reading a message adjusts the read list.

Describe the solution you'd like
Ideally, I'd like to be able to quickly get the last message in a thread, and whether there are unread messages for the current user.
However, if that's not possible, more options to filter by in ListReadReceiptOptions would help. For example, filter read receipts by the current user. Right now, I can't skip by x number of messages, because if the user scrolls up, and I skip the number of messages -1, they may get a read receipt for the other user, which wouldn't tell me if they have read the messages. Ideally there should be a way to get the last read receipt for the current user, without having to know the total number of messages in the thread to skip.

Additionally, I am getting all chats for a thread, but only storing the last message date and last message text. Then I use the last message date to get the newer messages when refreshing.
I only care about the very last message, it would be nice to be able to quickly get that. Whether that's a new endpoint, or just a sort by latest and limit of 1.
The only reason I would want to know how many messages are in a thread, is if the read receipts endpoint is limited, and I have to skip by x to get the last read receipt for the current user.

Describe alternatives you've considered
At this point, every time I load the list of threads, I fetch all messages for the threads since the last message, then all read receipts for each thread, and compare the readOn date to see if the current user has a read receipt readOn greater or equal to the last message, assuming they are not the one who sent the last message.

Additional context
Add any other context or screenshots about the feature request here.

Information Checklist
Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report

  • Description Added
  • Expected solution specified

Metadata

Metadata

Assignees

No one assigned

    Labels

    customer-reportedIssues that are reported by GitHub users external to the Azure organization.needs-triageWorkflow: This is a new issue that needs to be triaged to the appropriate team.questionThe issue doesn't require a change to the product in order to be resolved. Most issues start as that

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions