전세계적으로 4,000+개의 앱이 신뢰하는 파트너
수상 받은 커뮤니케이션 플랫폼
G2 리더 및 고성능 회사로 선정
최고 커뮤니케이션 API 수상
11개 클라우드 지역에서 AWS 지원
매 월 3억명 이상의 활성 사용자
전 세계 14만5천명 이상의 개발자
매 월 70억개 이상의 메시지
귀사에 맞는 최적의 서비스플랜을 선택하세요
카카오톡과 같은 경험으로 사용자에게 사랑받는 인앱 채팅
카카오톡과 같은 경험으로 사용자에게 사랑받는 인앱 채팅
고객들 관심을 사로잡아, 전환하고 지원하세요
고객 유지
센드버드 API와 SDK를 활용해, 앱 내 채팅, 보이스, 화상, 라이브 스트리밍 경험을 맞춤 제작하여 고객들의 관심을 실시간으로 사로잡고, 귀사의 앱 사용률을 높이세요.
고객 대화
앱 내에 지속되는 메시지로 고객들에게 다가갈 수 있습니다. 확장 가능하며, 안전하고 빠르게 런칭 가능한 센드버드 알림 서비스는 문자보다2배 더 빠른 속도로 전환하고 가격은 반으로 줄입니다.
고객 만족도
사람의 손길과 AI를 완벽하게 조합하여, 최고 수준의 고객서비스를 제공해보세요. 센드버드 통합을 사용하여 CRM 또는 CS 솔루션을 확장하고, 어플 내에서 직접 사용자들에게 실시간 채팅 지원 서비스를 제공할 수 있습니다.
전 산업분야를 위한 센드버드의 솔루션
모든 진료 및 치료 과정에서 환자의 곁에 있는 것처럼 다가갑니다. 더욱 높은 몰입도의 음성 및 영상, 채팅 환경을 구축할 수 있습니다.
구매자와 판매자를 연결하고 거래량을 늘리세요. 장바구니, 결제 시스템, 리뷰 플랫폼 등에 채팅 기능을 연동하여 가치를 더할 수 있습니다.
Sendbird는 리테일러가 모바일로 구매자와 판매자를 연결하여 전환율과 참여도를 높이는 동시에 사용자가 더 오래 앱에 남아 있도록 도와줍니다.
let initParams = InitParams(applicationId: appId)
SendbirdChat.initialize(params: initParams)
SendbirdChat.addChannelDelegate(self, identifier: delegateId)
SendbirdChat.connect(userId: userId) { user, error in
// Get channel
GroupChannel.getChannel(url: channelURL) { channel, error in
// Send message
channel?.sendUserMessage(message) { message, error in
// Message sent
}
}
}
SendbirdChat.init(
InitParams(APP_ID, applicationContext, useCaching = true),
object : InitResultHandler {
override fun onMigrationStarted() {
Log.i("Application", "Called when there's an update in Sendbird server.")
}
override fun onInitFailed(e: SendbirdException) {
Log.i("Application", "Called when initialize failed. SDK will still operate properly as if useLocalCaching is set to false.")
}
override fun onInitSucceed() {
Log.i("Application", "Called when initialization is completed.")
}
}
)
SendbirdChat.addChannelHandler(handlerId, object : GroupChannelHandler() {
override fun onMessageReceived(channel: BaseChannel, message: BaseMessage) {
// message received
}
}
SendbirdChat.connect(userId) { user, e ->
if (user != null) {
if (e != null) {
// Proceed in offline mode with the data stored in the local database.
// Later, connection is made automatically.
// and can be notified through ConnectionHandler.onReconnectSucceeded().
} else {
// Proceed in online mode.
}
GroupChannel.getChannel(channelUrl) { groupChannel, e ->
if (e != null || groupChannel == null) {
// Handle error.
return@getChannel
}
groupChannel.sendUserMessage(
UserMessageCreateParams(message)
) { userMessage, e ->
}
}
} else {
// Handle error.
}
}
const sb = SendbirdChat.init({
appId : 'YOUR-APP-ID',
modules: [
new GroupChannelModule()
]
});
sb.groupChannel.addGroupChannelHandler(handlerId, new GroupChannelHandler({
onMessageReceived: (channel, message) => {
// message received
}
}));
const user = await sb.connect(userId);
const channel = await sb.groupChannel.getChannel(channelUrl);
channel.sendUserMessage({ message })
.onPending((message) => {
// message is pending to be sent
})
.onSucceeded((message) => {
// message sent
})
.onFailed((err, message) => {
// message not sent
});
void main() async {
SendbirdChat.init(appId: 'APP-ID');
SendbirdChat.addChannelHandler('HANDLER-ID', MyGroupChannelHandler());
runZonedGuarded(() async {
final user = await SendbirdChat.connect('USER-ID');
final groupChannel = await GroupChannel.getChannel('CHANNEL-URL');
groupChannel.sendUserMessage(
UserMessageCreateParams(message: 'MESSAGE'),
handler: (message, e) {
// message sent
},
);
}, (e, s) {
// handle error
});
}
class MyGroupChannelHandler extends GroupChannelHandler {
@override
void onMessageReceived(BaseChannel channel, BaseMessage message) {
// message received
}
}
SendbirdClient.Init(appId);
const SendbirdClient.ChannelHandler channelHandler = new SendbirdClient.ChannelHandler();
channelHandler.OnMessageReceived = (BaseChannel baseChannel, BaseMessage baseMessage) => {
// message received
};
SendbirdClient.AddChannelHandler(handlerId, channelHandler);
SendbirdClient.Connect(userId, (User user, SendbirdException connectException) => {
// get channel
GroupChannel.GetChannel(channelUrl,
(GroupChannel groupChannel, SendbirdException getChannelException) => {
// send message
groupChannel.SendUserMessage(message,
(UserMessage userMessage, SendbirdException sendMessageException) => {
// message sent
});
});
});
SendbirdClient.Init(appId);
const SendbirdClient.ChannelHandler channelHandler = new SendbirdClient.ChannelHandler();
channelHandler.OnMessageReceived = (BaseChannel baseChannel, BaseMessage baseMessage) => {
// message received
};
SendbirdClient.AddChannelHandler(handlerId, channelHandler);
SendbirdClient.Connect(userId, (User user, SendbirdException connectException) => {
// get channel
GroupChannel.GetChannel(channelUrl,
(GroupChannel groupChannel, SendbirdException getChannelException) => {
// send message
groupChannel.SendUserMessage(message,
(UserMessage userMessage, SendbirdException sendMessageException) => {
// message sent
});
});
});
import requests
# Send a message
response = requests.request(
method='POST',
url=f'https://api-{YOUR_APP_ID}.sendbird.com/v3/group_channels/{channel_url}/messages',
headers={
'Api-Token': API_TOKEN,
},
json={
'message_type': 'MESG',
'user_id': 'user-1',
'message': 'Hello Sendbird!',
},
)
“Sendbird를 통해 구매자와 판매자를 연결하는 채팅 환경을 빠르고 안정적으로 구축할 수 있었습니다.”
Carousell Head of Engineering
“Sendbird의 개발자 친화적인 Chat API와 Chat SDK로 인앱 채팅을 빠르게 구축할 수 있었습니다."
Accolade Director of Product Management
“Sendbird의 네이티브 인앱 채팅을 통해 디지털 환경에서 모든 고객을 지원할 수 있게 되었습니다.”
Virgin Mobile UAE Senior Manager
“Sendbird를 통해 구매자와 판매자를 연결하는 채팅 환경을 빠르고 안정적으로 구축할 수 있었습니다.”
Carousell Head of Engineering
“Sendbird의 개발자 친화적인 Chat API와 Chat SDK로 인앱 채팅을 빠르게 구축할 수 있었습니다."
Accolade Director of Product Management
“Sendbird의 네이티브 인앱 채팅을 통해 디지털 환경에서 모든 고객을 지원할 수 있게 되었습니다.”
Virgin Mobile UAE Senior Manager
기업 고객도 안심할 수 있는 보안
빠르게 성장하는 스타트업부터 대기업까지, 모든 기업이 Sendbird를 믿고 데이터를 맡깁니다. Sendbird 채팅, 음성 및 영상 API와 대화 플랫폼은 국제 표준 보안 및 정보 보호 규정을 준수하여, 고객의 모든 대화 데이터를 암호화하여 안전하게 관리합니다.