Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Amazon Connect コンタクトフローの大量移管?!
Search
toyo-da01
April 16, 2025
Technology
41
0
Share
Amazon Connect コンタクトフローの大量移管?!
豊洲会登壇資料。Amazon Connectで検証環境と本番環境の移管時におけるコンタクトフロー移管の実例紹介。
toyo-da01
April 16, 2025
More Decks by toyo-da01
See All by toyo-da01
AWSからLANケーブルへ!パブリッククラウドエンジニアのホームラボ挑戦
da01toyo
0
12
AWS ハッカソン体験記~ゲーム開発で得られたAWSスキル紹介~
da01toyo
0
21
UTM (統合脅威管理; FortiGate) on AWSを構築するにはどんなネットワーク設定??
da01toyo
0
260
悪用厳禁! SQLインジェクションやってみた!
da01toyo
0
16
業務効率化したいのに時間がない??OSSとLambdaを用いたツールのスピード開発術
da01toyo
0
23
普通のやり方だとできない!?💦 Amazon Connect x Lambdaのレア?な連携のご紹介!
da01toyo
0
24
CI/CD ツール導入で達成した、開発と運用の協力関係強化とストレスフリーなリリースプロセスの実現に迫る!
da01toyo
0
20
CI / CDって具体的にどう動いている??
da01toyo
0
12
監視オペレータはもういらない?~Amazon Connectを用いたスペシャリスト自動手配システムの内製開発~
da01toyo
0
11
Other Decks in Technology
See All in Technology
JJUG CCC 2026 Spring AI時代の開発こそ標準化を武器に! ― 方式・プロセス・プラットフォームの標準化
s27watanabe
2
620
Amazon CloudFrontにおけるAIボットアクセス制御のポイント
kizawa2020
5
310
イベントで大活躍する電子ペーパー名札 〜その3〜 / ビジュアルプログラミングIoTLT vol.23
you
PRO
0
160
オンコールの負荷軽減のためのBits Assistant 活用方法 / How to Use Bits Assistant to Reduce the Workload on On-Call Staff
sms_tech
1
330
GitHub Copilot CLIでWebアクセシビリティを改善した話
tomokusaba
0
120
OpenClawとHermesAgentでAI新入社員を作った話
takanoriyanada
0
140
Datadog 認定試験の概要と対策
uechishingo
0
190
GitHub Copilot のこれまでとこれから: From Copilot to Collaborative Agents
yuriemori
1
230
速さだけじゃない! VoidZero ツールが移行先に選ばれる理由
mizdra
PRO
6
680
20260528_生成AIを専属DSに_Howの次にすべきことを考える
doradora09
PRO
0
260
ルールやカスタム機能、どう使う?理想の出力を引き出すために今知りたいIBM Bob 5つの機能
muehara
0
140
権限管理設計を完全に理解した
rsugi
2
240
Featured
See All Featured
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
210
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
74k
Visualization
eitanlees
152
17k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Deep Space Network (abreviated)
tonyrice
0
160
The SEO identity crisis: Don't let AI make you average
varn
0
480
The Limits of Empathy - UXLibs8
cassininazir
1
340
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.1k
A Tale of Four Properties
chriscoyier
163
24k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
310
Skip the Path - Find Your Career Trail
mkilby
1
130
Transcript
/ Amazon Connect コンタクトフローの大量移管?! 2025/04/16 豊洲会 豊岡大地
/ /9 ―― はじめに ―― Amazon Connect(AWSのコンタクトセンタサービス)では、 従来のITシステムと同様に開発環境・(検証環境)・本番環境の環境用意が推奨されます。 Amazon ConnectでもIaCツールが提供されているものの、、
⇒特にコンタクトフローはUIによる設計が充実しており、コンタクトフローの JSONに都度起こす作業は相性が悪い印象、、 3 百近くある場合は、大変
/ /9 ―― SDKを用いた移行自動化対応 ―― 4 コンタクトフローをJSONに起こすと、、 コンタクトフロー関連のAPIは下記の通り。 ✓ DescribeContatactFlow
(移管元) ✓ CreateContactFlow, UpdateContactFlowModule (移管先) { "Version": "2019-10-30", "StartAction": "12345678-1234-1234-1234-123456789012", "Metadata": { "EntryPointPosition": { "x": 88, "y": 100 }, "ActionMetadata": { "12345678-1234-1234-1234-123456789012": { "Position": { "x": 270, "y": 98 } } } }, "Actions": [{ "Identifier": "12345678-1234-1234-1234-123456789012", "Type": "MessageParticipant", "Transitions": { "NextAction": "abcdef-abcd-abcd-abcd-abcdefghijkl", "Errors": [], "Conditions": [] }, "Parameters": { "Text": "Thanks for calling the sample flow!" } } ] } Contact Flowの情報はこんなに形式的になっているのに、 公式APIではStringでしか返してくれない
/ /9 ―― SDKを用いた移行自動化対応 ―― コンタクトフローには、Amazon Connectのコンポーネント(キュー、ルーティングなど)ARNも含まれる。 Amazon Connect ARNは通常のサービスと少し異なる。
Lambdaの例)arn:aws:lambda:${AWS_REGION}:${AWS_ACCOUNT_ID}:${function_name}:${version} $ aws connect list-queues --instance-id ${instance_id} { "QueueSummaryList": [ { "Id": "92b5a537-b185-4f30-9a7e-1c71770216ac", "Arn": "arn:aws:connect:ap-northeast-1:${AWS_ACCOUNT_ID}:instance/${INSTANCE_ID}/queue/92b5a537-b185-4f30-9a7e-1c71770216ac", "Name": "BasicQueue", "QueueType": "STANDARD", "LastModifiedTime": "2024-09-05T10:07:12.925000+09:00", "LastModifiedRegion": "ap-northeast-1" } ] } インスタンス毎に、 Nameは一致していてもUUIDのように払い出される 5 ⇒ 移管元から移管先への対応では、Nameを「キー」にして、ARNを置き換える必要がある!
/ /9 ―― SDKを用いた移行自動化対応 ―― 以上で、SDKを用いた自動化対応が完了?! 1. 移管元Amazon Connectに対して、DescribeContactFlow APIで情報取得
2. 移管先のクレデンシャルで向きを変更 3. 移管先の各コンテポーネントARNを取得 4. 取得した移管元のContactFlowを、移管先のコンポーネントARNに置換 5. 整理したContact Flowを、移管先にCreateContactFlow/UpdateContactFlow APIで作成 6 残念ながら、足りませんでした、、
/ /9 ―― SDKを用いた移行自動化対応 ―― 7 コンタクトフローは、コンタクトフロー自身を参照する場合があります、、! ⇒ 移管元から移管先への対応では、コンタクトフローの依存関係を整理したうえでアップロードする必要があり!
/ /9 ―― コンタクトフローの依存関係の整理 ―― 8 手元には参照される(regax取得)コンタクトフローを把握して、 一時的なリストにアップロード進捗を格納して比較して、ソートする 各種IaC*でも同じような対策が取られている、、? *IAMロールから作るなど
/ /9 ―― SDKを用いた移行自動化対応 ―― 以上で、SDKを用いた自動化対応が完了?! 1. 移管元Amazon Connectに対して、DescribeContactFlow APIで情報取得
2. 移管先のクレデンシャルで向きを変更 3. 移管先の各コンテポーネントARNを取得 4. 取得した移管元のContactFlowを、移管先のコンポーネントARNに置換 5. 整理したContact Flowを、移管先にCreateContactFlow/UpdateContactFlow APIで作成 再 残念ながら、足りませんでした、、
/ /9 ―― SDKを用いた移行自動化対応 ―― 以上で、SDKを用いた自動化対応が完了!! 1. 移管元Amazon Connectに対して、DescribeContactFlow APIで情報取得
2. 移管先のクレデンシャルで向きを変更 3. 移管先の各コンテポーネントARNを取得 4. 取得した移管元のContactFlowを、移管先のコンポーネントARNに置換 5. コンタクトフロー自身参照からアップロードする順番を整理 6. 整理した順番とContact Flowを、移管先にCreateContactFlow/UpdateContactFlow APIで作成 9 クセ強な環境移管を自動化できた!