SDK は Web ウィジェットと設定を共有します。先に Live Chat チャネル に従って Web ウィジェットのチャネルを設定し、設定タブから
connectionKey を取得してください。初期化の 3 つのパラメータ
動作要件
SDK パッケージの入手
SDK は公開リポジトリではなく、インストール用のパッケージとしてお渡しします。プラットフォームごとに 1 つ、合計 2 つのアーカイブを受け取るので、使うほうだけを取り出してください。fpt-agent-chat-1.0.0-android.zip
展開し、中の
android/maven フォルダをプロジェクトにコピーします。たとえば libs/fpt-agent-chat/maven へ。隣の android/chat-1.0.0.aar は単体のビルドで、Maven リポジトリを追加できないプロジェクト向けです。fpt-agent-chat-1.0.0-ios.zip
展開し、
ios/FptAgentChat.xcframework をターゲットにドラッグします。各アーカイブには、そのプラットフォームの手順を並べた
README.md が同梱されています。ライブラリの宣言 - Android
ライブラリの宣言 - iOS
ios/FptAgentChat.xcframework をターゲットにドラッグし、Frameworks, Libraries, and Embedded Content に Embed & Sign で並んでいることを確かめます。
Android
チャット画面を全画面で開く
既存の画面にチャットを埋め込む
FptChatView を自分で配置するときに必要なこと
FptChatActivity はファイル選択をすでに配線済みです。自分の画面に FptChatView を置く場合は、自分で配線する必要があります。配線しないと添付ボタンを押しても何も起きず、コールバックが宙に浮いたままになるので、2 回目も反応しません。
FptChatView を載せる Activity には、AndroidManifest.xml で android:windowSoftInputMode="adjustResize" も必要です。これがないとキーボードが入力欄を覆います。FptChatActivity にはすでに付いています。戻るボタンを処理する
ライフサイクル
3 つのライフサイクルメソッドをすべて呼んでください。
release() を飛ばすと、画面を閉じたあとも WebView が生き残り、メモリリークになります。iOS
必須: Info.plist の 2 つのキー
チャット画面では顧客が添付を送れ、chat.allow_attachments は既定でオンなので、これは例外ではなく通常の経路です。Info.plist に NSPhotoLibraryUsageDescription か NSCameraUsageDescription が欠けていると、顧客が添付ボタンを押した瞬間に OS が アプリを終了 させます。エラー表示ではなく終了です。顧客が読んで分かる文言で、両方とも宣言してください。
チャット画面を全画面で開く
既存の画面にチャットを埋め込む
外部リンクを開く
WebView の中で戻る
覚えておくこと
設定は Console にあります
配色、あいさつ、質問の候補、添付の可否は、すべてウィジェットのカスタマイズタブから来ます。Console で変えればアプリにもすぐ反映され、再リリースは要りません。
言語は渡す必要があります
ウェブとの唯一の違いです。端末のシステム言語を読んで
locale に渡してください。1 つのチャネルで複数の接点
ウェブサイトとモバイルアプリは 1 つの
connectionKey を共有するので、会話も設定も同じものになります。チャネルを作り直すとキーも変わります
ウェブサイトのチャネルを削除して作り直すと、新しい
connectionKey が発行されます。配布済みのアプリは更新が必要です。リリース前チェックリスト
- Console で Web ウィジェットのチャネルを設定し、少なくとも一度保存した。
appOriginを Console から取得し、/chat-widgetのパスが残っている。connectionKeyが、使いたい Agent のチャネルのものと一致している。- 端末の
localeを渡している。SDK は Console の既定言語を読まないため。 - iOS:
Info.plistにNSPhotoLibraryUsageDescriptionとNSCameraUsageDescriptionがある。ないと、顧客が添付ボタンを押した瞬間にアプリが終了します。 - Android で
FptChatViewを自分で配置した場合:fileChooserHandlerとonActivityResultを配線し、Activity にwindowSoftInputMode="adjustResize"を設定した。 - 開く、閉じる、戻るを何度か繰り返し、ライフサイクルの処理を確認した。
- 回線の弱い環境で試し、読み込み中の表示とエラーメッセージが意味の通るものか確認した。
添付のサイズ上限、許可される形式、共通のエラーコードは 技術付録 にあります。