チャットの匿名ユーザーに関する詳細の表示(iOS向けどこでもサポートSDK)

チャットの匿名ユーザーに関する詳細の表示(iOS向けどこでもサポートSDK)

通常、サポート担当者が匿名の利用者(匿名ユーザー)からチャットを受信しても、サポート担当者の画面には匿名ユーザーに関する詳細情報は表示されません。Zoho Deskでは、必要に応じて匿名ユーザーからチャットを受信した際にも詳細情報を表示することが可能です。

表示するには、以下のメソッドを使用します。

Swift

  1. import ZohoDeskPortalChat
       ...
       ZDPortalChat.setGuestUser(email:<#Guest_User_Email#>,
       displayName:<#Guest_User_DisplayName#>",
       phoneNumber: <#Guest_User_PhoneNumber#>")

Objective-C

  1. @import ZohoDeskPortalChat;
    ...
        [ZDPortalChat setGuestUserWithEmail:<#Guest_User_Email#>
        displayName:<#Guest_User_DisplayName#>
        phoneNumber:<#Guest_User_PhoneNumber#>]; 
必要に応じて、チャットのやりとりを問い合わせに変換することもできます。なお、問い合わせに変換するには利用者(匿名ユーザー)のメールアドレスが必要です。

問い合わせの自動送信

どこでもサポートでは、利用者に対して自動による問い合わせの送信を許可できます。許可した場合は、アプリ内で特定のエラーなどが発生した場合に、どこでもサポートの機能を通じて自動で問い合わせが送信されるように設定することも可能です。たとえば、利用者がアプリを利用中に特定の画面を読み込めなかった場合に、その情報を踏まえて読み込みの失敗に関する問い合わせが自動で送信されるように設定することができます。これにより、利用者が手動で問い合わせを送信する手間を省くことが可能です。

問い合わせの自動送信を有効にするには、アプリのコードに以下のメソッドを追加します。

Swift

  1. import ZohoDeskPortalAPIKit

Objective-C

  1. @import ZohoDeskPortalAPIKit;

部門のIDを取得するには、以下のメソッドを使用します。

Swift

  1. ZohoDeskPortalSDK.getDepartments(onCompletion:
    { (departments, error) in
    // on success, departments will return an array, error will return nil
    // on failure, error will return a value, departments will return nil
    }

Objective-C

  1. [ZohoDeskPortalSDK getDepartmentsOnCompletion:^
    (NSArray * departments, NSError * error)
    {
    // on success, departments will return an array, error will return nil
    // on failure, error will return a value, departments will return nil
    }];

部門の商品の情報を取得するには、以下のメソッドを使用します。

Swift

  1. ZohoDeskPortalSDK.getProducts(inDepartmentID: <#T##String#>, params: <#T##[String : Any]?#>)
    { products, error in
    // on success, products will return an array, error will return nil
    // on failure, error will return a value, products will return nil
    }

Objective-C

  1. [ZohoDeskPortalSDK getProductsInDepartmentID:<#NSString#>
    params:<#NSDictionary#>onCompletion:^
    (NSArray * products, NSError * error)
    {
    // on success, products will return an array, error will return nil
    // on failure, error will return a value, products will return nil
    }];

部門の問い合わせ用のレイアウトに含まれる項目の情報を取得するには、以下のメソッドを使用します。

Swift

  1. ZohoDeskPortalSDK.Ticket.getFields(<#T##params: [String : Any]?##[String : Any]?#>)
    { fields, error in
    // on success, fields will return an array, error will return nil
    // on failure, error will return a value, products will return nil
    }

Objective-C

  1. [[ZohoDeskPortalSDKTicket getFields:
    <#(NSDictionary * _Nullable)#>onCompletion:^
    (NSArray * fields, NSError * error)
    {
    // on success, fields will return an array, error will return nil
    // on failure, error will return a value, fields will return nil
    }];

問い合わせに添付ファイルを含めるには、以下のメソッドを使用します。

Swift

  1. ZohoDeskPortalSDK.Ticket.addAttachment(with:<#Data#>,
    andName:<#String#>, using: <#ZDPUploaderDelegate?#>)
    { (attachment, error) in
    // on success, attachment will return a value, error will return nil
    // on failure, error will return a value, attachment will return nil
    }

Objective-C

  1. [ZohoDeskPortalSDKTicket addAttachmentWith:
    <#NSData#>andName:<#NSString#>using:
    <#(id _Nullable)#>onCompletion:^
    (ZDPortalAttachment * attachment, NSError * error)
    {
    // on success, attachment will return a value, error will return nil
    // on failure, error will return a value, attachment will return nil
    }];

問い合わせの自動送信を有効にするには、アプリのコードに以下のメソッドを追加します。なお、問い合わせを投稿できるようにするためのメソッドは、認証ユーザーと匿名ユーザーでそれぞれ異なりますのでご注意ください。

Swift

  1. if ZohoDeskPortalSDK.isUserLoggedIn
    {
        ZohoDeskPortalSDK.Ticket.add(withFields:<#T##[String : Any]#>)
        { (ticket, error) in
       // on success, ticket will return an object,
    error will return nil
       // on failure, error will return a value,
    ticket will return nil
        }
    } else
    {
        ZohoDeskPortalSDK.Ticket.addAsGuest
    (withFields: <#T##[String : Any]#>)
        { (ticketNumber, error) in
        // on success, ticketNumber will return a string value,
    error will return nil
        // on failure, error will return a value,
    ticketNumber will return nil
        }
    }

Objective-C

  1. if (ZohoDeskPortalSDK.isUserLoggedIn)
    {
            [ZohoDeskPortalSDKTicket addWithFields:<#(NSDictionary * _Nonnull)#> onCompletion:^(ZDPTicket * ticket, NSError * error)
        {
             // on success, ticket will return an object, error will return nil
             // on failure, error will return a value, ticket will return nil
            }];
    }
    else
    {
            [ZohoDeskPortalSDKTicket addAsGuestWithFields:
            <#(NSDictionary * _Nonnull)#> onCompletion:^(NSString * ticketNumber, NSError * error)
            {
             // on success, ticketNumber will return a string value, error will return nil
             // on failure, error will return a value, ticketNumber will return nil
            }]
    }

このメソッドにおいて、次のパラメーターは入力必須です:Email AddressSubjectDepartmentID