15
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Kiro CLIでSORACOMを操作してみる。

15
Last updated at Posted at 2025-12-24

Gemini_Generated_Image_sjgcezsjgcezsjgc.png
この画像はGenimi Nano Banana で生成したものです。

SORACOM Advent Calendar 2025、22日目の記事になります。遅れてすみません。
そして、
最近SORACOMちゃんと触ってないなぁ・・・と思っている人です。


それはさておき、そろそろSORACOM MCP Serverとか使ってみない
と前々思っていて、構築しようかと思ったんですが・・・。

ふと、Kiro CLI(旧Amazon Q Developer CLI)を開いていたので、Kiro CLIでSORACOM操作できないかな?
と思ってやってみた。そんな話です。
結論から言うと、

操作できました。

SORACOM CLIがインストールされている場合は、SORACOM CLIで、
インストールされていない場合はSORACOM APIでできます。

必要なこと

操作するためにAuthKeyId と AuthKey が必要なので、SORACOMコンソールで作っておきます。
SORACOM CLIは必須ではないですが、SORACOM CLIで操作してもらうのがいいかな?って思います。

やってみた

事前準備

Kiroを起動して、SORACOMで〜をしたいと聞くと、まず、CLIがインストールしているかを確認してくれます。

> SIMの管理がしたい。

> SIMの管理を行うために、まずSORACOM CLIがインストールされているか確認しましょう。
I will run the following command: which soracom (using tool: shell)
Purpose: SORACOM CLIがインストールされているか確認


Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:

> y

/opt/homebrew/bin/soracom
 - Completed in 0.182s

> SORACOM CLIがインストールされています。SIM管理の主要な操作を実行できます:

前述した通り、SORACOM CLIがない場合は、こんな感じで、APIを使うようにしてくれます。
Kiro CLIやるな・・・。

> SORACOMのSIMの一覧を表示して

> SORACOM CLIを使ってSIMの一覧を表示します。
I will run the following command: soracom sims list (using tool: shell)
Purpose: List SORACOM SIMs using SORACOM CLI


Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:

> y

bash: soracom: command not found
 - Completed in 0.18s

> SORACOM CLIがインストールされていないようです。curlを使ってAPIを直接呼び出してSIM一覧を取得します。
I will run the following command: curl -X GET "https://api.soracom.io/v1/sims" \
  -H "X-Soracom-API-Key: $SORACOM_AUTH_KEY_ID" \
  -H "X-Soracom-Token: $SORACOM_AUTH_KEY_SECRET" \
  -H "Content-Type: application/json" (using tool: shell)
Purpose: Get SIM list using SORACOM API directly

情報取得してみた

〜したいとか、一覧出してと指示すると、適切なコマンドを実行してくれます。
一覧取得の場合、ついでにサマリーまで作ってくれます。

SIMの一覧の場合はこんな感じ。

> SIMの一覧が見たい

I will run the following command: soracom sims list (using tool: shell)
Purpose: SORACOMのSIM一覧を表示


Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:

〜中略〜

> SIM一覧を取得しました。現在16枚のSIMが登録されています。

主要なSIM情報:

アクティブなSIM(オンライン):
- ******************* - GPSマルチユニット用SIM(オンライン)
- ******************* - LTE-M CO2センサー用SIM(オンライン)

アクティブなSIM(オフライン):
- ******************* - Acty-G3
- ******************* - WioLTE用
- ******************* - GPSマルチユニット用2号機SIM
- ******************* - VPG TEST SIM
- ******************* - 無名
- ******************* - 元あのボタン1号機
- ******************* - 無名
- ******************* - SORACOM LTE-M Button for Enterprise SIM
- ******************* - ひげボタン2号機
- ******************* - ひげボタン

停止中のSIM:
- ******************* - 20250531handson_sim(suspended)

プラン別:
- plan-D: 8枚
- plan-KM1: 8枚

特定のSIMについて詳細情報が必要でしたら、SIM IDを指定してください。

あれ、でも枚数少なくない?って思ったので、数え直しをお願いしたところ、
間違っており、謝罪してくれました。なんか親近感w

