-
Notifications
You must be signed in to change notification settings - Fork 210
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] Add Static Location and Live Location Support #3531
Draft
nuno-vieira
wants to merge
27
commits into
develop
Choose a base branch
from
add/location-attachments
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…location message to a channel
…urrent user location
…when the user should start and stop location sharing
…rotect against abusive updates
nuno-vieira
added
🌐 SDK: StreamChat (LLC)
Tasks related to the StreamChat LLC SDK
✅ Feature
An issue or PR related to a feature
labels
Dec 18, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
✅ Feature
An issue or PR related to a feature
🌐 SDK: StreamChat (LLC)
Tasks related to the StreamChat LLC SDK
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
🔗 Issue Links
Resolves https://linear.app/stream/issue/IOS-578/location-attachment
🎯 Goal
Adds support for static and live location attachments in the Low-Level Client SDK.
The UI has been implemented in the Demo App to demonstrate how to use the new location APIs.
A guide should be written in the stream documentation on how to use the location APIs.
📝 Summary
New APIs:
ChatChannelController
sendStaticLocation()
- Sends a static location message to the channel.startLiveLocationSharing()
- Starts a live location-sharing message in the channel.stopLiveLocationSharing()
- Stops sharing the live location message in the channel.ChatMessageController
updateMessage()
- Updates the message partially. (It was missing from the SDK)updateLiveLocation()
- Updates the message's live location attachment if it has one.CurrentChatUserController
updateLiveLocation()
- Updates the location of all active live location messages for the current user. Internally, it uses the Message Controller to update each message that has a live location attachment.CurrentChatUserControllerDelegate
didStartSharingLiveLocation()
- Notifies whenever the current user is sharing a live location.didStopSharingLiveLocation()
- Notifies whenever the current user stops sharing a live location.didChangeActiveLiveLocationMessages()
- Notifies whenever the live location messages update.Throttler
ChatMessage
staticLocationAttachments
- Returns the attachments of.staticLocation
type.liveLocationAttachments
- Returns the attachments of.liveLocation
type.AttachmentType
.staticLocation
.liveLocation
ChatMessageLiveLocationAttachment
&LiveLocationAttachmentPayload
ChatMessageStaticLocationAttachment
&StaticLocationAttachmentPayload
🛠 Implementation
TODO
🎨 Showcase
TODO
🧪 Manual Testing Notes
TODO
☑️ Contributor Checklist