sendbird / sendbird-chat-sample-ios Goto Github PK
View Code? Open in Web Editor NEWThis repository provides feature-level Chat samples with Swift.
Home Page: https://sendbird.com/docs/chat/v4/ios/overview
License: MIT License
This repository provides feature-level Chat samples with Swift.
Home Page: https://sendbird.com/docs/chat/v4/ios/overview
License: MIT License
They can also delete messages.
Supports the URL link preview when a message text contains the URL of a web page.
Operators can freeze various functions in a channel to stop members from chatting in the channel. Operators can also unfreeze the channel so that the members can chat with one another again.
전체 ViewController를 재사용하기 쉽지 않은데, ViewModel or UseCase 레벨로 로직을 공유하는 것은 비교적 현실적인 것 같다.
BaseGroupChannelListViewModel
이런거 만들어 두면 하위 FeatureGroupChannelListViewModel
에서 기능 위임을 통해서 기본 기능을 쓸 수 있도록 만들 수 있는 방법을 고민할 필요가 있다.
Delegate를 통해서 ViewModel의 Output을 정의하고 있는데,
BaseViewModel의 Delegate를 FeatureViewModel의 Delegate로 간편하게 Proxy 해줄 수 있는 방법이 필요하다.
Specify a custom message type to subclassify messages and can be useful in searching or filtering messages
When any of the members in a group channel reads a message, sendbird server notifies the event to the client apps of all channel members.
Shows when someone in the group channel has started typing "Bob is typing.." or "Bob, Alice and 2 others are typing.." using the onTypingStatusUpdated() event handler, and set this state using startTyping() and endTyping() to update the group members
a user can report suspicious or harrassing messages as well as the other users who use abusive language. The user can also report channels if there are any inappropriate content or activity within the channel.
A message can have extra data of key-values items for further actions in an open channel.
var messages: [SBDBaseMessage]
관리해주고 있는데 insert, append, filter 적절하게 사용하고 있는지var messages: [SBDBaseMessage]
사용하고 있는데 insert, append, filter 적절하게 사용하고 있는지In addition to texts, images and videos, participants can create structured messages such as product information for drawing card style UI and location information with map thumbnails.
Manages channels by manually setting channel classification criteria such as conversation topics and hashtags.
Users can store and manage (create, update, retrieve, delete) additional information such as the number of likes or the background color of a channel.
Users can manage (create, update, increase, decrease) additional information to channels such as the tracking number of likes with channel metacounter,
In a frozen channel, participants can't chat one another but the operators can send a message to the channel.
When user IDs are mentioned in a message, the mentioned IDs will be notified with notifications.
They can also copy messages.
When user IDs are mentioned in a message, the mentioned IDs will be notified wih notifications.
Allow a collection of messages to be grouped together, consisting of a parent message and its replies.
마지막 받은 메세지 표시해주기
- import SendbirdSDK
+ import SendbirdChat
- SBDUser
+ User
- SBDGroupChannel
+ GroupChannel
- SBDError
+ SBError
- SBDBaseMessage
+ BaseMessage
- SBDOpenChannel
+ OpenChannel
클립보드 복사
An auto generated thumbnail image will display when sharing images or videos.
supports the URL link preview when a message text contains the URL of a web page.
요구사항 엑셀에 feature가 너무 잘게 나눠져있는데 실제 샘플 앱은 어떤 단위로 나눠야할지 고민 필요
Operators can remove any users that behave inappropriately in the channel and are not allowed to join the channel until a certain period of time set by the operators.
Operators and admins can send admin messages to participants to channels.
Users can manage channels by manually setting channel classification criteria such as conversation topics and hashtags.
Allow a collection of messages to be grouped together, consisting of a parent message and its replies.
Private group channel: a user can join the chat through an invitation by another user who is already a member of the chatroom.
Public group channel: a user can join the chat without invitation from others.
A normal group channel (default setting) can accommodate up to 100 members and a Supergroup channel can accommodate up to 2000 members and can stretch up to 20K members depending on the sendbird plan.
They can also update messages.
I have changed the message fetching direction to forward.
Because using forward direction fetching is make understanding the business logic easier for developers.
However, It's hard to present UI with the forward direction message fetching.
So I will fetch messages in the reverse direction.
Laying out apps flat
I imported the code from an old sample app, but there is a bug.
Re-creating StackView is inefficient and needs improvement.
Specify a custom message type to subclassify messages and can be useful in searching or filtering messages.
I don't have enough time, but if this doesn't work, it seems too much trouble to expand the project.
In addition to texts, images and videos, participants can send and receive various types of files, such as PDFs (the maximum file size limit varies depending on your subscription plan.
Hides channels and prevents them from appearing when listing group channels. When a new message is received on a channel, the channel will automatically appear back in the list. You can also archive a channel from the list, and unarchive it when needed.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.