> 登録されているSIM何枚ある?

> 先ほど取得したSIM一覧から確認すると、**17枚**のSIMが登録されています。

内訳:
- 最初の一覧で16枚
- 追加で確認したSIM ID ******************* で1枚

ステータス別:
- アクティブ(オンライン): 2枚
- アクティブ(オフライン): 14枚  
- 停止中(suspended): 1枚

プラン別:
- plan-D: 9枚
- plan-KM1: 6枚
- plan-K2: 2枚

合計 17枚 のSIMが登録されています。
 ▸ Time: 4s

> もう1回確認して

I will run the following command: soracom sims list | jq length (using tool: shell)
Purpose: SIM一覧の件数を正確にカウント


Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:

> y

21
 - Completed in 0.971s

> 正確に確認しました。登録されているSIMは 21枚 です。

先ほどの回答で数え間違いがありました。申し訳ありません。

GPSマルチユニットなど、ガジェットの一覧の場合はこんな感じになりました。


> ガジェットの一覧を全部出して

I will run the following command: soracom gadgets list (using tool: shell)
Purpose: SORACOMガジェットの一覧を取得


Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:

> y

[]
 - Completed in 0.791s

I will run the following command: soracom gadgets --help (using tool: shell)
Purpose: ガジェットコマンドのヘルプを確認


Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:

> y

ガジェットに関する操作を行います。

Usage:
  soracom gadgets [command]

Available Commands:
  delete-tag          Gadget API 対応デバイスのタグを削除する
  disable-termination Gadget API 対応デバイスを解約不可能に設定する
  enable-termination  Gadget API 対応デバイスを解約可能に設定する
  get                 Gadget API 対応デバイスの詳細情報を取得する
  list                Gadget API 対応デバイスの一覧を取得する
  put-tags            Gadget API 対応デバイスのタグを追加・更新する
  register            Gadget API 対応デバイスを登録する
  terminate           Gadget API 対応デバイスを解約する

Flags:
  -h, --help   help for gadgets

Global Flags:
      --api-key string           API キーを指定します。
                                 API キーを指定しなければ soracom-cli が代わりに認証処理を実行して API キーを取得します。
                                 もし API キーを既に持っている場合はこの引数に指定することで認証処理をスキップできるので高速化できます。
                                 --api-token も同時に指定してください。
                                 
      --api-token string         API トークンを指定します。
                                 API トークンを指定しなければ soracom-cli が代わりに認証処理を実行して API トークンを取得します。
                                 もし API トークンを既に持っている場合はこの引数に指定することで認証処理をスキップできるので高速化できます。
                                 --api-key も同時に指定してください。
                                 
      --auth-key string          認証処理に利用する認証キーシークレット (AuthKey) を指定します。
                                 --auth-key-id と --auth-key の両方を指定すると、soracom-cli は事前にセットアップされたプロファイル情報なしでも動作します。
                                 すなわち事前に 'soracom configure' コマンドを実行しておく必要がなくなりますので、一時的にコマンドを実行したいだけの場合やスクリプトからの実行などに適しています。
                                 このオプションを指定した場合は合わせて --coverage-type も指定してください。
                                 
      --auth-key-id string       認証処理に利用する認証キー ID (AuthKeyId) を指定します。
                                 --auth-key-id と --auth-key の両方を指定すると、soracom-cli は事前にセットアップされたプロファイル情報なしでも動作します。
                                 すなわち事前に 'soracom configure' コマンドを実行しておく必要がなくなりますので、一時的にコマンドを実行したい場合やスクリプトからの実行などに適しています。
                                 このオプションを指定した場合は合わせて --coverage-type も指定してください。
                                 
      --coverage-type string     カバレッジタイプを指定します。グローバルカバレッジは 'g'、日本カバレッジは 'jp' です。
                                 
      --no-retry-on-error        このフラグを指定すると、API がエラーを返してきた場合にもリトライしません (デフォルトではバックオフしながら数回リトライします)。
                                 
      --profile string           プロファイル名を指定します。
                                 
      --profile-command string   プロファイル情報を供給するためのコマンドを指定します。
                                 このオプションを指定すると、soracom-cli は事前にセットアップされたプロファイル情報なしでも動作します。
                                 すなわち事前に 'soracom configure' コマンドを実行しておく必要がなくなります。
                                 認証情報をパスワードマネージャーなどのより安全な場所に格納しておき、外部コマンド経由でそれを利用することができます。
                                 
      --raw-output               API から返却されたレスポンスを加工せずにそのまま出力します (デフォルトでは JSON をインデントして表示します)。

