Swift
チャットインターフェースの構築
チャットができるようにするには、チャットインターフェイス用の新しいビューを作成する必要があります。Xcodeのメニューから File > New > File....を選択する。 SwiftUIビュー名前を付けてください ChatView.という名前の新しいファイルが作成されます。 ChatView.swiftトップインポート VonageClientSDKChat:
import SwiftUI
import VonageClientSDKChat
次に ChatViewModel.
ChatViewModel
について ChatViewModel はハンドルの送信と会話からのイベントの取得を処理します。の一番下にある ChatView.swift ファイルでビュー・モデルを作成します:
@MainActor
final class ChatViewModel: NSObject, ObservableObject {
private let conversationID = "CON_ID"
private var client: VGChatClient
private var memberID: String?
@Published var events: [VGPersistentConversationEvent] = []
init(client: VGChatClient) {
self.client = client
super.init()
client.delegate = self
}
}
extension ChatViewModel: VGChatClientDelegate {
nonisolated func chatClient(_ client: VGChatClient, didReceiveConversationEvent event: VGConversationEvent) {}
nonisolated func client(_ client: VGBaseClient, didReceiveSessionErrorWith reason: VGSessionErrorReason) {}
}
ビューモデルには会話ID、チャットクライアント、メンバーIDのプロパティがあります。チャットクライアントはログイン画面から渡されるので、すでに認証されています。ビューモデルを CON_ID プレースホルダに、先ほど作成した会話IDを指定します。この VGChatClientDelegate が追加されたが、後の段階で実装される。
UIの作成
骨格ができた ChatViewModel が作成されたら ChatView を持っている。 TextField メッセージ入力用 Button メッセージを送信するためのリストと、メッセージを表示するためのリスト。
struct ChatView: View {
@StateObject var chatViewModel: ChatViewModel
@State private var message: String = ""
var body: some View {
VStack {
VStack {
List {
ForEach(chatViewModel.events, id: \.id) { event in
switch event.kind {
default:
EmptyView()
}
}.listRowSeparator(.hidden)
}.listStyle(.plain)
Spacer()
HStack {
TextField("Message", text: $message)
Button("Send") {
Task {
}
}.buttonStyle(.bordered)
}.padding(8)
}
}
}
}
ビルド&ラン
プロジェクトを再度実行する (Cmd + R) をクリックしてシミュレーターで起動してください。いずれかのユーザーでログインすると、チャットのインターフェイスが表示されます。

iOSチャットアプリの作成
ユーザー同士がメッセージをやり取りできるiOSアプリケーションの作成
手順
1
このタスクの紹介2
Prerequisites3
Vonageアプリケーションの作成4
会話を作る5
ユーザーを作成する6
JWTの生成7
Xcodeプロジェクトとワークスペース8
ログイン・インターフェースの構築9
VGChatClient10
チャットインターフェースの構築11
チャットイベント12
メッセージの送信13
次はどうする?