質問編集履歴

5

微修正

2023/06/15 01:50

投稿

akira777
akira777

スコア8

test CHANGED
File without changes
test CHANGED
@@ -22,7 +22,7 @@
22
22
  // 発信者番号が一覧に存在するかどうかの確認
23
23
  const result = db.Items.some( item => {
24
24
  return (item.PhoneNumber == phone);
25
- return item.PhoneNumber. in (phone);
25
+ return (item.PhoneNumber in phone);
26
26
  });
27
27
  return { result : result };
28
28
  };

4

微修正

2023/06/15 01:49

投稿

akira777
akira777

スコア8

test CHANGED
File without changes
test CHANGED
@@ -19,10 +19,10 @@
19
19
  const phone = event.Details.ContactData.CustomerEndpoint.Address;
20
20
  // DynamoDBの一覧取得
21
21
  const db = await DynamoDB.scan({TableName: tableName}).promise();
22
- // 発信者番号が一覧に存在するかどうかの確認(完全一致)
22
+ // 発信者番号が一覧に存在するかどうかの確認
23
23
  const result = db.Items.some( item => {
24
24
  return (item.PhoneNumber == phone);
25
- return item.PhoneNumber.in (phone);
25
+ return item.PhoneNumber. in (phone);
26
26
  });
27
27
  return { result : result };
28
28
  };

3

変更点を追記

2023/06/15 01:40

投稿

akira777
akira777

スコア8

test CHANGED
File without changes
test CHANGED
@@ -7,8 +7,8 @@
7
7
  Lambdaのコードでは、true(Boolean) で返していますが、問い合わせフローに戻った時点ではstringとして処理されています。
8
8
  「問い合わせ属性を確認するブロック」でresult が 「090」「080」の部分一致の場合でも分岐させたいです。
9
9
 
10
- 部分一致では「includes」を追記すれば良さそうなのですが、下記コードを追記しただけでは処理してくれませんでした。
10
+ 部分一致では「in」を追記すれば良さそうなのですが、下記コードを追記しただけでは処理してくれませんでした。
11
- 「includes」の追記以外にも何か追記するのでしょうか?
11
+ 「in」の追記以外にも何か追記するのでしょうか?
12
12
 
13
13
  const AWS = require("aws-sdk");
14
14
  const DynamoDB = new AWS.DynamoDB.DocumentClient({ region: "ap-southeast-2" });
@@ -22,11 +22,7 @@
22
22
  // 発信者番号が一覧に存在するかどうかの確認(完全一致)
23
23
  const result = db.Items.some( item => {
24
24
  return (item.PhoneNumber == phone);
25
-
26
- // 発信者番号が一覧に存在するかどうかの確認(部分一致)
27
- const result = db.Items.some(item => {
28
- return item.PhoneNumber.includes(phone);
25
+ return item.PhoneNumber.in (phone);
29
-
30
26
  });
31
27
  return { result : result };
32
28
  };

2

試したことを追記

2023/06/15 00:34

投稿

akira777
akira777

スコア8

test CHANGED
File without changes
test CHANGED
@@ -6,6 +6,9 @@
6
6
  AmazonConnectの「問い合わせ属性を確認するブロック」では、result が true かどうかを条件に分岐しています。
7
7
  Lambdaのコードでは、true(Boolean) で返していますが、問い合わせフローに戻った時点ではstringとして処理されています。
8
8
  「問い合わせ属性を確認するブロック」でresult が 「090」「080」の部分一致の場合でも分岐させたいです。
9
+
10
+ 部分一致では「includes」を追記すれば良さそうなのですが、下記コードを追記しただけでは処理してくれませんでした。
11
+ 「includes」の追記以外にも何か追記するのでしょうか?
9
12
 
10
13
  const AWS = require("aws-sdk");
11
14
  const DynamoDB = new AWS.DynamoDB.DocumentClient({ region: "ap-southeast-2" });
@@ -16,9 +19,14 @@
16
19
  const phone = event.Details.ContactData.CustomerEndpoint.Address;
17
20
  // DynamoDBの一覧取得
18
21
  const db = await DynamoDB.scan({TableName: tableName}).promise();
19
- // 発信者番号が一覧に存在するかどうかの確認
22
+ // 発信者番号が一覧に存在するかどうかの確認(完全一致)
20
23
  const result = db.Items.some( item => {
21
24
  return (item.PhoneNumber == phone);
25
+
26
+ // 発信者番号が一覧に存在するかどうかの確認(部分一致)
27
+ const result = db.Items.some(item => {
28
+ return item.PhoneNumber.includes(phone);
29
+
22
30
  });
23
31
  return { result : result };
24
32
  };

1

補足説明を追記

2023/06/14 11:51

投稿

akira777
akira777

スコア8

test CHANGED
File without changes
test CHANGED
@@ -2,6 +2,10 @@
2
2
  DynamoDBに 090-****-****, 080-****-**** のような電話番号が登録されております。
3
3
 
4
4
  下記のコードでは電話番号の完全一致は実現可能ですが、「090」「080」のみの部分一致でもDynamoDBから電話番号を取得する場合、どのようなコードを追加すれば実現可能でしょうか?
5
+
6
+ AmazonConnectの「問い合わせ属性を確認するブロック」では、result が true かどうかを条件に分岐しています。
7
+ Lambdaのコードでは、true(Boolean) で返していますが、問い合わせフローに戻った時点ではstringとして処理されています。
8
+ 「問い合わせ属性を確認するブロック」でresult が 「090」「080」の部分一致の場合でも分岐させたいです。
5
9
 
6
10
  const AWS = require("aws-sdk");
7
11
  const DynamoDB = new AWS.DynamoDB.DocumentClient({ region: "ap-southeast-2" });