Use "soracom gadgets [command] --help" for more information about a command.
 - Completed in 0.90s

> 現在登録されているガジェットはありません(空の配列が返されました)。

ただし、SIMの一覧から、ガジェット関連のタグが付いているSIMを確認できます:
I will run the following command: soracom sims list | jq -r '.[] | select(.tags | has("soracom.gadgets") or has("soracom.button")) | [.simId, (.tags.name // "無名"), (.tags["soracom.gadgets"] // .tags["soracom.button"] // "不明")] | @tsv' (using tool: shell)
Purpose: ガジェット関連のタグが付いているSIMを抽出


Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:

> y

*******************	GPSマルチユニット用2号機(Plan-K2) SIM	GPS-Multiunit
*******************	GPSマルチユニット用SIM	GPS-Multiunit
*******************	GPSマルチユニット用2号機SIM	GPS-Multiunit
*******************	20250531handson_sim	GPS-Multiunit
*******************	元あのボタン1号機	LTE-M-Button
*******************	SORACOM LTE-M Button for Enterprise SIM	LTE-M Button
*******************	ひげボタン	LTE-M Button
 - Completed in 0.527s

> ガジェット関連のSIM一覧:

GPSマルチユニット(4台):
- ******************* - GPSマルチユニット用2号機(Plan-K2) SIM
- ******************* - GPSマルチユニット用SIM
- ******************* - GPSマルチユニット用2号機SIM  
- ******************* - 20250531handson_sim

LTE-M Button(3台):
- ******************* - 元あのボタン1号機
- ******************* - SORACOM LTE-M Button for Enterprise SIM
- ******************* - ひげボタン

正式なガジェット登録はされていませんが、合計7台のガジェット関連デバイスがSIMとして管理されています。
 ▸ Time: 29s

soracom gadgetsで取れないんだっけ?と思いつつ、
コマンドの見直し、SIMの一覧から取り直してくれたので、こいつやるなと思いました。

GPSマルチユニットやLTE-M CO2センサーのデータを見たいなと思って、聞いてみました。

> SIM ******************* のセンサーデータを見たい。

I will run the following command: soracom data get --resource-type Sim --resource-id ******************* (using tool: shell)
Purpose: 指定されたSIMのHarvest Dataからセンサーデータを取得


Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:

> y

Error: unknown flag: --resource-type
Usage:
  soracom data get [flags]

Flags:
      --fetch-all                   自動的にページネーションします。
      --from int                    Start time for the data entries search range (UNIX time in milliseconds).
  -h, --help                        help for get
      --imsi string                 IMSI of the target subscriber that generated data entries.
      --jsonl                       配列型のレスポンスを JSONL (JSON Lines) フォーマットで出力します。
      --last-evaluated-key string   Key in the last data entry retrieved in the previous page. The key for data entries in this API is '${UNIX time in milliseconds}_${IMSI}'. By specifying this parameter, you can continue to retrieve the list from the next page onward.
      --limit int                   Maximum number of data entries to retrieve (value range is 1 to 1000). The default is '10'.
      --sort string                 Sort order of the data entries. Either descending (latest data entry first) or ascending (oldest data entry first). (default "desc")
      --to int                      End time for the data entries search range (UNIX time in milliseconds).

