本記事はソラコムが提供する「SORACOM公式ブログ」に掲載された「IoT システムの運用自動化を支援するイベントハンドラーに、SIM のステータスに連動するルールとアクションを追加」を再編集したものです。
目次
・SIM のステータスが変更されたらアクションを実行するルールの更新
・SIMの変更前ステータスの指定
・利用開始待ちステータスの追加
・利用中断中へ変更するアクションの追加
・SendMailAction などで使用できる変数の追加
・最後に
みなさまこんにちは、ソラコムエンジニアの中西 (kaz) です。このたび、SORACOM のイベントハンドラー機能に「イベントハンドラーの実行条件(ルール)」「利用中断中のステータスへ変更するアクション」「アクション内で使用できる新たな変数」という3つの機能を追加しました。このブログでは、利用例と共に紹介します。
イベントハンドラー機能は、あらかじめルールを指定しておくとそのルールにマッチした時に指定したアクションを実行するという機能で、概要は以下の通りです。こちらのブログにより詳細な説明がありますので、ご興味のある方はぜひそちらもご覧ください。
※イベントハンドラーとは、データ通信量、SIM のステータス変更や有効期限などを条件に通知やその他アクションを実行できる機能です。例えば、
・SIM の日次通信量が 5 MBを超えたらそれ以上は通信できないようにする。
・SIM が通信を開始して Active になったら、お客様の AWS Lambda を呼び出す
といった設定ができます。
SIM のステータスが変更されたらアクションを実行するルールの更新
SIM の変更前ステータスの指定
SIM のステータス変更ルールは、「SIM のステータスがこのステータスに変更された場合」というように、従来は変更後のステータスを条件として指定できました。具体的には「利用中断中になったらメールを送信する」といった使い方ができました。今回、新たに「SIM のステータスがこのステータスから変更された場合」というように、変更前のステータスも条件として指定できるようになります。
使い方の例を示すため、SORACOM の SIM を製品に組み込んで出荷するケースを考えます。出荷から販売してエンドユーザーが使用開始するまでに数ヶ月掛かるような場合、以下のサイクルが考えられます。
・製品に SIM を組み込む
・製品をテストする(SIM のステータスは準備完了から使用中に変更)
・SIM のステータスを利用開始待ちに設定して製品を出荷する(SIM のステータスは使用中から利用開始待ちに変更)
・エンドユーザーが製品を使用開始する(SIM のステータスは利用開始待ちから使用中に変更)
この時に例えば「エンドユーザーが使用開始したタイミングで AWS Lambda を呼び出す」といったアクションをしたい場合、従来だと「ステータスが使用中になった場合」という条件しか指定できなかったため、製品テストとエンドユーザー使用開始の両方のケースでアクションを実行することになりました。しかし、今回追加された変更前のステータスを指定して「変更前のステータスが利用開始待ちで、かつ変更後のステータスが使用中」とすることで、エンドユーザーが使用開始したタイミングでのみアクションを実行できるようになります。
ちなみに、今回の機能追加前のように今まで通り設定したいという場合は変更前に未設定を指定すれば良いのでご安心ください。この場合は従来通り、「変更前のステータスに関わらず、変更後のステータスが指定した状態になった場合」にアクションを実行します。また、変更前と変更後のステータスは今まで通りそれぞれ${oldStatus}と${newStatus}という変数で取得することができますので、例えばメール本文などに変更前と変更後のステータスを示すこともできますので、必要に応じてご利用ください。
利用開始待ちステータスの追加
変更前と変更後に指定するステータスに「利用開始待ち」を追加しました。サブスクリプションによっては利用開始待ち状態にならないものもありますが、必要に応じてご利用ください。ステータスの詳細については、以下のページをご確認ください。
利用中断中へ変更するアクションの追加
従来より、イベントが発生した時に SIM のステータスを「利用開始待ち」にするアクションはあったのですが、「利用中断中」についても要望がありましたので追加しました。plan-D など一部のサブスクリプションでは、利用中断中になる際や、利用中断中から使用中または休止状態に戻す際に料金が発生します。料金の詳細については以下のページをご確認ください。
SendMailAction などで使用できる変数の追加
イベントハンドラー機能では、メールを送るアクションなどで利用できる変数があり、${operatorId}や${simId}などを指定すると発生したイベントに関する具体的な値が取得できるのですが、今回新たに${coverage}という変数を追加しました。カバレッジによって、以下の値が取得できます。
・日本カバレッジ:jp
・グローバルカバレッジ:g
最後に
今回はお客様のご要望にお応えした機能追加を中心にご紹介しましたがいかがだったでしょうか?イベントハンドラー機能は無料でお使いいただける機能ですので、ぜひご活用いただけますと幸いです。
本機能は国内外のお客様のフィードバックが基となっております。今後も SORACOM はご利用の皆様のフィードバックを受けて機能改善を進めていきますので、こういった機能があったらもっと便利に使えるのにといった要望がありましたらぜひお聞かせください。みなさまの声を楽しみにしております!
この連載の記事
-
第484回
デジタル
AWS re:Invent 2024に見る、IoTの成熟と生成AIとの融合 -
第483回
デジタル
二歳半の子供を持つエンジニアの一日の働き方 -
第482回
デジタル
VPN 対応の産業用 LTE ルーターの価格改定【30%オフ】 -
第481回
デジタル
時間帯に応じたメール通知の構築方法 : SORACOM LTE-M Button と SORACOM Flux の活用 -
第480回
デジタル
SORACOM Flux 料金プランを発表しました -
第479回
デジタル
12/11-13 商業施設・店舗DX展に出展:最新IoTソリューションや事例をご紹介 -
第478回
デジタル
コープさっぽろが、クラウド型カメラ「ソラカメ」を全店舗で導入、現場主導の改善を実現、サーバールームの異常な温度上昇を通知する新規掲載レシピ takuyaのほぼ週刊ソラコム 11/16-11/29 -
第476回
デジタル
WebRTCとMedia over QUIC Transportの性能比較 -
第475回
デジタル
SORACOM Lagoon 3 の [Math] 機能で、複数データを組み合わせた通知の手順 -
第474回
デジタル
SORACOM Flux の AI アクションに Amazon Bedrock – Anthropic Claude 3.5 Haiku を追加、Teltonika RUT240 の価格を改訂 takuyaのほぼ週刊ソラコム 11/02-11/15