この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

describeSoftphoneLayout()

Salesforce CRM Call Center のソフトフォンのレイアウト情報を取得します。

構文

1DescribeSoftphoneLayoutResult[] = connection.describeSoftphoneLayout();

使用方法

ソフトフォンレイアウト情報の取得にこのコールを使用します。Salesforce CRM Call Center のコンテキストでのみ使用し、クライアントプログラムから直接コールしないでください。

引数

このコールはオブジェクトを取りません。

応答

レスポンスは DescribeSoftphoneLayoutResult オブジェクトです。
名前 説明
callTypes DescribeSoftphoneLayoutCallType[] 許可された各通話種別と関連付けられた属性のセット。通話種別は、着信、発信、および内線のいずれかとなります。
id ID レイアウトの ID。レイアウトオブジェクトは API からは公開されません。
name string 通話種別名。着信、発信、および内線のいずれかとなります。

DescribeSoftphoneLayoutCallType

DescribeSoftphoneLayoutResult オブジェクトには 1 つ以上の通話種別が含まれます。

名前 説明
infoFields DescribeSoftphoneLayoutInfoField[] ソフトフォンレイアウト内の情報項目のセット。
name string レイアウトの名前。
screenPopOptions DescribeSoftphoneScreenPopOption[] 通話の詳細が既存のレコードに一致する場合、またはしない場合のスクリーンポップ表示方法を指定するソフトフォンレイアウトの設定。

この設定は、CTI 2.0 以上のアダプタに関連付けられたソフトフォンレイアウトについてのみ表示されます。Salesforce オンラインヘルプのSalesforce CTI Toolkit の概要」を参照してください。この項目は、API バージョン 18.0 以降で使用できます。

screenPopsOpenWithin string 通話の詳細が既存のレコードに一致する場合、または一致しない場合に、新しいブラウザウィンドウに画面ポップを表示するかどうかを指定するソフトフォンレイアウトの設定。

この設定は、CTI 2.0 以上のアダプタに関連付けられたソフトフォンレイアウトについてのみ表示されます。Salesforce オンラインヘルプのSalesforce CTI Toolkit の概要」を参照してください。この項目は、API バージョン 18.0 以降で使用できます。

sections DescribeSoftphoneLayoutSection[] ソフトフォンレイアウト内のオブジェクト名と対応する項目名のセット。通話種別には、オブジェクトごとに 1 つのセクションがあります。

DescribeSoftphoneLayoutInfoField

ソフトフォンレイアウト内の情報項目。

名前 説明
name string ソフトフォンレイアウト内の Salesforce オブジェクトに対応しない情報を含む項目の名前。たとえば、通話者 ID はこの項目で指定することができます。この項目には通話種別の静的情報が格納されます。

DescribeSoftphoneLayoutSection

DescribeSoftphoneLayoutResult オブジェクトで返される各通話種別には、通話種別ごとに 1 つのセクションが含まれます。各セクションには、オブジェクトと項目のペアが含まれます。

名前 説明
entityApiName string 取引先とケースのセットなど、ソフトフォンレイアウトに表示される項目に対応する Salesforce アプリケーションのオブジェクト名。
items DescribeSoftphoneLayoutItem[] ソフトフォンレイアウト項目のセット。

DescribeSoftphoneLayoutItem

各レイアウト項目は、Salesforce のレコードに対応します。

名前 説明
itemApiName string 取引先「Acme」など、ソフトフォンレイアウトに表示される項目に対応する Salesforce アプリケーションのレコード名。

DescribeSoftphoneScreenPopOption

DescribeSoftphoneLayoutResult オブジェクトで返される各通話種別には、通話種別ごとに 1 つの screenPopOptions 項目が含まれます。各 screenPopOptions 項目には、スクリーンポップ設定の詳細が含まれます。

名前 説明
matchType string 単一レコードまたは複数レコードに一致する通話詳細、あるいは一致するレコードがない通話詳細に対して、スクリーンポップを実行するためのソフトフォンレイアウトの設定。
screenPopData string 通話の matchType に応じてポップする特定のオブジェクトまたはページについてのソフトフォンレイアウトの設定。たとえば、通話の詳細があるレコードに一致した場合、指定した Visualforce ページをポップします。
screenPopType picklist 通話の matchType に応じてスクリーンポップを実行する方法を指定する設定。たとえば、通話の詳細があるレコードに一致した場合に詳細ページを表示するか、どのページも表示しないか、といった指定を行います。