Global Flags:
      --api-key string           API キーを指定します。
                                 API キーを指定しなければ soracom-cli が代わりに認証処理を実行して API キーを取得します。
                                 もし API キーを既に持っている場合はこの引数に指定することで認証処理をスキップできるので高速化できます。
                                 --api-token も同時に指定してください。
                                 
      --api-token string         API トークンを指定します。
                                 API トークンを指定しなければ soracom-cli が代わりに認証処理を実行して API トークンを取得します。
                                 もし API トークンを既に持っている場合はこの引数に指定することで認証処理をスキップできるので高速化できます。
                                 --api-key も同時に指定してください。
                                 
      --auth-key string          認証処理に利用する認証キーシークレット (AuthKey) を指定します。
                                 --auth-key-id と --auth-key の両方を指定すると、soracom-cli は事前にセットアップされたプロファイル情報なしでも動作します。
                                 すなわち事前に 'soracom configure' コマンドを実行しておく必要がなくなりますので、一時的にコマンドを実行したいだけの場合やスクリプトからの実行などに適しています。
                                 このオプションを指定した場合は合わせて --coverage-type も指定してください。
                                 
      --auth-key-id string       認証処理に利用する認証キー ID (AuthKeyId) を指定します。
                                 --auth-key-id と --auth-key の両方を指定すると、soracom-cli は事前にセットアップされたプロファイル情報なしでも動作します。
                                 すなわち事前に 'soracom configure' コマンドを実行しておく必要がなくなりますので、一時的にコマンドを実行したい場合やスクリプトからの実行などに適しています。
                                 このオプションを指定した場合は合わせて --coverage-type も指定してください。
                                 
      --coverage-type string     カバレッジタイプを指定します。グローバルカバレッジは 'g'、日本カバレッジは 'jp' です。
                                 
      --no-retry-on-error        このフラグを指定すると、API がエラーを返してきた場合にもリトライしません (デフォルトではバックオフしながら数回リトライします)。
                                 
      --profile string           プロファイル名を指定します。
                                 
      --profile-command string   プロファイル情報を供給するためのコマンドを指定します。
                                 このオプションを指定すると、soracom-cli は事前にセットアップされたプロファイル情報なしでも動作します。
                                 すなわち事前に 'soracom configure' コマンドを実行しておく必要がなくなります。
                                 認証情報をパスワードマネージャーなどのより安全な場所に格納しておき、外部コマンド経由でそれを利用することができます。
                                 
      --raw-output               API から返却されたレスポンスを加工せずにそのまま出力します (デフォルトでは JSON をインデントして表示します)。

 - Completed in 0.128s

I will run the following command: soracom data get --imsi *************** --limit 20 (using tool: shell)
Purpose: IMSIを使ってHarvest Dataからセンサーデータを取得

Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:

> y

〜〜中略〜〜
 - Completed in 0.562s

> SIM *******************(LTE-M CO2センサー用SIM)のセンサーデータ

最新20件のCO2センサーデータ(15分間隔で送信):

| 時刻 | CO2 (ppm) | 温度 (°C) | 湿度 (%) |
|------|-----------|-----------|----------|
| 02:39 | 428 | 20.5 | 39.8 |
| 02:24 | 431 | 20.4 | 38.9 |
| 02:09 | 433 | 20.4 | 39.2 |
| 01:54 | 435 | 20.5 | 39.0 |
| 01:39 | 441 | 20.6 | 38.9 |
| 01:24 | 445 | 20.6 | 39.1 |
| 01:09 | 450 | 20.5 | 39.3 |
| 00:54 | 496 | 20.8 | 40.9 |
| 00:39 | 524 | 20.6 | 41.7 |
| 00:24 | 607 | 20.9 | 42.9 |
| 00:09 | 784 | 21.4 | 43.7 |
| 23:54 | 1057 | 22.4 | 44.4 |
| 23:39 | 1052 | 22.3 | 44.7 |
| 23:24 | 1015 | 22.0 | 45.5 |
| 23:09 | 912 | 21.9 | 46.0 |
| 22:54 | 919 | 21.6 | 45.6 |
| 22:39 | 958 | 21.7 | 46.6 |
| 22:24 | 842 | 21.7 | 46.7 |
| 22:09 | 694 | 21.5 | 46.2 |
| 21:54 | 586 | 21.3 | 44.5 |

