Android向けどこでもサポートSDKの[問い合わせ]タブのカスタマイズ

Android向けどこでもサポートSDKの[問い合わせ]タブのカスタマイズ

[問い合わせ]タブでは、アプリの利用者は問い合わせを送信したり、自分の問い合わせを管理したりできます。問い合わせには、顧客の名前、メールアドレス、電話番号、問い合わせ内容などの情報が保存されています。また、[問い合わせ]タブから登録された問い合わせに対しては、割り当てルールやエスカレーション(SLA)を適用することが可能です。サポート業務の効率化を図るのに役立ちます。

このページでは、どこでもサポートのウィジェットの[問い合わせ]タブに関する各種設定方法について説明します。

問い合わせの送信画面の項目の非表示

どこでもサポートの問い合わせの送信画面には、Zoho Deskの問い合わせのレイアウトと同じ項目が表示されます。必要に応じて、問い合わせの送信画面内の任意の項目を非表示に設定することができます。非表示に設定するには、以下のように「setFieldsListTobeShown()」メソッドを使用します。

このメソッドでは、項目のリスト(apiNames)を文字列で指定する必要があります。また、どこでもサポートに関連付けられている部門に応じて、「departmentId」キーを指定する必要があります。たとえば、ある特定の部門においてのみどこでもサポートが設定されている場合、「departmentId」キーを指定する必要はありません。複数の部門でどこでもサポートが設定されている場合、「departmentId」キーを指定して、問い合わせの項目と部門を関連付ける必要があります。

このメソッドを追加すると、ウィジェットの問い合わせの送信画面には、メソッドで指定した項目のみが表示されます。

ZDPortalSubmitTicket.setTicketsFieldsListTobeShown(ticketListTobeShown, deptId, 
layoutId);
  1. ticketListTobeShown:文字列の一覧です(問い合わせ項目の「apiName」です)
  2. departmentId:問い合わせの項目の一覧の関連付け先となる部門のIDです。
  3. layoutId:問い合わせの項目を設定するレイアウトのIDです。
必須項目に関しては、メソッド内で値を指定しない場合にも表示されますのでご注意ください。

問い合わせの送信画面での必須項目の非表示

問い合わせの送信画面内の必須項目を非表示に設定する場合、非表示にする必須項目に値を事前に入力する必要があります。事前入力にするには、「preFillTicketFields()」メソッドを使用します。

「preFillTicketFields()」メソッドは、自動で作成されたIDやデバイスのOSのバージョンといった値を項目に事前入力したい場合に役立ちます。このメソッドを使用するには、「PreFillTicketField」オブジェクトの一覧を指定する必要があります。また、どこでもサポートに関連付けられている部門に応じて、「departmentId」キーを指定する必要があります。「setTicketsFieldsListTobeShown()」メソッドの場合と同様に、どこでもサポートの設定である特定の部門のみが関連付けられている場合は、「departmentId」 キーを指定する必要はありません。複数の部門でどこでもサポートが設定されている場合、「departmentId」キーを指定して、部門と項目を関連付ける必要があります。

ZDPortalSubmitTicket.preFillTicketFields(preFillTicketFields, deptId, layoutId);
  1. preFillTicketFields:「PreFillTicketField」オブジェクトの一覧です。
  2. deptId:問い合わせの項目の一覧を設定する部門のIDです。
  3. layoutId:問い合わせの項目を設定するレイアウトのIDです。
「PreFillTicketField」オブジェクトに含まれる主なプロパティは、以下のとおりです。
  1. fieldApiName(文字列):問い合わせの項目のAPI名です。それぞれの項目のAPI名を取得するには、「getTicketFields()」メソッドを使用します。
  2. fieldValue:項目の種類に応じて、値を指定します。
  3. 複数選択項目の場合、選択肢の値(文字列)をコンマ区切りで指定します。
  4. 選択リスト項目の場合、選択肢に含まれるいずれかの値(文字列)を指定します。
  5. 日付項目の場合、文字列の値を「dd-MM-yyyy」形式で指定します。
  6. 日時項目の場合、文字列の値を「dd-MM-yyyy HH:mm」形式で指定します。
  7. 真偽値項目の場合、真偽値(文字列)を「true」または「false」で指定します。
  8. その他の項目の場合、値(文字列)を指定します。
  9. 値を指定する際には、項目の文字数の上限や小数点の桁数の制限を超えないようにする必要があります。
  10. isEditable(真偽値):対象の項目が編集可能かどうかを指定するキーです。
コードのサンプルについては、該当のヘルプをご参照ください。

問い合わせの送信

ウィジェットで問い合わせを送信できるようにするには、以下のメソッドを使用します。このメソッドには、問い合わせの送信後に関する処理(イベントのコールバック処理)の設定も含まれます。
  1. ZDPortalSubmitTicket.setCreateTicketCallback(new ZDPortalCallback.CreateTicketCallback()
    {
    @Override
    public void onTicketCreated(Ticket ticket)
    {
    //Ticket created
    }
    @Override
    public void onException(ZDPortalException e)
    {
    //Exception
    }

    });
問い合わせの送信画面を通じて問い合わせが送信されると、オブジェクト「CreateTicketCallback」によって問い合わせに関する情報が送信されます。
認証ユーザーが問い合わせを送信すると、問い合わせの詳細がアプリに送信されます。ゲストユーザー(匿名ユーザー)の場合、問い合わせ番号のみがアプリに送信されます。

問い合わせの送信画面における独自の操作の設定

問い合わせの送信画面では、利用者は問い合わせに返信したり、コメントを追加したり、問い合わせを完了に設定したりすることができます。

利用者がどこでもサポートの問い合わせの送信画面にアクセスした際に行える操作を設定するには、以下のメソッドを使用します。
  1. ZDPTicketConfiguration configuration = new ZDPTicketConfiguration.Builder()
            .isReplyAllowed(true)
            .isCommentAllowed(true)
            .isCommentEditAllowed(true)
            .isTicketUpdateAllowed(true)
            .build();

    ZDPortalTickets.setConfiguration(configuration);