質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
AWS Lambda

AWS Lambdaは、クラウド上でアプリを実行できるコンピューティングサービス。サーバーのプロビジョニングや管理を要せず複数のイベントに対してコードを実行します。カスタムロジック用いた他AWSサービスの拡張やAWSの規模やパフォーマンスを用いたバックエンドサービスを作成できます。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

解決済

AWSのLambdaでの途中からでもパラメータを正常に取得する方法

akira777
akira777

総合スコア6

AWS Lambda

AWS Lambdaは、クラウド上でアプリを実行できるコンピューティングサービス。サーバーのプロビジョニングや管理を要せず複数のイベントに対してコードを実行します。カスタムロジック用いた他AWSサービスの拡張やAWSの規模やパフォーマンスを用いたバックエンドサービスを作成できます。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

3回答

0評価

0クリップ

243閲覧

投稿2022/05/12 02:27

編集2022/05/20 15:30

AmazonConnectの「キューメトリクスの取得」ブロックは、キューがアクティブではない(キューに 1 つもコールがない、キューのエージェントがオンラインではない) 場合は、エラーになります。(下の画像)
そこで、「人員の確認」ブロックを配置してアクティブの場合のみ「キューメトリクスの取得」をすることでエラーを回避しようかと思いましたが、Lambdaで合算されません。(上の画像)
原因は「tq1」「tq2」「tq3」の全てを取得しないからだと思われます。
ランダムで「tq1」を取得しないで「tq2」のみ取得したり、「tq2」と「tq3」のみ取得など・・・
全てのキューがアクティブの状態であれば、パラメータ取得は問題ありません。
この場合、合算する方法などあれば、ご教示いただけると助かります。
よろしくお願いいたします。
イメージ説明
イメージ説明

import json
import logging
import traceback

#ログ設定
logger = logging.getLogger()
logger.setLevel(logging.INFO)

def lambda_handler(event, context):

TODO implement

#AmazonConnectのコールフローからパラメータ取得し、値をセットする
Attributes = event.get('Details', {}).get('ContactData', {}).get('Attributes', {})
tq1 = str(Attributes.get('tq1', ''))
tq2 = str(Attributes.get('tq2', ''))
tq3 = str(Attributes.get('tq3', ''))

#キューの待ち呼数の値を文字列から整数に変換して合算する
StayCallCount = int(tq1) + int(tq2) + int(tq3)

#待ち呼数合算値をセットして、AmazonConnectに返す
return {
'StayCallCount': StayCallCount
}

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

yu_1985

2022/05/12 06:01

具体的にはどういうエラーが出ているんでしょうか。 単純にdictにキーが存在しない場合の処理を書けば良さそうに思えます https://teratail.com/questions/184274
akira777

2022/05/12 08:57

ありがとうございます。 エラーは下記の内容となります。 [ERROR] ValueError: invalid literal for int() with base 10: '' Traceback (most recent call last):   File "/var/task/lambda_function.py", line 20, in lambda_handler     StayCallCount = int(tq1) + int(tq2) + int(tq3)

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

AWS Lambda

AWS Lambdaは、クラウド上でアプリを実行できるコンピューティングサービス。サーバーのプロビジョニングや管理を要せず複数のイベントに対してコードを実行します。カスタムロジック用いた他AWSサービスの拡張やAWSの規模やパフォーマンスを用いたバックエンドサービスを作成できます。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。