データの特徴:
- 送信間隔: 15分
- CO2濃度: 428-1057 ppm(夜間に高く、朝方に低下)
- 温度: 20.4-22.4°C(安定)
- 湿度: 38.9-46.7%(やや変動)
- バイナリパーサー: 有効

CO2濃度が夜間に上昇し、朝方に低下する典型的な室内環境パターンを示しています。
 ▸ Time: 27s


こちらもサマリーを作ってくれました。
試しに7日分、1日ごとのサマリーを作ってと頼んだところ、
簡単ではなかったらしく、
pythonのプログラムを作って、それを実行して上で、サマリーを作ってくれました。

> LTE-M CO2センサー用SIMのセンサーデータのサマリーを7日分1日単位で作って欲しい。

I will run the following command: soracom data get --imsi *************** --from $(($(date +%s)*1000 - 7*24*60*60*1000)) --to $(($(date +%s)*1000)) --limit 1000 (using tool: shell)
Purpose: 過去7日分のセンサーデータを取得


Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:

> y

〜〜中略〜〜

Purpose: AWKを使って日別データサマリーを作成


Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:

> y

------------------------------------------------------------
============================================================
2025-12-16    885-1602(平均1274) 18.4-18.9(平均18.6) 44.4-49.7(平均47.5)     25
2025-12-17    456-1179(平均 664) 17.4-20.1(平均18.3) 45.8-55.1(平均50.1)     96
2025-12-18    437-1575(平均 694) 16.3-18.4(平均17.7) 41.9-51.1(平均45.2)     96
2025-12-19    470-1641(平均 803) 17.0-19.3(平均18.1) 43.1-53.0(平均47.8)     96
2025-12-20    492-1259(平均 736) 17.2-18.6(平均17.9) 47.6-67.3(平均59.0)     96
2025-12-21    472-1674(平均 800) 18.0-22.0(平均19.7) 62.1-72.8(平均67.2)     96
2025-12-22    418-1740(平均 841) 17.3-24.9(平均20.2) 39.3-62.5(平均46.8)     96
2025-12-23    428-1535(平均 744) 17.9-24.8(平均21.2) 38.9-52.6(平均44.3)     71
LTE-M CO2センサー用SIM - 7日間データサマリー
日付       CO2(ppm)             温度(°C)     湿度(%)    データ数
 - Completed in 0.532s

> LTE-M CO2センサー用SIM - 7日間データサマリー

| 日付 | CO2(ppm) | 温度(°C) | 湿度(%) | データ数 |
|------|----------|----------|---------|----------|
| 2025-12-16 | 885-1602(平均1274) | 18.4-18.9(平均18.6) | 44.4-49.7(平均47.5) | 25 |
| 2025-12-17 | 456-1179(平均664) | 17.4-20.1(平均18.3) | 45.8-55.1(平均50.1) | 96 |
| 2025-12-18 | 437-1575(平均694) | 16.3-18.4(平均17.7) | 41.9-51.1(平均45.2) | 96 |
| 2025-12-19 | 470-1641(平均803) | 17.0-19.3(平均18.1) | 43.1-53.0(平均47.8) | 96 |
| 2025-12-20 | 492-1259(平均736) | 17.2-18.6(平均17.9) | 47.6-67.3(平均59.0) | 96 |
| 2025-12-21 | 472-1674(平均800) | 18.0-22.0(平均19.7) | 62.1-72.8(平均67.2) | 96 |
| 2025-12-22 | 418-1740(平均841) | 17.3-24.9(平均20.2) | 39.3-62.5(平均46.8) | 96 |
| 2025-12-23 | 428-1535(平均744) | 17.9-24.8(平均21.2) | 38.9-52.6(平均44.3) | 71 |

特徴:
- **CO2濃度**: 日中は400-600ppm、夜間は1000-1700ppmの範囲で変動
- **温度**: 16-25°C、最近は暖房の影響で上昇傾向
- **湿度**: 39-73%、12/20-21は高湿度(60-70%)
- **データ送信**: 15分間隔で安定して送信(1日96件が標準)

