
Amazon Connect Customer の電話番号と着信通話にタグを付けてクラスメソッドメンバーズポータルで部署別の料金を確認してみた
はじめに
Amazon Connect Customer を複数部署で利用する場合、部署ごとに利用料金を分けて把握したいことがあります。
部署ごとに AWS アカウントを分ける方法もありますが、今回は同じ AWS アカウント、同じ Amazon Connect Customer インスタンス内で、タグを使って部署別に料金を確認する方法を試しました。
営業部門とサポート部門を想定して2つの電話番号を用意し、電話番号リソースと着信通話のコンタクトにそれぞれタグを付けています。
料金の確認には、クラスメソッドメンバーズポータルを使用しました。
この記事で扱うのはタグによる料金の分類・可視化であり、請求書を部署別に分割する設定ではありません。
料金の種類とタグを付ける対象
Amazon Connect Customer の音声利用では、電話番号を保有することで発生する料金と、発着信に伴って時間に応じて発生する料金を分けて考える必要があります。
また、時間に応じた料金には、テレフォニー料金と Amazon Connect Customer の音声サービス利用料金があります。「電話番号の保有料金」と「通話料」の2項目だけですべての料金が構成されるわけではありません。
料金体系については、以下の公式ページを確認してください。
今回、料金を分類するためにタグを付けた対象は以下です。
| 分類したい料金 | タグを付ける対象 | 今回の設定方法 |
|---|---|---|
| 電話番号の保有に関連する料金 | 電話番号リソース | AWS CLI |
| 発着信に伴う時間ベースの料金 | コンタクト | フロー内の「コンタクトのタグ」ブロック |
電話番号リソースへのタグ付けは、執筆時点の公式ドキュメントでは管理ウェブサイトからの操作に対応しておらず、CLI/SDK からの操作に対応しています。
コンタクトタグを使った料金の分類については、以下の AWS 公式ドキュメントに記載されています。
ただし、クラスメソッドメンバーズ契約の AWS アカウントでは、このドキュメントに記載されている AWS Billing でのコスト配分タグの有効化と料金確認の手順は利用できません。本記事では、クラスメソッドメンバーズポータルのタグ別料金表示を使用して確認します。
電話番号に付けた独自タグが、その番号への着信コンタクトにも自動的に付与されるわけではありません。 今回は、電話番号リソースとコンタクトの両方にタグを設定します。
今回の検証環境
東京リージョンの ap-northeast-1 で、以下の電話番号とタグを使用しました。電話番号は一部をマスクしています。
| 部署 | 電話番号 | 電話番号リソースのタグ | コンタクトタグ |
|---|---|---|---|
| 営業 | 050-3116-**** |
Owner=Sales |
Owner=Sales-InboundCall |
| サポート | 050-3173-**** |
Owner=Support |
Owner=Support-InboundCall |
電話番号リソースには部署名を設定し、コンタクトには部署名に -InboundCall を付けた値を設定しました。同じ Owner キーで集計しても、電話番号と着信コンタクトを区別できるようにしています。
今回は、以下を設定済みの環境で検証しました。
- Amazon Connect Customer インスタンスを作成済み
- 電話番号を2つ取得済み
- 各電話番号に営業用またはサポート用のフローを関連付け済み
- 対象 AWS アカウントの料金をメンバーズポータルで確認できる
以降の AWS CLI コマンドは AWS CloudShell で実行します。アカウント ID やリソース ID は例示のため、利用する環境の値に置き換えてください。
タグを設定する
電話番号の ARN を確認する
AWS CloudShell を開き、対象インスタンスに関連付けられた電話番号と、電話番号リソースの ARN を一覧表示します。
REGION="ap-northeast-1"
INSTANCE_ARN="arn:aws:connect:ap-northeast-1:111111111111:instance/<instance-id>"
aws connect list-phone-numbers-v2 \
--target-arn "$INSTANCE_ARN" \
--region "$REGION" \
--query 'ListPhoneNumbersSummaryList[].{PhoneNumber:PhoneNumber,PhoneNumberArn:PhoneNumberArn}' \
--output table
------------------------------------------------------------------------------------------------------------------------------------------------
| ListPhoneNumbersV2 |
+-----------------+----------------------------------------------------------------------------------------------------------------------------+
| PhoneNumber | PhoneNumberArn |
+-----------------+----------------------------------------------------------------------------------------------------------------------------+
| +81503116**** | arn:aws:connect:ap-northeast-1:111111111111:phone-number/11111111-1111-4111-8111-111111111111 |
| +81503173**** | arn:aws:connect:ap-northeast-1:111111111111:phone-number/22222222-2222-4222-8222-222222222222 |
+-----------------+----------------------------------------------------------------------------------------------------------------------------+
--target-arn にはインスタンスの ARN を指定しています。出力された一覧から、営業用とサポート用の電話番号に対応する PhoneNumberArn を確認します。
ここで取得した電話番号 ARN を、次のタグ付与コマンドで使用します。
電話番号に Owner タグを付ける
営業用の電話番号には Owner=Sales、サポート用の電話番号には Owner=Support を設定します。
ARN_SALES と ARN_SUPPORT には、前の手順で取得した電話番号 ARN を指定してください。
REGION="ap-northeast-1"
ARN_SALES="arn:aws:connect:ap-northeast-1:111111111111:phone-number/<sales-phone-number-id>"
ARN_SUPPORT="arn:aws:connect:ap-northeast-1:111111111111:phone-number/<support-phone-number-id>"
# 営業用電話番号にタグを付与
aws connect tag-resource \
--resource-arn "$ARN_SALES" \
--tags '{"Owner":"Sales"}' \
--region "$REGION"
# サポート用電話番号にタグを付与
aws connect tag-resource \
--resource-arn "$ARN_SUPPORT" \
--tags '{"Owner":"Support"}' \
--region "$REGION"
# 設定結果を確認
aws connect list-tags-for-resource \
--resource-arn "$ARN_SALES" \
--region "$REGION"
aws connect list-tags-for-resource \
--resource-arn "$ARN_SUPPORT" \
--region "$REGION"
tag-resource で電話番号リソースにタグを付け、list-tags-for-resource で設定結果を確認しています。
営業用電話番号の確認結果は以下です。
{
"tags": {
"Owner": "Sales"
}
}
サポート用電話番号の確認結果は以下です。
{
"tags": {
"Owner": "Support"
}
}
それぞれの電話番号に、指定したタグが付いていることを確認できました。
フロー内でコンタクトにタグを付ける
次に、各電話番号に関連付けたフローを開き、デザイナー内に「コンタクトのタグ」ブロックを追加します。
このブロックで、処理中のコンタクトにユーザー定義タグを付与できます。
今回設定した値は以下です。
| フロー | キー | 値 |
|---|---|---|
| 営業用 | Owner |
Sales-InboundCall |
| サポート用 | Owner |
Support-InboundCall |
営業用フローでは、Owner=Sales-InboundCall を設定しました。