サンプルコード —Java

このサンプルでは、ソフトフォンのレイアウトを describe して、コンソールにそのプロパティを書き込みます。次に、許可された通話種別を取得します。各通話種別で、情報項目、レイアウトセクション、およびレイアウトセクションのレイアウト項目を取得します。これらの値をコンソールに書き込みます。

1swfobject.registerObject("clippy.codeblock-1", "9");
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17public void describeSoftphoneLayout() {
18  try {
19    DescribeSoftphoneLayoutResult result =
20        connection.describeSoftphoneLayout();
21    System.out.println("ID of retrieved Softphone layout: " +
22        result.getId());
23    System.out.println("Name of retrieved Softphone layout: " +
24        result.getName());
25    System.out.println("\nContains following " +
26        "Call Type Layouts\n");
27    for (DescribeSoftphoneLayoutCallType type :
28          result.getCallTypes()) {
29      System.out.println("Layout for " + type.getName() +
30          " calls");  
31      System.out.println("\tCall-related fields:");
32      for (DescribeSoftphoneLayoutInfoField field :
33            type.getInfoFields()) {
34        System.out.println("\t\t{" + field.getName());
35      }
36      System.out.println("\tDisplayed Objects:");
37      for (DescribeSoftphoneLayoutSection section :
38            type.getSections()) {
39        System.out.println("\t\tFor entity " +
40            section.getEntityApiName() +
41            " following records are displayed:"
42        );
43        for (DescribeSoftphoneLayoutItem item :
44              section.getItems()) {
45          System.out.println("\t\t\t" + item.getItemApiName());
46        }
47      }
48    }
49  } catch (ConnectionException ce) {
50    ce.printStackTrace();
51  }
52}
53

サンプルコード —C#

このサンプルでは、ソフトフォンのレイアウトを describe して、コンソールにそのプロパティを書き込みます。次に、許可された通話種別を取得します。各通話種別で、情報項目、レイアウトセクション、およびレイアウトセクションのレイアウト項目を取得します。これらの値をコンソールに書き込みます。

1swfobject.registerObject("clippy.codeblock-2", "9");
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17/// Demonstrates how to retrieve the layout information
18/// for a Salesforce CRM Call Center SoftPhone
19public void DescribeSoftphoneLayoutSample()
20{
21   try
22   {
23       DescribeSoftphoneLayoutResult dsplResult = binding.describeSoftphoneLayout();
24       
25       // Display the ID and Name of the layout
26       Console.WriteLine("ID of retrieved Softphone layout: {0}", dsplResult.id);
27       Console.WriteLine("Name of retrieved Softphone layout: {0}", dsplResult.name);
28       
29       // Display the contents of each Call Type
30       Console.WriteLine("\nContains following Call Type Layouts\n");
31       foreach (DescribeSoftphoneLayoutCallType dsplCallType in dsplResult.callTypes)
32       {
33           Console.WriteLine("Layout for {0} calls", dsplCallType.name);
34           
35           // Display the call-related fields contained in the call type
36           Console.WriteLine("\tCall-related fields:");
37           foreach (DescribeSoftphoneLayoutInfoField dsplInfoField
38               in dsplCallType.infoFields)
39           {
40            Console.WriteLine("\t\t{0}", dsplInfoField.name);
41           }
42           
43           // Display the objects that are included in the layout
44           Console.WriteLine("\tDisplayed Objects:");
45           foreach (DescribeSoftphoneLayoutSection dsplSection
46               in dsplCallType.sections)
47           {
48               Console.WriteLine("\t\tFor entity {0} following records are displayed:",
49                   dsplSection.entityApiName);
50               foreach (DescribeSoftphoneLayoutItem dsplItem in dsplSection.items)
51               {
52                   Console.WriteLine("\t\t\t{0}", dsplItem.itemApiName);
53               }
54            }
55       }
56   }
57   catch (SoapException e)
58   {
59       Console.WriteLine(e.Message);
60       Console.WriteLine(e.StackTrace);
61       Console.WriteLine(e.InnerException);
62   }
63}