室内環境の典型的なパターンを示しており、CO2濃度の日内変動や温湿度の季節変化が確認できます。

やるなKiro CLI。

ちなみに作ったコードはこんな感じでした。

#!/usr/bin/env python3
import json
import sys
from datetime import datetime
from collections import defaultdict
import statistics

# JSONデータを読み込み
data = []
for line in sys.stdin:
    line = line.strip()
    if line.startswith('['):
        line = line[1:]
    if line.endswith(']'):
        line = line[:-1]
    if line.endswith(','):
        line = line[:-1]
    if line.startswith('{') and line.endswith('}'):
        try:
            entry = json.loads(line)
            data.append(entry)
        except:
            pass

# 日別にデータを集計
daily_data = defaultdict(list)

for entry in data:
    try:
        content = json.loads(entry['content'])
        timestamp = entry['time'] / 1000  # ミリ秒を秒に変換
        date = datetime.fromtimestamp(timestamp).strftime('%Y-%m-%d')
        
        daily_data[date].append({
            'co2': content['co2'],
            'temp': content['temp'],
            'humid': content['humid']
        })
    except:
        continue

# 日別サマリーを作成
print("LTE-M CO2センサー用SIM - 7日間データサマリー")
print("=" * 60)
print(f"{'日付':<12} {'CO2(ppm)':<15} {'温度(°C)':<12} {'湿度(%)':<10} {'データ数'}")
print("-" * 60)

for date in sorted(daily_data.keys(), reverse=True)[:7]:
    day_data = daily_data[date]
    if not day_data:
        continue
        
    co2_values = [d['co2'] for d in day_data]
    temp_values = [d['temp'] for d in day_data]
    humid_values = [d['humid'] for d in day_data]
    
    co2_avg = statistics.mean(co2_values)
    co2_min = min(co2_values)
    co2_max = max(co2_values)
    
    temp_avg = statistics.mean(temp_values)
    temp_min = min(temp_values)
    temp_max = max(temp_values)
    
    humid_avg = statistics.mean(humid_values)
    humid_min = min(humid_values)
    humid_max = max(humid_values)
    
    print(f"{date:<12} {co2_min:>4}-{co2_max:<4}({co2_avg:>4.0f}) {temp_min:>4.1f}-{temp_max:<4.1f}({temp_avg:>4.1f}) {humid_min:>4.1f}-{humid_max:<4.1f}({humid_avg:>4.1f}) {len(day_data):>6}")

(みんな大好き)SORACOM Funkが設定されているSIMグループの一覧とかも作れます。

> SORACOM FUNKを使っているSIMグループの一覧と呼出先の情報を一覧で出して

I will run the following command: soracom groups list (using tool: shell)
Purpose: SIMグループの一覧を取得


Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:

> y

~~中略~~

I will run the following command: soracom groups list | jq -r '.[] | select(.configuration.SoracomFunk.enabled == true) | [.groupId, (.tags.name // "無名"), .configuration.SoracomFunk.destination.resourceUrl] | @tsv' (using tool: shell)
Purpose: SORACOM FUNKが有効なグループとLambda関数の情報を抽出


Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:

> y