営業用フローで Owner=Sales-InboundCall を付与する設定
サポート用フローでは、Owner=Support-InboundCall を設定しました。

サポート用フローで Owner=Support-InboundCall を付与する設定
ブロックを後続処理に接続し、フローを保存・公開します。
なお、フローの「詳細」タブにあるタグ欄は、フローリソース自体へのタグです。今回使用するのは、デザイナー内の「コンタクトのタグ」ブロックです。
メンバーズポータルで料金を確認する
設定後に各番号へ電話をかけ、料金データの反映後にメンバーズポータルを確認しました。
対象 AWS アカウントの料金画面で「タグ」タブを開き、「グループ化するタグのカテゴリ」に Owner を指定します。
タグタブの操作については、以下のユーザーガイドが参考になります。

Owner の値ごとに料金と比率が表示された結果
電話番号に付けた Sales/Support と、コンタクトに付けた Sales-InboundCall/Support-InboundCall が、それぞれ別の行で表示され、タグごとの金額を確認できました。
まとめ
同じ AWS アカウント内でも、電話番号リソースとコンタクトにタグを付けることで、メンバーズポータルで部署別の料金を確認できました。
電話番号には AWS CLI で、着信コンタクトにはフロー内の「コンタクトのタグ」ブロックでタグを付与します。部署別に電話番号と着信通話の両方の料金を把握する場合は、それぞれにタグを設定してください。