20970431-da11-49b5-9caf-4a5da1cfd21d	VPG Testing Group	arn:aws:lambda:ap-northeast-1:123456789012:function:cloud9-soracomButtonFunction-soracomButtonFunction-11KEL7KR5BTO3
32c27b07-6915-484d-9e8c-992dac2114d7	GPS Multi-Unit Group	arn:aws:lambda:ap-northeast-1:123456789012:function:soracom-gps-multiUnit-receiver-dev-soracom
33a1dceb-81ea-495a-912e-c8020a2094f8	Notification Test Group	arn:aws:lambda:ap-northeast-1:123456789012:function:funk-button-email:prod
401c976b-6fdc-4d1c-ba0e-e74d994be7c4	LTE-M Button Group for handson	arn:aws:lambda:us-west-2:123456789012:function:SoracomLteMButtonHandsonS-SoracomIotmButtonFunctio-YJkTcQjL8Ldc
4cf3bf65-14ea-4d57-9230-22f9133e1160	LTE-M Button Group  Migrated from LTE-M Button powered by AWS	arn:aws:lambda:us-west-2:123456789012:function:AwsLambdaRecursionDetection-LoopS3FunctionE514A65E-8kjlHXTrXeAl
562d1bcf-9637-44d2-9d73-6696ad6cf351	LTE-M Button Group	arn:aws:lambda:ap-northeast-1:123456789012:function:soracom-iot-button-publisher-dev-index
5de4a333-1b1b-4deb-ab38-278c45c95bc4	LTE-M Button Group to Osaka	arn:aws:lambda:ap-northeast-3:123456789012:function:soracom-iot-button-publisher-dev-index
9144a20c-2d1f-448e-aa98-e42665da3aac	test-20221125	arn:aws:lambda:ap-northeast-1:123456789012:function:AmazonLocationServiceWith-updateDevicePostionD49B0-jhw3wf2wxMcT
ae090201-e518-44e5-8759-15b08ecb1e3c	handson-wada-20210821	arn:aws:lambda:ap-northeast-1:123456789012:function:iot-core-publish
c590d8b0-ee81-434c-a4d6-4d988074a37a	Test	arn:aws:lambda:ap-northeast-1:123456789012:function:funk-button-email:prod
f00ae5f3-f062-4cc3-b516-5e1f360cdbad	IoT Devices Group	arn:aws:lambda:ap-northeast-1:123456789012:function:soracom-funk-sample-python37
 - Completed in 0.528s

> SORACOM FUNKを使用しているSIMグループ一覧

| グループ名 | 呼出先Lambda関数 | 用途 |
|------------|------------------|------|
| VPG Testing Group | cloud9-soracomButtonFunction-soracomButtonFunction-11KEL7KR5BTO3 | ボタンテスト |
| GPS Multi-Unit Group | soracom-gps-multiUnit-receiver-dev-soracom | GPS位置情報処理 |
| Notification Test Group | funk-button-email:prod | メール通知テスト |
| LTE-M Button Group for handson | SoracomLteMButtonHandsonS-SoracomIotmButtonFunctio-YJkTcQjL8Ldc | ハンズオン用 |
| LTE-M Button Group Migrated | AwsLambdaRecursionDetection-LoopS3FunctionE514A65E-8kjlHXTrXeAl | 再帰検出機能 |
| LTE-M Button Group | soracom-iot-button-publisher-dev-index | IoTボタン通知 |
| LTE-M Button Group to Osaka | soracom-iot-button-publisher-dev-index | 大阪リージョン用 |
| test-20221125 | AmazonLocationServiceWith-updateDevicePostionD49B0-jhw3wf2wxMcT | Amazon Location Service |
| handson-wada-20210821 | iot-core-publish | AWS IoT Core連携 |
| Test | funk-button-email:prod | メール通知テスト |
| IoT Devices Group | soracom-funk-sample-python37 | サンプル関数 |

リージョン別分布:
- ap-northeast-1(東京): 7グループ
- ap-northeast-3(大阪): 1グループ  
- us-west-2(オレゴン): 2グループ
- 外部(123456789012): 2グループ

主な用途:
- LTE-Mボタンの通知処理
- GPS位置情報の処理
- メール通知機能
- AWS IoT Coreとの連携
- Amazon Location Serviceとの連携
 ▸ Time: 28s


自然言語でここまで出せるのはいいですね。

まとめ

今回は参照系を中心に試してみました。権限的には更新もできると思うので、なんか試してみます。
認証情報あればできるので、
素のSORACOM CLIやAPIをリクエストするより、楽かなと思ってます。
ちゃんと指示しないと正確な情報が出ないこともあるので、その辺は指示の仕方かなと思いました。

なお、Kiro(Kiro IDE、Kiro CLI)でSORACOM MCP Server使えるような気がするので、これでこれは使ってみようと思います。

おまけ

この操作でKiro CLIのトークンをどれぐらい使ったかは把握してません。悪しからず。

15
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?