変更ログ (2025 Preview)

リリース予定日: 2025年

これらのリリースノートは、Things Cloud リリース2025に関する情報を含んでおり、前回のリリースから実装された新機能、改善、修正などのすべての関連する変更が含まれています。さらに、リリースノートには、非推奨やAPIの変更に関する通知も含まれており、将来的にお客様のご対応を必要とする可能性があります。十分に内容をご確認くださいますようお願い申し上げます。ご不明な点がございましたら Things Cloud Support までお問い合わせください。

注:プレビュー版のため、変更ログ内の一部に公開前の文書へのリンクが含まれます。

以下のタイプの変更が含まれています:

  • 機能 - 一般に利用可能な新機能
  • プレビュー - 公開プレビュー中で、まだ一般に利用可能ではない機能
  • 改善 - 小さな改善
  • 修正 - バグ修正
  • 発表 - 非推奨、削除、または重要なUI変更
  • API変更 - APIにおける破壊的な変更

ver.10.18からの変更内容を記載しています。


標準ブランディングをドコモビジネスに変更

リリース2025において、Things Cloud標準のブランディングのデザインを変更を予定しております。この変更では、UI全体の色合いやロゴの更新を実施します。Things Cloudの機能やUI操作自体への影響はありませんが、UIの色合いやロゴ画像およびロゴの配置に変更が発生します。

  • 新しいブランディングの画面イメージ

    ※ 画面は開発中のものです。実際の画面とは異なる場合があります。

    ログイン画面(新ブランディング)

  • 従来デザインのブランディングファイル提供について

    従来の標準ブランディングのデザインを引き続きご利用したいお客様向けに、旧デザインのブランディングファイルを提供致します。本ブランディングファイルは、従来デザインのままリリース2025仕様に対応したものになります。リリース2025へのバージョンアップ後、こちらのブランディングファイルをテナントに適用いただくことで、従来のデザインのまま引き続きご利用いただけます。ファイルの適用方法は、開発者レポートのロゴや配色を変更する方法をご参照ください。

    以下からダウンロードしてください。
    ※ 従来デザインのブランディングファイル提供は、今回のリリースのみを予定しています。

  • ブランディングのオプションに関する追加/変更

    強化されたブランディングエディタを参照してください。

  • カスタムブランディングをご利用されている場合

    バージョンアップに伴いブランディングファイルが一部更新されます。 ブランディングをカスタマイズしているお客様は、リリース2025へのバージョンアップ後、リリース2025用のブランディングファイルを再適用いただく必要があります。開発者レポートの ロゴや配色を変更する方法の手順を参考にカスタマイズ設定を追加し、テナントに再適用いただくようお願いいたします。リリース2025用のブランディングファイルは、開発者レポートからダウンロードできます。新しいブランディングファイルは、ver.10.18では一部が正常に動作しないため、バージョンアップ後の適用を推奨いたします。

    ※10.18仕様のブランディングを引き続き利用することや、リリース2025仕様のブランディングをバージョンアップ前にあらかじめ適用することは可能ですが、UIの一部表示に不具合が生じる可能性がありますので、ご注意ください。

    ver.10.18とリリース2025におけるブランディングファイルの主な差分は以下の通りです。

    1. options.jsonの変更 ・ロゴのファイル名およびサイズ設定に関する複数パラメーターを変更
      ・ナビゲーターのアプリ名およびアイコンに関するパラメーターを削除
      ・フォント設定に関するパラメーターを削除
      ・右ドロワーに関するパラメーターを追加

    2. ui-assets 内の既存ファイル変更
      ・styles.css
      ・ロゴ画像

    3. ui-assets 内の既存ファイル削除
      ・docPane.css
      ・複数のフォントファイル
      ・一部のsvg形式ファイル

Usage Statisticsページに2つの新しい列が追加されました。

プラットフォームの使用状況に関するより詳細な洞察を提供するために、親テナントのための 使用統計 ページが「作成されたオペレーション」と「更新されたオペレーション」の2つの新しい列で拡張されました。これらの列は、それぞれ作成されたオペレーションと更新されたオペレーションの数を示します。

この変更により、使用統計リクエストカウンタの粒度が向上し、プラットフォームの活動に対するより良い分析と理解が可能になります。既存の使用統計データおよび機能は、この追加によって影響を受けません。

カスタムアプリケーションは、ユーザープロファイルを更新しても意図せずにクリアされなくなりました。

ユーザープロファイルの他のフィールドが更新されたときに、ユーザープロファイル内のカスタムアプリケーションがクリアされる問題を修正しました。

シリーズ内の欠損測定値に対して常にnull値を返す

欠落しているメジャーメントは、シリーズエンドポイントvalues配列内にnullプレースホルダーで示されます。
以前は、欠落したメジャーメントが配列の末尾にある場合、これらのnull値はレスポンスの一部として省略されることがあり、混乱を招く可能性がありました。
現在、欠落したメジャーメントに対しては常にnull値が存在します。

ローカルスマートルールの作成および更新のパフォーマンスの向上

以前は、スマートルールを作成または更新するためのリクエスト時間は、有効または無効にされたソースの数によって増加していました。
そのため、多くのデバイスを含むグループでローカルスマートルールを作成する際には、 子アセットにも有効化チェックボックスを選択しないことが推奨されていました。

この変更により、リクエストのパフォーマンスが向上し、スマートルールを有効または無効なソースのリストから単一のデバイスIDを追加または削除して更新するのが非常に速くなりました。

さらに、最上位グループの直接の子が多数存在する場合、ローカルスマートルールの作成が非常に速くなりました。
より深いインベントリ階層の場合、階層の最初のレベルのみが迅速に検証されるため、グループに階層の深い位置に数百の子孫があり、それらすべてがenabledSourcesとして選択されている場合、ローカルスマートルールの作成にはまだ長い時間がかかる可能性があります。

使用統計にオペレーションリクエストカウンタを追加しました

すべてのRESTエンドポイントに新しいプロパティoperationsCreatedCountoperationsUpdateCountが追加され、使用統計のための詳細なリクエストカウンタが返されるようになります。
最初の実装ステップでは、Things Cloudプラットフォームはこれらのプロパティを0の値で返します。
将来の実装では、RESTリクエストおよびMQTTメッセージに反応してオペレーションを作成および更新する際のカウントロジックが追加される予定です。

スマートグループ作成ダイアログにユーザードキュメントへのリンクを追加しました。

スマートグループを作成する際にユーザーをサポートするため、スマートグループ作成ダイアログにスマートグループに関するユーザードキュメントへのリンクが追加されました。これにより、ユーザーは役立つ情報に素早くアクセスできるようになります。

アラーム詳細ビューにカスタムタブを追加するためのフックサービスを追加しました。

アラームの詳細表示をカスタマイズするための柔軟性を高めるために、カスタムタブでアラーム詳細を拡張するフックサービスが追加され、インラインタブコンポーネントが導入されました。これにより、開発者はアラームに対してさらにコンテキスト特有の情報を表示したり、サードパーティのデータやビジュアライゼーションをビューに簡単に統合したりできます。既存のアラーム詳細機能は変更されず、カスタムタブは詳細ビューに追加オプションとして表示されます。

ダッシュボードで自動更新をグローバルに有効にできるようになりました。

以前は、オートリフレッシュはアラームページ、アラームウィジェット、マップウィジェットなど、アプリケーションの特定の部分でのみ利用可能でした。この変更により、オートリフレッシュは今後、任意のダッシュボードでグローバルに有効にできるようになります。これは、対応するウィジェットでこの機能が有効になっている場合、その表示されるデータが設定された共通の間隔で自動的に更新されることを意味します。これにより、手動で更新したり、各ウィジェットの間隔を別々に設定する必要がなくなります。この変更の影響は、ユーザーが追加のアクションを取らなくても最新の情報を常に見ることができるため、ユーザーエクスペリエンスが向上することです。

デバイスタイププロパティを持たないデバイスのためのダッシュボードテンプレート設定の表示について

以前は、デバイスにタイププロパティが割り当てられていない場合、ダッシュボード設定のダッシュボードテンプレートセクションが隠されていました。現在、この場合、セクションは表示されますが、ダッシュボードテンプレートはデバイスにタイプが追加されたときのみ利用可能であるという情報が提供されます。さらに、ユーザーをデバイス管理アプリケーションのデバイスビューに移動させるボタンが提供されています。

専用アプリケーションからの翻訳が読み込まれました。

アプリケーションのメンテナンス性を向上させるために、翻訳は専用のアプリケーションからロードされるようになりました。以前は、翻訳がコードベースの異なる部分に散在しており、一貫して管理および更新することが難しい状況でした。この変更により、すべての翻訳が1か所に集約され、翻訳の追加、更新、維持のプロセスが簡素化されました。この変更はエンドユーザーやアプリケーションの機能に直接的な影響を与えるものではありませんが、よりクリーンで整理されたアプリケーションインフラストラクチャに貢献します。

強化されたデータポイントテーブルウィジェット

UIをAngularに移行する継続的な近代化の一環として、データポイントテーブルウィジェットがAngularJSからAngularに移行されました。この変更により、ウィジェットのパフォーマンス、保守性、そしてアプリケーションの他の部分との一貫性が向上しました。ウィジェットは、以下の強化された機能を提供します:

  • データポイントの可視化のための小数点以下の精度設定
  • 異なる画面サイズやデバイスでの応答性の向上
  • 設定可能な間隔に基づく自動更新

すべての既存の機能は変更されておらず、現在のユーザーにとってシームレスな移行が保証されています。

新しいデータポイントエクスポートコンポーネント

ユーザーがThings Cloudからデータポイントを簡単にエクスポートできるように、新しい汎用データポイントエクスポートセレクタが実装されました。この新しいコンポーネントは、ユーザーが時間範囲、エクスポートタイプ、集計(エクスポートタイプに基づく)、およびファイル形式を選択することを可能にします。エクスポートされるデータポイントレコードのサイズに応じて、エクスポートされたファイルは生成され、準備が整うと直接ダウンロードされるか、メールされます。データポイントエクスポートコンポーネントにより、ユーザーが必要なデバイスデータをThings Cloudから希望する形式で取得することが非常に簡単になります。

一括オペレーションのスケジューリングが正確な遅延で正常に動作するようになりました。

Things Cloud プラットフォームでは、一括オペレーションにより複数のデバイスに対して同時にアクションを実行することができます。しかし、ミリ秒単位での遅延を伴うこれらのオペレーションのスケジュール設定は期待通りに動作していませんでした。この問題は現在解決されています。この修正により、一括オペレーションはミリ秒で指定された正確な遅延でスケジュールできるようになり、デバイス管理タスクの信頼性と効率が向上しました。

未翻訳の文字列でコンテキストインジケータを実行時に非表示にする

過去には、アプリケーションに表示される未翻訳の文字列に、追加のコンテキスト指標が含まれることがあり、これはエンドユーザーにとって混乱を招き、意図されたものではありませんでした。この変更により、未翻訳の文字列のコンテキスト指標は実行時に非表示になります。これにより、文字列がまだ翻訳されていない場合のユーザーエクスペリエンスが向上し、エンドユーザーは自分にとって関係のない技術的な詳細を見ることがなくなります。

SmartRESTテンプレート名を通じたHTMLインジェクション攻撃の防止

シミュレータのセキュリティ脆弱性が修正され、SmartRESTテンプレート名を通じたHTMLインジェクション攻撃を防止しました。以前は、シミュレータの指示に入力されたテンプレート名が生のHTMLとして表示されており、スクリプトをインジェクトすることが可能でした。この問題は、テンプレート名を機能的なHTMLではなく、平文として表示することで軽減されました。

SSO認証プロセスにおける外部IAMサーバーによって提供されるIDトークンのサポート

外部IAMサーバーによって提供されるIDトークンのサポートが追加され、シングルサインオン(SSO)を通じて認証プロセスで使用できるようになりました。以前は、Things Cloudプラットフォームではアクセストークンのみがサポートされていました。現在、管理者は設定を通じて、外部サーバーから取得されたユーザーデータ(名、姓、電話番号、メールアドレス、およびロール)がアクセストークンまたはIDトークンのいずれからロードされるべきかを決定できます。

サブテナント作成リクエストには、ドメインが親テナントのサブドメインである必要があります。

テナントのドメインは、マネジメントテナントまたは親テナントのいずれかの下で作成された場合、親テナントのサブドメインである必要があります。
以前は、マネジメントテナントの下で作成されたテナントのドメインは、親テナントに関連しないカスタムドメインを持つことができました。

テナントの詳細におけるカスタムプロパティタブの改善

テナント詳細のカスタムプロパティタブが改善され、不要な情報が新しい制限タブに移動され、よりクリーンで一貫したインターフェースが提供されました。

テナント詳細の新しい「制限」タブ

リソース制限とテナントに設定されたクォータのより良い概要を提供するために、新しい 制限 タブがテナントの詳細ページに追加されました。このタブでは、テナントのためにデバイス、リクエスト、およびキューサイズの最大数を設定できます。この変更により、テナント管理者はサブテナントのリソース制限を簡単に表示および管理できるようになりました。

詳細は 制限の設定 を参照してください。

デバイスが登録時に追加されると、グループのlastUpdatedフラグメントが正しく更新される

各デバイス登録リクエストには、登録が成功した際にデバイスが割り当てられるグループに関する情報が含まれています。
以前は、グループの「lastUpdated」フラグメントが正しく更新されていませんでした。この変更により、新しいデバイスが正常に追加された際に「lastUpdated」フラグメントが現在の日付に更新されるようになります。

メジャーメントシリーズエンドポイントは、シリーズにドットが1つ以上含まれている場合にエラーを返します

フラグメントおよびシリーズに使用されるプロパティ名には、空白や特殊文字を含めることができません。
詳細はこちら

以前は、/measurement/measurements/series エンドポイントは、複数のドットを含む series クエリパラメータを受け付けていましたが、空のレスポンスが返されていました。

この変更により、series クエリパラメータが複数のドットを含む場合、エンドポイントは 422 エラーを返すようになります。

メジャーメントシリーズは、値なしでは作成できなくなりました。

以前は、値なしでメジャーメントシリーズを作成することが可能でした。この問題は修正され、値が必須となりました。現在、メジャーメントを作成する際には値を提供する必要があります。

最新のメジャーメント値テナントオプションがワイルドカード文字で動作するようになりました。

以前は、最新のメジャーメント値を有効にするために使用されるテナントオプションがワイルドカード(*)文字で機能していませんでした。この変更により、ワイルドカード文字を使用してすべてのシリーズの最新メジャーメントを有効にできるようになります:

PUT /tenant/options/measurement.series.latestvalue

{
  "*":""
}

管理テナントでのタイムシリーズサポートの有効化は不可能になりました

マネジメントテナントでの時系列サポートの有効化は、テナントオプションの継承によってサブテナントでの時系列が有効化されるのを防ぐため不可能となりました。

データグリッドグループ列のドロップダウンのレイアウトの問題を修正しました。

データグリッドコンポーネントは、グループ列のドロップダウンにレイアウトの問題がありました。これらは、ドロップダウンのスクロール高さを下部フッターに対して調整し、ユーザーインターフェース要素のコントラストを高めるためにドロップダウンに影を追加することで解決されました。

一括オペレーションのスケジューリングが正確な遅延で正常に機能するようになりました

Things Cloudプラットフォームでは、一括オペレーションにより複数のデバイスに対して同時にアクションを実行できます。しかし、これらのオペレーションをミリ秒単位で遅延を設定してスケジュールすることは期待通りに機能していませんでした。この問題は現在解決されました。この修正により、一括オペレーションはミリ秒で指定された正確な遅延でスケジュールできるようになり、デバイス管理タスクの信頼性と効率性が向上しました。

「表示方式」機能のラベルがヘッダー内の他の要素と重ならなくなりました

Things Cloudのユーザーインターフェースでは、ヘッダーの「表示形式」機能のラベルが他のヘッダー要素と重なっており、読み取りや選択が難しい状況でした。この問題は現在解決されています。「表示形式」のラベルが適切に配置され、ヘッダーと重ならなくなり、すべてのユーザーにとって明確でアクセスしやすいユーザーインターフェースが確保されています。

アプリケーションの設定でダッシュボードマネージャーを有効または無効にするオプションが追加されました

コックピットアプリケーションでは、アプリケーション設定ページでダッシュボードマネージャーを無効または有効にすることが可能になりました。デフォルトでは、ダッシュボードマネージャーは有効になっています。

アラームの概要に日付範囲フィルターが追加されました

アラームページの使いやすさを向上させるために、日時範囲によるアラームフィルタリングが実装されました。ユーザーは開始日と終了日を指定することでアラームをフィルタリングでき、表示されるアラームを特定の期間に絞り込むことができます。この変更により、表示中のアラームに対するより詳細な制御が提供され、ユーザーが望む時間枠内の関連アラームに集中しやすくなり、アラーム管理体験が強化されます。

ウィジェットの設定でデフォルトの日付選択オプションが変更されました

「データポイントグラフ」、「データポイントテーブル」、および「イベントリスト」ウィジェットの設定において、日付選択フィールドのデフォルトオプションが「ウィジェット構成」から「ダッシュボードの時間範囲」に変更されました。

無効なブランディングバリアント名に対する改善された検証エラー

以前は、UIまたはAPIを介して無効なブランディングバリアント名を指定すると、結果として表示される検証エラーが不明確で、問題を特定するのが困難でした。この変更により、プラットフォームは無効なブランディングバリアント名が入力されたときに、より意味のある具体的な検証エラーメッセージを提供するようになりました。この改善により、ユーザーは指定したブランディングバリアント名に関する問題を迅速に特定し、修正できるため、設定プロセスでの時間と労力の節約になります。

ダッシュボード管理者が別のプラグインに抽出されました

今後のバージョンでは、ダッシュボード管理モジュールがコックピットアプリケーションから抽出され、別のプラグインとして追加されます。

この変更は、ダッシュボード管理モジュールが @c8y/ngx-components/context-dashboard の一部ではなくなり、@c8y/ngx-components/dashboard-manager の一部になるため、破壊的変更となる可能性があります。

この変更は、コックピットアプリケーションのレイアウトやユーザーエクスペリエンスには影響せず、新機能も追加されません。 副次的な効果として、ダッシュボード管理モジュールがこれからは遅延ロードされるため(つまり、メインアプリケーションがロードされた後のみ)、パフォーマンスの向上が見られるかもしれません。

マイクロサービスSDKがSpring Boot 3.3に更新されました。

これは、Microservice SDKをSpring Boot 3に移行することに関する最近の発表/マイクロサービスSDK向けの今後のSpring Bootバージョンアップデートのフォローアップです。

バージョン 10.20.155.0 から、Microservice SDKはSpring Boot 3.3.xを使用しており、これは最近発表された依存関係の更新が終わったことを示しています。Spring Bootに加えて、ほとんどの他の依存関係も更新され、これらの依存関係にあったすべてのセキュリティ脆弱性が排除されました。

変更の量のため、SDKを使用するすべてのアプリケーションのアップグレードプロセスを支援するために、中間バージョンも公開しました。

バージョン 10.20.150.1 は、追加のサーブレットを構成するアプリケーションのための、前に発表されたバージョン 10.20.150.0 の修正を含んでいます。このバージョンを使用してアプリケーションをSpring Boot 3.0に更新してください。詳細は、Spring Boot 3.0 マイグレーションガイドを参照してください。

バージョン 10.20.151.1 はSpring Boot 3.1に基づいており、一度に行う変更の数を制限するための中間ステップとして推奨されます。詳細は、Spring Boot 3.1 マイグレーションガイドを参照してください。

バージョン 10.20.153.1 はSpring Boot 3.2に基づいており、もう一つの推奨中間ステップです。詳細は、Spring Boot 3.2 マイグレーションガイドを参照してください。

最後に、Spring Boot 3.3に基づいてバージョン 10.20.155.0 へのアップグレードの際は、Spring Boot 3.3 マイグレーションガイドを参照してください。

グローバルロールを削除または変更する際に、すべてのユーザーをログアウトするオプション

グローバルロールを削除または変更する際に、管理者はそのロールに割り当てられているすべてのユーザーをログアウトさせる新しいオプションを使用することで、変更が即座に反映されることを確認できるようになりました。

外部認証およびプラットフォーム権限のエラーメッセージの強化された表示

以前は、外部認証サーバーからのエラーがユーザーに表示されないことがあり、認証が失敗しても目に見える形での通知がないために混乱を招いていました。この更新により、外部認証サーバーに起因するすべてのエラーが、一貫して専用のエラーダイアログに表示されるようになりました。さらに、プラットフォーム内の権限不足に起因するエラーも、ログインページで明確かつユーザーフレンドリーな形で表示されるようになりました。

Cumulocity Codexにフィルターチップの例を追加しました。

フィルターチップをアプリケーションで使用する方法について、開発者により多くのガイダンスを提供するために、フィルターチップのコーデックス例が追加されました。これらの例は、さまざまなシナリオでフィルターチップを実装する方法を示し、ベストプラクティスを強調します。これらの新しいコーデックス例を使うことで、開発者はフィルターチップを自分のアプリケーションでより簡単に理解し活用できるようになり、より直感的で使いやすいフィルタリング体験を作成できるようになります。

データグリッドのグループカラムドロップダウンのレイアウトの問題を修正しました。

データグリッドコンポーネントは、グループ列のドロップダウンにレイアウトの問題がありました。これらは、ドロップダウンのスクロール高さを下部のフッターに関連付けて調整し、ユーザーインターフェース要素間のコントラストを高めるためにドロップダウンに影を追加することで解決されました。

予期しない状況が検出された場合、ファームウェアアップデートプロセスを終了します。

以前は、デバイスがファームウェア更新中に予期しない状態や結果を報告した場合、プロセスは単に有効な状態を待機していました。現在では、LWM2Mデバイスを構成して、予期しない状況が検出された場合にファームウェア更新プロセスを失敗させることができます。

接続プロバイダーフォームのトリムされた値

無効なヘッダー値によって引き起こされるサーバーエラーを防ぐために、先頭または末尾のスペースなどの禁止された文字を含む値について、接続 タブの接続プロバイダーフォームでは、入力値から空白が自動的にトリムされるようになりました。

Cumulocity CodexのhookServicesに関するドキュメントと例を追加しました。

デベロッパーが自分のアプリケーションやプラグインで hookServices を利用できるように、文書と例が Things Cloud Codex に追加されました。この文書では hookServices API の概要が提供され、利用ケースが提案されています。また、外部から注入されたサービスを介して共通の状態を共有するウィジェットプラグインのコードサンプルも含まれています。これらの新しいリソースが利用可能になることで、デベロッパーはプロジェクトに hookServices を統合しやすくなり、必要に応じて機能を拡張・カスタマイズできるようになるでしょう。

ナビゲータでトップレベルノードを構成する際のアセットの重複エントリを防止しました

コックピットアプリケーションのアプリケーション設定ページで、トップレベルノードを編集するとナビゲータ内にアセットの重複エントリが作成される問題が修正されました。現在、ナビゲータは冗長なメニュー項目を作成することなく適切に更新されます。

ルートグループに対して正しいアイコンが表示されます。

以前、ルートグループに対して誤ったデバイスアイコンが表示されており、ユーザーがグループ階層内での現在の位置について混乱する可能性がありました。この変更により、正しいアイコンが表示され、ユーザーに対してグループ構造のルートレベルにいることを明確に示す視覚的な指標が提供されるようになりました。

シングルサインオンログインのエラー情報の改善

以前は、SSOを介してログイン時にエラーが発生すると、ブラウザにプレーンなHTMLエラーテキストが表示されていました。
この変更により、エラーテキストを標準のUIエラーメッセージとして表示できるオプションの ユーザーインターフェースアプリケーションへのリダイレクト 構成が追加されました。
新しい構成パラメータは任意であり、現在のSSO構成には影響しません。
このオプションを使用するには、認証サーバーの「有効なリダイレクトURI」を “<tenant_domain>/apps/*” に更新する必要があります。詳細については、カスタムテンプレート構成を参照してください。

デバイスプロファイルのリストが現在グリッドとして表示されています。

デバイスプロファイルビューはデータグリッドに移行されました。データグリッドは、以前のリストビューと比較して、デバイスプロファイルアイテムを表示および管理するためのより現代的でユーザーフレンドリーな方法を提供します。データグリッドは、特定のアイテムを見つけやすくし、作業しやすくするために、ソート、フィルタリング、およびページネーションなどの強化された機能を提供します。

CountdownIntervalコンポーネントのCodex例を追加しました

UIコンポーネントのドキュメントを改善するために、CountdownIntervalコンポーネントのためのCodexの例が追加されました。この例は、アプリケーション内でCountdownIntervalコンポーネントを使用する方法を示し、その機能と設定オプションを紹介しています。開発者はこの例を参考にして、CountdownIntervalコンポーネントをプロジェクトに統合する方法をよりよく理解できるようになり、アプリケーション内でのカウントダウン機能の実装が容易になります。

アラームおよびイベントセレクターの入力バリデーションが追加されました

Things Cloud UIのアラームとイベントセレクターは、以前は無効な入力を受け付けていました。この修正により、アラームとイベントセレクターに入力検証が追加され、有効な入力のみが受け付けられるようになります。この変更により、ユーザーエクスペリエンスが向上し、アラームとイベントセレクターを使用する際の潜在的なエラーや予期しない動作を防ぐことができます。

コックピットのイラストを更新する

継続的な改善の一環として、コックピットユーザーインターフェースのさまざまなセクションで使用されるイラストが更新されました。新しいイラストは新鮮で現代的な印象を与えながら、意図されたメッセージや概念を効果的に伝えます。この変更は、コックピットインターフェースの視覚的魅力とユーザー体験を向上させ、機能や既存のユーザーワークフローには影響を与えません。

すべてのデバイスに対して表示されるデバイスダッシュボード

デバイスタイプにスペースが含まれている場合、デバイスコンテキストダッシュボードの取得は期待通りに機能しませんでした。その結果、ダッシュボードがコックピットアプリケーション内のデバイスの初期ビューとしてデフォルトであるため、そのようなデバイスを表示することが不可能でした。この問題は修正され、デバイスダッシュボードは常に表示されるようになりました。

マップウィジェットの中心座標入力は一貫して機能します。

「マップウィジェット」の設定において、ユーザーがテキスト入力を通じて提供した中心座標が正しく設定されていませんでした。この変更により、ユーザーはマップをドラッグするだけでなく、テキスト入力を通じても正しい座標を設定できるようになります。

ルートグループ用の正しいアイコンが表示されました。

以前は、ルートグループに対して誤ったデバイスアイコンが表示されており、ユーザーがグループ階層内の現在の位置について混乱する可能性がありました。この変更により、正しいアイコンが表示されるようになり、ユーザーにグループ構造のルートレベルにいることを明確に視覚的に示すことができるようになりました。

情報ゲージは、ウィンドウサイズが変わると適切にサイズが変更されます。

ダッシュボードの情報ゲージは、ブラウザウィンドウのサイズを変更すると正しくリサイズされず、ユーザーエクスペリエンスが悪化していました。この問題は修正され、情報ゲージはブラウザウィンドウのサイズが変更されると利用可能なスペースに適切にリサイズされるようになりました。この改善により、情報ゲージを含むダッシュボードは、ユーザーの画面サイズに関係なく、視覚的に魅力的で読みやすく保たれます。

Apama DockerイメージがAmazon ECRに移動中

ApamaのDockerイメージは現在public.ecr.aws/apamaで入手可能であり、https://gallery.ecr.aws/apama/で確認できます。以前はsoftwareag/で入手可能で、https://hub.docker.com/u/softwareagで確認できました。

Apamaイメージを使用するDockerfile内では、FROM softwareag/<IMAGE>:<TAG>FROM public.ecr.aws/apama/<IMAGE>:<TAG>に変更する必要があります。

イメージ内のApamaの位置は/opt/softwareagから/opt/cumulocityに移動しました。既存のイメージは変更されていません。

テナントオプション client.numClients に負の値を設定すると、デフォルト値の 1 が使用されるようになりました。

もし client.numClients テナントオプションがゼロ未満に設定されている場合、Apama-ctrl マイクロサービスは Cumulocity IoT プラットフォームと通信できませんでした。現在では、警告がログに記録され、マイクロサービスが通信できるようにデフォルト値の 1 が設定されます。

分析ビルダーのモデルから除外された遅延入力イベントの新しいアラーム

以前は、入力イベントがアナリティクスビルダーモデルによってドロップされた際に、再注文バッファの期間を超える遅延のために警告メッセージがログに記録されていました。警告メッセージに加えて、現在は入力イベントがドロップされた際にアラームが発生するようになりました。このアラームは、ログメッセージを表示するだけに頼るよりも改善された可視性を提供します。これは、親テナントでログを表示できない場合があるマルチテナントのストリーミング分析マイクロサービスにとって特に便利です。アラームの詳細については、分析ビルダーのドロップイベントを参照してください。

大量のリクエストがフラッシュを待機している際に、デッドロックの可能性を修正しました。

client.numClients テナントオプションを使用して多くのクライアント接続を行う際、大量のリクエストがフラッシュされるのを待っているときに潜在的なデッドロックが発生していました。これが修正されました。

マイクロサービスSDKがSpring Boot 3.0に更新されました

これは、マイクロサービスSDKをSpring Boot 3に移行することに関する最近の発表/マイクロサービスSDK向けの今後のSpring Bootバージョンアップデートのフォローアップです。

バージョン 10.20.150.0 から、マイクロサービスSDKはSpring Boot 3.0.xを使用しています。SDKのそのバージョン以降にアップグレードする際には、Spring Boot 3.0移行ガイドに従ってアプリケーションをアップグレードしてください。移行プロセスを簡単にするために、まずJDK 17でバージョン 10.20.134.0 に更新し、その後Spring Securityの設定変更を含むバージョン 10.20.140.0 にアップグレードすることをお勧めします。もしまだ行っていなければ。

シリーズ内の欠損メジャーメントに対して常にnull値を返します

欠測のメジャーメントは、シリーズエンドポイントvalues配列におけるnullプレースホルダーで示されます。
以前は、欠測のメジャーメントが配列の最後にある場合、これらのnull値はレスポンスの一部として省略されることがあり、混乱を招く可能性がありました。
現在、欠測のメジャーメントに対しては常にnull値が存在します。

「フィールドバス デバイス」ウィジェット内のレジスターとコイルの値は適切に変更できます。

「フィールドバスデバイス」ウィジェットで、設定ボタンをクリックしてレジスタやコイルを変更することが正しく機能しませんでした。この問題は修正され、値を更新する操作が意図したとおりにトリガーされるようになります。

デバイス認証情報ページでのユーザーの有効化または無効化は、信頼性があります。

デバイス認証情報 ページで、ユーザーのアクティベーションが正しく機能しませんでした。この問題は修正され、ユーザーのアクティベーションおよび非アクティベーションが信頼性を持って機能するようになりました。

Angular 18へのアップグレード

Things Cloudプラットフォームを最新のウェブ技術に保つために、Things CloudはAngular 18にアップグレードされました。このアップグレードにより、Angularフレームワークからの最新の機能、パフォーマンスの改善、およびバグ修正がThings Cloudプラットフォームに組み込まれます。Angular 18へのアップグレードは、ユーザーに対してほぼ透明に行われ、ユーザーインターフェースや既存の機能に目に見える変更はありません。ただし、以前のバージョンのThings Cloud用に開発されたカスタムウィジェットやプラグインは、Angular 18との互換性を確保するために更新が必要になる場合があります。

SCADAウィジェット内のスクリプトタグは保持されます

SCADAウィジェットは、コードのサニタイズオプションが「なし」に設定されている場合、スクリプトタグを保持するようになりました。

アラームに対するアクセス権がないユーザーのために、アラームのリフレッシュコントロールを無効にします。

アラームにアクセスできないユーザーには、自動更新コントロールと手動更新ボタンが無効になりました。

アラームの概要に追加されたアラームタイプのフィルタリング

アラームの概要の使いやすさを向上させるために、特定のアラームタイプのフィルタリング機能が追加されました。ユーザーは新しいフィルタオプションを使用して、概要に表示したいアラームタイプを選択できるようになりました。これにより、ユーザーは自分にとって最も関連性の高いアラームに集中できるようになり、重要な問題をタイムリーに特定し対応することが容易になります。

ウィジェットアクションドロップダウンは、ダッシュボードを保存した後、正しく閉じます。

以前は、ダッシュボード内のウィジェットを編集/削除するためのドロップダウンを開き、ダッシュボードを保存すると、ウィジェットの編集/削除ドロップダウンが開いたままになっていました。これにより、ユーザーが誤って開いたドロップダウンと対話することで意図しない変更が行われる可能性がありました。この変更により、ダッシュボードを保存した後、ウィジェットのアクションドロップダウンは自動的に閉じるようになりました。

ウィジェット設定に型情報を追加しました

ウィジェットを構成する際により明確性を提供し、検証を改善するために、ウィジェット構成にタイプ情報が追加されました。以前は、ウィジェット構成にはタイプ情報が含まれていなかったため、混乱や誤設定を引き起こす可能性がありました。この変更により、各構成プロパティは、文字列、数値、またはBooleanなどの期待されるタイプを指定するようになりました。

ダッシュボード設定内の「ナビゲータ内の位置」フィールドの名前を変更しました

より明確にするために、ダッシュボード設定のナビゲータ内の位置フィールドはタブ内の位置に名前が変更されました。

デバイス名がスマートルールタブに切り替えた際に正しく表示されます。

コックピットアプリケーションで、グループ内のデバイスのスマートルールタブに切り替える際、ページタイトルにデバイス名が表示されていませんでした。この問題は修正され、デバイス名が正しく表示されるようになりました。

ブランディングエディタにメッセージバナーが追加されました

ユーザーエクスペリエンスをより柔軟でカスタマイズ可能にするために、新しいメッセージバナーオプションがブランディングエディタに追加されました。この機能により、管理者はブランディングされたアプリケーション内でカスタムメッセージや発表を作成して表示することができます。メッセージバナーは、重要な更新、メンテナンススケジュール、またはその他の関連情報についてユーザーに通知するために使用できます。この機能は、プラットフォームのコミュニケーション能力を強化し、管理者が追加のツールや作業回避策を使用せずに、ユーザーに重要なメッセージを効果的に伝えることを可能にします。

情報ゲージはウィンドウサイズが変更されたときに適切にサイズを変更します

ダッシュボード内の情報ゲージは、ブラウザウィンドウのサイズを変更した際に正しくリサイズされず、ユーザー体験が悪化していました。この問題は修正され、情報ゲージはブラウザウィンドウがリサイズされると、利用可能なスペースに合わせて適切にリサイズされるようになりました。この変更により、すべてのユーザーにとって情報ゲージを含むダッシュボードの使いやすさと外観が向上しました。

更新されたブランドカラーとロゴ

Things Cloud UIの見た目を近代化するための継続的な取り組みの一環として、ブランディングカラーとロゴが更新され、現在のデザイントレンドに合わせられました。例えば、ブランドロゴはナビゲータの下部に移動され、ユーザーがナビゲーション要素に集中できるようになり、アプリアイコンとの視覚的競合を軽減し、スペースの利用効率が最適化されました。この変更により、Things Cloud UI全体で新しい視覚的外観が提供されますが、既存の機能やユーザーワークフローには影響を与えません。しかし、いくつかのデザイントークンが更新または削除されたため、適用されているカスタムブランディングを見直す必要があるかもしれません。さらに、リンクの色はもはやブランディングカラーとは関連していないため、ブランディングリンクカラーが必要な場合は更新する必要があります。

非推奨のILabelsインターフェースを削除する

非推奨のILabelsインターフェースはWeb SDKから削除されました。その代わりに、ModalLabelsインターフェースが使用されます。

高度な機能を備えた拡張セレクトコンポーネント

新しいセレクトコンポーネントが導入され、ユーザーエクスペリエンスと機能が向上しました。このアップデートには、開発者が対応する必要がある重要な変更が含まれています。

主な機能:

  • 検索機能
  • マルチセレクトオプション
  • チップベースの選択表示
  • フルキーボードサポート
重要
新しいコンポーネントのインターフェースは以前のバージョンと互換性がありません。c8y-selectコンポーネントを使用している既存の実装は更新が必要です。

必要なアクション: 開発者は次のいずれかのオプションを選択する必要があります:

  1. 既存のc8y-selectコンポーネントを新しいインターフェースに移行する
  2. 現在の機能を維持するためにセレクタの名前をc8y-legacy-selectに変更する

監査ログページにおける時間フィルタリングに関する情報の改善

監査ログ ページでは、時間情報が左側の「Times」列(サーバー時間)および監査ログカード内(デバイス時間)で提供されています。情報ポップアップが改善され、監査ログカードがデバイス時間でフィルタリングされていることをユーザーに認識させるようになりました。このデバイス時間はサーバー時間とは異なる場合があります。

デバイス管理のタイトルは、すべてのアプリケーションタイトルと同様にタイトルケースを使用しています。

デバイス管理アプリケーションのタイトルは、可読性と一貫性を向上させるために、センテンスケース(Device management)ではなく、タイトルケース(Device Management)を使用するようになりました。エンティティの機能は変わらず、タイトルの大文字と小文字の形式だけが変更されました。

選択したアイテムIDは現在、一括アクションコントロールに渡されます。

以前は、一括アクションコントロールが選択されたアイテムのIDを受け取らなかったため、選択されたアイテムのサブセットに基づいて一括アクションを条件付きで表示することが不可能でした。この変更により、選択されたアイテムのIDが一括アクションコントロールの showIf 関数に渡されるようになりました。

項目をタイプアヘッドリストから選択したとき、フィールドが更新されました。

タイプアヘッドコンポーネントは、ユーザーが入力する際にリストからアイテムを迅速に見つけて選択できるようにします。以前は、ユーザーがタイプアヘッドリストからアイテムを選択しても、関連するフィールドが選択された値で更新されませんでした。現在では、ユーザーがリストからアイテムを選択すると、関連するフィールドが即座に選択された値で更新されます。

displayProperty でJSONパスを使用している際のTypeaheadコントロールに関する修正

以前、タイプアヘッドコントロールのdisplayPropertyでJSONパスを使用している際に、自由な入力を許可しない(allowFreeEntries = false)バリデーションが正しく機能しておらず、アイテムを親エンティティに割り当てる必要がある場合に孤立したエントリが作成されるなどの予期しない動作が発生する可能性がありました。この問題は現在修正されました。この変更により、フォーム内のタイプアヘッドコントロールの信頼性と使いやすさが向上しました。

Microservice SDKをSpring Boot 3にアップデートする準備をする

最近の発表/マイクロサービスSDK向けの今後のSpring Bootバージョンアップデートについてのフォローアップです。これはマイクロサービスSDKをSpring Boot 3に移行することに関するものです。

このプロセスの第二段階として、バージョン 10.20.140.0 から、マイクロサービスSDKはSpring Security 5.8を使用するようになりました。この変更により、マイクロサービスSDK内でSpring Security 6.0への移行を行う準備が整いました。これについてはこの移行ガイドを参照してください。マイクロサービスSDKのすべてのユーザーには、SDKの更新されたバージョンを使用してアプリケーションを更新する際に、あわせてそのガイドに従うことを推奨します。

MethodSecurityExpressionHandler構成の変更に従いこちらに記載されているように、以前はカスタムSecurityExpressionRoot拡張を使用して構成されていたcom.cumulocity.microservice.security.service.SecurityExpressionServiceによって提供されるメソッドは、現在はc8yAuthzという独立したBean定義を介して使用可能です。これにより、たとえば、式isCurrentTenantManagement()はもはや解決されず、代わりにBean名をプレフィックスとして@c8yAuthz.isCurrentTenantManagement()と指定する必要があります。これにより、必要に応じて顧客は独自のセキュリティ式拡張を簡単に追加できるようになります。

ブックマークのタイトルは、設定されている場合はglobalTitleを使用します。

過去には、ブックマークのタイトルを生成する際に、globalTitleプロパティは考慮されていませんでした。この変更により、globalTitleが指定されている場合、それがデフォルトの動作の代わりにブックマークのタイトルとして使用されます。これにより、ブックマークの命名方法に対するより多くの制御が可能になり、ブックマークのタイトルを特定のニーズに応じて設定できるようになり、ユーザーエクスペリエンスが向上します。

ブックマーク編集ビューで別の削除ボタンを押したときに、削除ポップアップが正しく閉じるようになりました

ブックマーク編集ビューでは、削除確認ポップアップが既に開いている状態で削除ボタンをクリックすると、予期しない動作が発生し、ポップアップが正しく閉じない問題がありました。この問題は解決されました。別の削除ボタンをクリックすると、削除確認ポップアップは常に正しく閉じるようになり、ユーザーは中断することなくスムーズにワークフローを続けることができます。この変更により、削除確認を操作する際の全体的なユーザーエクスペリエンスと一貫性が向上しました。

ライブラリ"@c8y/ngx-components"に対するKarmaテストの問題を修正しました。

@c8y/ngx-componentsライブラリのバージョン1020.26.0では、このライブラリの利用者がKarmaテストを行うことが不可能になる問題が発生しました。この問題は現在対処されました。

ローカルスマートルールを複製する際に、グローバルアセット検索を許可します。

ローカルスマートルールの複製を作成する際、階層外のアセットを選択することが可能になりました。選択したアセットのコンテキスト内にルールの複製が作成されます。

情報ゲージウィジェットは、デバイスタイプのダッシュボードをサポートするようになりました。

以前は、「情報ゲージ」ウィジェットはデバイスタイプのダッシュボードをサポートしておらず、これらのダッシュボードに依存するユーザーにとっての利用可能性が制限されていました。この変更により、「情報ゲージ」ウィジェットはデバイスタイプのダッシュボードを完全にサポートするように更新されました。この強化により、ユーザーはデバイスタイプのダッシュボード設定内で「情報ゲージ」ウィジェットを効果的に利用でき、より包括的で柔軟な監視体験を提供します。

新規作成したダッシュボードを開く際に編集モードを有効にする

これまでは、新しいダッシュボードを作成すると表示モードで開き、ダッシュボードの編集を開始するには Edit ボタンをクリックする必要がありました。この変更により、新しく作成されたダッシュボードは直接編集モードで開くようになりました。これにより、ユーザーはすぐに新しいダッシュボードの編集と設定を開始することができ、クリックの手間が省け、ユーザーエクスペリエンスがより直感的になります。

分析ビルダーの Pulse ブロックのオプション名とドキュメントが改善されました

ユーザーエクスペリエンスを向上させるために、モードパラメータのOn value changeオプションがPulseブロックで**On value change (excluding to false)**に名称変更されました。また、ブロックリファレンスが更新され、ブール入力の場合、入力がtrueに変更されたときのみパルスが送信されることが明記されています。

インベントリロールまたはグローバルロールを削除する際のエラーメッセージを修正します。

在庫ロールまたはグローバルロールの削除中にエラーが発生した場合、メッセージは常にそのロールがユーザーに割り当てられているため削除できないと表示されていました。この修正により、エラーメッセージは今後、問題の実際の原因を反映するようになります。

グループのlastUpdatedフラグメントは、デバイスが登録時に追加されると正しく更新されます。

各デバイスの登録リクエストには、登録が成功した際にデバイスが割り当てられるグループに関する情報が含まれています。以前は、グループの「lastUpdated」フラグメントが正しく更新されていませんでした。この変更により、新しいデバイスが正常に追加されたときに「lastUpdated」フラグメントが現在の日付に更新されるようになります。

グローバルスマートルールページ以外では、グローバルスマートルールの編集および複製オプションが無効です

以前は、任意のコンテキスト(デバイス、グループ、またはアプリケーション)からグローバルスマートルールを編集することができました。この変更により、グローバルスマートルールの編集や複製はグローバルスマートルールページからのみ可能になりました。

テナントAPIセキュリティの改善

テナントAPIの認証情報オプションに関するセキュリティが向上しました。

監査ログページにおける時間フィルタリングに関する情報の改善

監査ログ ページでは、左側の「時間」列に時間情報が提供されており(サーバー時間)、監査ログカード内には(デバイス時間)が表示されています。情報ポップアップが改善され、監査ログカードがデバイス時間によってフィルタリングされていることをユーザーに知らせるようになりました。

データグリッドの削除が最初のページにリダイレクトしないよう修正されました

以前、データグリッドの最初のページにないエントリを削除すると、ユーザーは予期せずデータグリッドの最初のページにリダイレクトされていました。この動作は変更されました。エントリを削除した後、ユーザーは削除前にいたページに留まることになります。この変更は、削除が可能なアプリケーションの全てのデータグリッドに影響します。

デバイス詳細のアセットプロパティウィジェットは、すべての関連プロパティを正しく表示します。

デバイス詳細の情報タブにある「アセットプロパティ」ウィジェットは、期待通りに動作せず、いくつかのケースで不正確または欠落した情報を表示していました。この問題は解決され、「アセットプロパティ」ウィジェットは現在、デバイスアセットのすべての関連プロパティを正しく表示します。デフォルトのプロパティは5つあり - ID、名前、タイプ、最終更新日時、作成日時です。

子デバイスタブからの子デバイスの削除を有効化しました

デバイス管理アプリケーションでは、子デバイスを子デバイスタブから削除することができませんでした。その代わり、ユーザーは削除のためにデバイスの詳細に移動する必要がありました。この変更により、子デバイスは今後子デバイスタブから直接削除できるようになります。

構成リポジトリがデータグリッドに移行されました

構成リポジトリはデータグリッドに移行されました。データグリッドは、以前のリストビューと比較して、構成アイテムを表示および管理するためのよりモダンでユーザーフレンドリーな方法を提供します。データグリッドは、特定の構成アイテムを見つけて作業するのを容易にするために、ソート、フィルタリング、およびページネーションなどの強化された機能を提供します。

angular-gettext-toolsライブラリのアップグレードにより、脆弱性を修正しました。

angular-gettext-toolsライブラリは、Things Cloud UIのソースコードから翻訳可能な文字列を抽出するために使用されます。angular-gettext-toolsnth-checkおよびcheerio依存関係にセキュリティ脆弱性が発見されました。これらの脆弱性に対処するために、angular-gettext-toolsは影響を受けた依存関係の修正バージョンが含まれた新しいバージョンにアップグレードされました。この変更がThings Cloud UIの機能に影響を与えることはないと予想されています。

ウィジェット内のグループ作成ダイアログをグループページへのリダイレクトに置き換えました。

ウィジェットから新しいグループを作成するためのAngularJSベースのダイアログは置き換えられました。ユーザーがウィジェットから新しいグループを追加したい場合、今後はグループページにリダイレクトされ、グループを追加ダイアログが表示されます。

公開オプションの翻訳は、プラグインのPOファイルからの翻訳よりも優先されます。

以前は、プラグインのPOファイル(UI翻訳に使用されるファイル形式)からの翻訳が、公開オプションを介して追加された翻訳よりも優先されていました。これにより、不整合が生じる可能性がありました。この変更により、公開オプションを介して追加された翻訳が、プラグインのPOファイルからの翻訳よりも優先されるようになります。公開オプションの翻訳と矛盾するプラグインのPOファイル内の既存の翻訳はオーバーライドされます。これにより、一貫性があり予測可能な翻訳動作が確保されます。

情報ゲージウィジェットは、デバイスタイプダッシュボードをサポートしました。

以前は、情報ゲージウィジェットがデバイスタイプダッシュボードをサポートしておらず、これらのダッシュボードに依存するユーザーの使い勝手が制限されていました。この変更により、情報ゲージウィジェットはデバイスタイプダッシュボードを完全にサポートするように更新されました。この拡張により、ユーザーはデバイスタイプダッシュボードのセットアップ内で情報ゲージウィジェットを効果的に利用できるようになり、より包括的で柔軟なモニタリング体験を提供します。

異なるコンテキストパスにクローンされたアプリケーション用の自己スコーププラグインをサポートします。

以前、アプリケーションを異なるコンテキストパスにクローンする際、そのアプリケーション内の自己スコーププラグインは読み込まれませんでした。この変更により、自己スコーププラグインは期待通りに読み込まれるようになりました。

Extract Property ブロックを使用して、名前にピリオドが含まれるプロパティを抽出します。

Extract Property ブロックは、分析ビルダーにおいて新しいオプションのチェックボックス プロパティパス内のセパレーターを無視 を含むようになりました。これにより、プロパティ名にピリオド (.) のようなセパレーターを持つプロパティを抽出することができます。

例えば、プロパティパス内のセパレーターを無視 チェックボックスが選択されていて、プロパティパス パラメータが location.city と指定されている場合、location.city というプロパティ名が入力値から抽出されます。

互換性のため、以前の動作はデフォルトのままとなっており、新しいチェックボックスはデフォルトでは選択されていません。

非推奨のJWTログインモードの削除

非推奨のJWT認証がThings Cloudから削除されました。
この変更は、あなたの組織がThings Cloudの初期バージョンのシングルサインオン(SSO)を使用していた場合のみ影響を与えます。
詳細については、以前の発表/非推奨のJWTログインモードの削除を参照してください。

Angular 18 のアップグレードとリブランド

将来のバージョンでは、Angularをバージョン18に更新し、基盤のブランディングも更新します。この更新では改善と新機能がもたらされますが、既存の実装に影響を与える可能性のある破壊的な変更が導入されることもあります。この新しいバージョンに更新する際は、特にロゴの位置が変更されているため、ブランディングを確認してください。

Angular 18への円滑な移行を確保し、実装に適応するために、これらの変更が行われる際にアップグレードに関するドキュメントを提供します。このドキュメントは、変更点を把握し、コードベースを適切に更新するのに役立ちます。

マイクロサービスSDKをJava 17にアップデートする

これは、Microservice SDKをSpring Boot 3に移行する最近の発表/マイクロサービスSDK向けの今後のSpring Bootバージョンアップデートに関するフォローアップです。
このプロセスの第一歩として、10.20.134.0バージョンから、Java SDKとMicroservice SDKは、ソースとランタイムの両方でJava 17を使用しています。
これは、Microservice SDKを使用するための最低要件がJava 17であることを意味します。

ログイン画面とTFA設定画面のボタンを調整しました。

ボタンおよびコントロールのサイズが調整され、ログイン画面およびユーザー設定内のTFA設定画面に適合しました。

マイクロサービスSDK向けの今後のSpring Bootバージョンアップデート

マイクロサービスSDKで使用されるSpring Bootのバージョンのアップデートをお知らせできることを嬉しく思います。新しいバージョンはSpring Boot 3.3.3で、いくつかのサードパーティライブラリやフレームワークの更新も含まれます。これらの必須変更には以下が含まれます:

  • 必要なJavaの最小バージョン: 17 (現在はJava 8)

  • Jakarta EE 9+ ベースライン

  • Spring Security: 6.3.3

  • Spring Framework: 6.1.12 (現在は5.3.24)

  • HTTP Client: 5.3.1

影響: これらの各更新は、あなたのマイクロサービスに影響を与える可能性があり、コードの変更が必要になるかもしれません。

展開: アップデートは、2024年第4四半期から始まる継続的デプロイメント(CD)バージョンおよび2025年の次年度リリースのバージョンで利用可能になります。変更を含むCDバージョンの確認については、別途発表される予定です。

移行リソース: 変更に関する支援のために、以下のガイドを参照してください:

プラットフォームのサービスレベル契約

プラットフォームサービスレベル契約は、Things Cloudがあなたのテナントに対してThings Cloudプラットフォームサービスをどのように管理するか、また、あなたが知っておくべき可能な制限や責任について、より正確な定義を提供しています。

アラーム入力およびイベント入力ブロックは、アラームおよびイベントの更新に誤ったソース時間を使用しなくなりました。

以前は、アラーム入力イベント入力ブロックは、タイムスタンプを無視するチェックボックスが選択されていない場合に、更新操作の正しいソース時間を使用していませんでした。その代わりに、ブロックの作成時間が不適切に使用されて入力イベントをスケジュールしていました。これは修正され、モデルによってアラームとイベントの更新がもはや見逃されることはありません。タイムスタンプを無視するチェックボックスが選択されていない場合、入力ブロックは更新操作の場合に入力イベントをスケジュールするためにブロックの最後の更新時間を使用します。

ファームウェアリストがグリッドビューに移行されました。

ユーザーエクスペリエンスを向上させ、一貫性を確保するために、ファームウェアのリストはシンプルなリストビューからグリッドビューに移行されました。

プラグインリストに正しく表示された利用可能なプラグイン

以前は、アプリケーションプラグインはアプリケーションの詳細のプラグインタブに表示されていませんでした。この変更により、すべてのアプリケーションプラグインがプラグインタブに正しくリストされ、利用可能なすべてのプラグインの完全な概要が提供されるようになります。

モジュールなしのプラグインがサポートされるようになりました

プラグインの開発と展開を簡素化するために、モジュールなしのプラグインのサポートが追加されました。この変更により、プラグインは機能するためにモジュールを必要とせず、プラグインの実装と展開がより容易になります。これにより、プラグイン開発者はモジュールのオーバーヘッドなしでプラグインを作成できるようになり、ユーザーは簡単にインストールおよび使用できるさまざまなプラグインの恩恵を受けることができます。

ユーザーは現在、サブテナントのアクティブフィルターを確実に確認できるようになりました。

一部の状況で、サブテナント ページでアクティブフィルターを確認する際にエラーが発生し、ユーザーがフィルターを適切に表示および管理できなくなることがありました。この問題は解決されました。ユーザーは現在、エラーに遭遇することなくサブテナントのアクティブフィルターを信頼して確認できるようになりました。

強化されたブランディングエディタ

ブランディングエディタは、ユーザーがアプリケーション全体で独自で一貫したブランディングを作成できるようにし、全体的なユーザーエクスペリエンスを向上させ、アプリケーションの外観を企業のデザインガイドラインに合わせやすくします。

私たちはブランディングエディタに大きな改善を加え、複数のアプリケーション全体でブランドアイデンティティを管理するためのより堅牢でユーザーフレンドリーな体験を提供しています。

新機能:

  • 個々のアプリケーションに対して独自のブランド設定を構成
  • 異なるブランド設定を作成、管理、簡単に切り替え
  • UIから直接ブランディングJSONオブジェクトを編集し、カスタムCSSを追加
  • ブランドのバリエーションをインポート/エクスポート
  • プライバシーポリシーを更新するときに自動的にcookieの同意を無効化
  • 明るいテーマと暗いテーマの選択を実装
  • プライマリブランドカラーに基づいて色のシェードを生成し、微調整オプションを追加

機能改善:

  • ブランドアイデンティティ管理のためのより直感的なインターフェース
  • ブランディング要素のカスタマイズと適用における柔軟性の向上

JSONボディで生成されるトークンの数は現在制限されています

OAI-Secureトークン管理を強化するために、JSONボディ内で生成されるトークンの数は、セッション設定で構成された最大値に制限されます。

カウントクエリとインベントリロールのパフォーマンスの回帰を修正する

Things Cloud プラットフォームは、インベントリロールベースのアクセス制御を使用している場合や、withTotalPages または withTotalElements のようなクエリパラメーターを介してカウントを行う場合に、同時リクエストの数が多いときにのみ観察されるパフォーマンスの後退に直面しました。この問題は修正され、パフォーマンスは正常に戻りました。

テナントAPIのセキュリティ強化

テナントAPIの認証情報オプションのセキュリティが向上しました。

測定APIの性能向上

GET /measurement/measurements エンドポイントの valueFragmentTypevalueFragmentSeries の両方でフィルタリングした際のパフォーマンスが改善されました。

管理オブジェクト内のアラームカウントは、データベース内のアラームカウントと同期しています。

管理対象オブジェクトのアラームカウントがデータベース内の実際のアラームカウントと同期しない可能性がありました。この問題は修正され、管理対象オブジェクト内のアラームカウントは現在、データベース内のアラームカウントと同期しています。

拡張機能ページにおいて、プラグインが正しいタイプ「公式」として表示されるようになりました。

エコシステムメニューの拡張機能ページでは、公式プラグインを強調表示するためにリボンが使用されています。このリボンは、公式であるにもかかわらず、特定のプラグインには表示されませんでした。この問題は現在修正されました。リボンは拡張機能ページのすべての公式プラグインに対して表示されます。

ストリーミング分析アプリケーションにパンくずリストを追加しました

ユーザーエクスペリエンスを向上させ、デフォルトの Things Cloud アプリケーション(例えば、コックピット)との一貫性を保つために、ストリーミング分析 アプリケーションにパンくずリストが追加されました。パンくずリストを使用して、階層を簡単に上にナビゲートできます。

分析ビルダーのモデルとEPLアプリの名前を変更する

ユーザーエクスペリエンスを向上させるために、モデルエディターおよびEPLエディターにおけるモデルやEPLアプリの名前変更リンクがモデル設定およびアプリ設定に改名されました。以前は、これらのリンクはモデルやアプリの名前を表示していましたが、現在はエディターページの上部にこれらの名前が表示されるようになっています。

JSONボディ内で生成されるトークンの数が制限されました。

OAI-Secureトークン管理を強化するために、JSONボディ内で生成されるトークンの数は、セッション設定で構成された最大値に制限されます。

ダッシュボードは、適切な権限を持つユーザーのみが削除できます。

以前は、ユーザーが必要な権限なしでダッシュボードを削除できていました。この問題は修正されました。現在、削除ボタンは適切な権限を持つユーザーのみが有効になっており、アクセス権を正確に反映しています。

データポイントテンプレートで単位を変更すると、関連する情報ゲージウィジェットに正しく反映されるようになりました。

過去には、データポイントテンプレートの単位を変更する際、その変更がこのデータポイントを使用している 情報ゲージ ウィジェットに反映されていませんでした。この不一致の動作は現在修正されました。今では、データポイントテンプレートで単位が更新されると、この変更は該当する 情報ゲージ ウィジェットにも即座に表示されるようになります。

パブリックオプションの翻訳は、プラグインPOファイルからの翻訳よりも優先されるようになりました

以前は、プラグインPOファイル(UI翻訳に使用されるファイル形式)からの翻訳が公開オプションを介して追加された翻訳よりも優先されていたため、一貫性のない結果が生じる可能性がありました。この変更により、公開オプションを介して追加された翻訳がプラグインPOファイルからの翻訳よりも高い優先度を持つようになります。公開オプションの翻訳と競合するプラグインPOファイル内の既存の翻訳はオーバーライドされます。これにより、一貫性があり予測可能な翻訳動作が確保されます。

TOTP設定中に提供された二要素認証用のQRコードが正しく表示されるようになりました

TOTP設定中に提供された二要素認証用のQRコードが正しく表示されませんでした。この問題は修正されました。QRコードは現在正しく表示されており、ユーザーは認証アプリケーションでスキャンすることができます。

グローバルロールのアプリケーションアクセスリストにはアプリケーションのみが表示されます。

以前は、アプリケーションアクセスリストにはグローバルロールのアプリケーションとマイクロサービスの両方が表示されていました。これが変更され、アプリケーションアクセスリストにはアプリケーションのみが表示されるようになりました。

Things Cloudのスキーマは、スタンドアロンモードを無効にすることでAngularスタンドアロンプロジェクトを処理できるようになりました。

以前、スタンドアロンフラグがtrueに設定された状態で初期化されたAngularプロジェクトにThings Cloudスキーマティクスを追加することが失敗していました。この問題は解決されました。現在、スタンドアロンAngularプロジェクトにThings Cloudスキーマティクスを統合する際、スタンドアロンフラグは自動的にfalseに設定されます。スタンドアロンプロジェクトへの完全なサポートは将来のアップデートで実施される予定です。この暫定的な解決策により、開発者は初期設定がスタンドアロンのプロジェクトでThings Cloudスキーマティクスを使用することができますが、スタンドアロン機能は無効化されています。

新しいウィジェットは、スクロールが有効な場合に適切にレンダリングされます。

ページでスクロールが有効になっているときに、新しいウィジェットが正しくレンダリングされない場合がありました。この問題は解決され、スクロールがオンのときにウィジェットは今後一貫して期待通りにレンダリングされるようになります。

SSO設定で利用可能なアプリケーションの一覧は、現在テナントで利用可能なアプリケーションに制限されています

SSOを通じてログインするユーザーがアクセスできるように構成できるアプリケーションのリストは、テナントに利用可能なアプリケーションのみを含むように絞り込まれました。

カウントクエリとインベントリロールに関するパフォーマンスのリグレッションを修正しました。

Things Cloud プラットフォームは、インベントリのロールベースのアクセス制御を使用している場合や、withTotalPageswithTotalElements のようなクエリパラメータを介してカウントを実行する際に、同時リクエストの数が多い場合にのみ観察されるパフォーマンスの回帰に直面していました。この問題は修正され、パフォーマンスは正常に戻りました。

設定リポジトリは現在、設定タイプを正しく保存します。

設定リポジトリでは、新しい設定スナップショットを追加する際に設定タイプが正しく保存されず、予期しない動作を引き起こしていました。この変更により、設定スナップショットを保存する際に設定タイプが正しく永続化されるようになりました。

プライベートスマートルールを作成または編集する際のブロックデバイス検索

過去には、プライベートスマートルールを作成または編集する際にデバイスを検索することが可能でしたが、これにより不正なデバイスの割り当てが発生する可能性がありました。この変更により、プライベートスマートルールを作成または編集する際にデバイスの検索がブロックされるようになりました。これにより、明示的に選択されたデバイスのみがスマートルールに割り当てられ、不意のデバイスの割り当てを防ぎ、プラットフォームにおけるプライベートスマートルールの正確さと信頼性が向上します。

新しいウィジェットはスクロールが有効な場合に適切に描画されます

一部のケースでは、ページでスクロールが有効になっているときに新しいウィジェットが正しくレンダリングされないことがありました。この問題は解決され、ウィジェットはスクロールがオンになっているときに期待通りに一貫してレンダリングされるようになりました。

シェルコンポーネントは空白と改行を保持します。

シェルコンポーネントは、コードスニペットやコマンドライン出力を表示するためによく使用されます。以前は、シェルコンポーネントが空白や改行を削除していたため、フォーマットが不正確だったり、読みにくいコンテンツを引き起こす可能性がありました。この変更により、シェルコンポーネントはすべての空白と改行文字を保持するようになり、コードスニペットやコマンドライン出力が正しくフォーマットされるようになりました。これにより、ユーザーにとってシェルコンポーネントで表示されるコンテンツの可読性が向上します。

デバイスオーナーの切り替えが変更をキャンセルした後も誤った状態のままとならないよう修正

デバイスの詳細の情報タブでデバイスオーナーを変更しようとしてアクションをキャンセルした際、トグルコントロールは以前は不正な状態のままとなり、変更が適用されたかのように表示されていました。この修正により、デバイスオーナーの変更をキャンセルすると、トグルコントロールが正しく元の状態に戻るようになり、現在のデバイスオーナーの割り当てに関する混乱を避けることができます。

デバイスの詳細のログタブでレイアウトの問題を修正しました。

デバイス詳細のログタブにはいくつかのレイアウトの問題がありました。これらの問題は、ラベルを適切に整列させ、日付と時刻のピッカーの幅を調整し、ログの種類ドロップダウンが開いているときに適切な背景の分離を追加することで修正されました。

構成リポジトリは現在、構成タイプを正しく保存します。

設定リポジトリでは、新しい設定スナップショットを追加する際に設定タイプが正しく保存されず、予期しない動作が発生しました。この変更により、設定スナップショットを保存するときに設定タイプが正しく保持されるようになりました。

アラームは、スマートルールによって重大度が変化しても、引き続き表示されます

場合によっては、アラームの重大度がスマートルールによって変更された際に、アラームが表示されなくなることがありました。これを修正し、アラームの重大度が変更されてもUIに表示されるようになりました。これにより、ユーザーはスマートルールによってトリガーされたアラームの更新に関係なく、常にすべてのアクティブまたはクリアされたアラームを確認できるようになります。

アラーム詳細ボタンおよびアラームリストインジケーターのためのフックサービスを追加しました。

アラームリストおよび詳細ビューのカスタマイズに柔軟性を提供するために、アラーム詳細ボタンおよびアラームリストインジケーターのためのフックサービスが追加されました。この変更により、各フックサービスインターフェースを実装することで、これらのUI要素のレンダリングおよび動作を変更できるようになります。既存のアラームリストおよび詳細ビューはこの変更の影響を受けず、明示的に新しいフックサービスを介してカスタマイズしない限り、以前と同様に動作し続けます。

スマートルールピンのドロップダウンがヘッダーからカードボディに移動しました

スマートルールの設定時のユーザーエクスペリエンスを向上させるために、ピンのドロップダウンがスマートルールのヘッダーからカードのボディに移動されました。この変更により、ユーザーはピンのドロップダウンを見つけやすく、操作しやすくなりました。現在、ピンのドロップダウンはスマートルール設定内のより目立つ直感的な位置に配置されています。

スマートルール「測定値が欠落している場合にアラームを作成」は、遅延なしにアラームを送信します。

「測定の欠落時にアラームを作成する」スマートルールは、現在スマートルールに設定された時間帯でアラームを生成します。以前は、アラームが約1分の遅延で生成されていました。

ユーザーがデバイスダッシュボードをグループに、またはグループダッシュボードをデバイスに貼り付けようとする貼り付けようとする動作の制限

以前は、ユーザーはデバイスダッシュボードをコピーしてグループに貼り付けたり、グループダッシュボードをコピーしてデバイスに貼り付けたりすることができましたが、その結果エラーが発生していました。これを防ぐために、デバイスとグループのダッシュボード間の貼り付けが制限されるようになり、ユーザーがそれを試みると情報メッセージが表示されるようになります。

ユーザーのアプリケーションアクセス設定ページが正しく読み込まれます。

ユーザーのアプリケーションアクセス設定のページの読み込み中にエラーが発生しました。エラーは解決されました。

次回ログイン時のパスワードリセットオプションは、「パスワードリセットリンクをメールで送信」が選択解除されている場合、デフォルトとなります

以前は、新しいユーザーはパスワードを設定するためのリンクが含まれたメールを受け取っていました。現在、チェックボックスの パスワードリセットリンクをメールとして送信 がオフになると、次回のログイン時にユーザーはパスワードをリセット オプションがデフォルトで選択されます。これは、新しいユーザーが最初のログイン時にパスワードを変更する必要があることを意味します。

デバイス詳細のログタブのレイアウトの問題を修正しました。

デバイス詳細のログタブにはいくつかのレイアウトの問題がありました。これらの問題は、ラベルの適切な配置、日付と時刻ピッカーの幅の調整、ログの種類ドロップダウンが開いているときの適切な背景の分離を追加することで修正されました。

分析ビルダーのExpressionブロックを使用して、各値タイプを文字列タイプと連結します。

分析ビルダーのExpressionブロックが更新され、EPLに似て文字列と非文字列の値を連結できるようになりました。これは、例えば次のような式を指定したい場合に便利です:“現在の温度は " + input1 + " 度 Celsius”

分析ビルダーのカウンターブロックに対して最大値を指定する

分析ビルダーCounterブロックが更新され、各カウンターに対して最大値を独立して設定できるようになりました。この変更は、分析ビルダーで周期的な動作を作成するのが難しく煩雑であったため、カウント全般に対する制御を向上させるために行われました。
この目的のために以下の新しいパラメータが利用可能です:

  • 最大カウント(入力フィールド)
  • ループカウント(チェックボックス)
  • 最大同数(入力フィールド)
  • ループ同数(チェックボックス)

該当するカウンターはループすることができます。対応するチェックボックスの設定に応じて、カウンターはその対応する出力ポート(CountまたはNumber Same)を1にリセットし、最大値に達した後の最初の入力をカウントするか、最大値に達した時点でカウントを停止し、その後手動でリセットする必要があります。
互換性のため、以前の動作はデフォルトとして残ります。
Reset入力ポートは両方のカウンターをリセットすることに注意してください。これが問題である場合は、各カウンターに対して別のCounterブロックを使用する必要があります。
新しいパラメータに関する詳細情報については、Counterブロックの説明を参照してください。

永久に失敗したオフロードの自動停止

オフロードパイプラインは、無効なオフロード設定や誤って構成されたデータレイクなどの理由で永続的に失敗することがあります。今後のリリースでは、Things Cloud DataHub は永続的に失敗しているオフロードパイプラインを自動的に停止します。

デバイス証明書認証のサポートを追加しました。

Things Cloud は、デバイス証明書のみを送信できるデバイスが Things Cloud に接続できるように、中間証明書から完全な証明書チェーンを推測する機能をサポートしました。詳しくは デバイス認証 を参照してください。

SmartREST テンプレートコレクションのパースが、レスポンステンプレートで失敗しなくなりました。

デバイスシミュレータは、レスポンステンプレートを含むSmartRESTテンプレートコレクションを使用するように構成されていましたが、データ作成を妨げる内部問題が発生しました。この問題は、レスポンステンプレートを適切に解析することで解決され、処理が中断されることはなくなりました。

リポジトリデバイスタブは、アクティブなオペレーションのみを表示します。

以前は、デバイス詳細のリポジトリデバイスタブに、現在インストールされている項目とは異なる完了済みのオペレーションが表示されていました。この変更により、リポジトリデバイスタブは、ビュー内にアクティブなオペレーションのみを表示するように更新されました。

「データポイント」ウィジェットのサイズ変更を固定しました

過去には、ダッシュボードの「データポイント」ウィジェットをリサイズすると、時々予期しない動作やレイアウトの問題が発生することがありました。この変更により、「データポイント」ウィジェットのリサイズが修正され、ダッシュボードのレイアウト内で正しいサイズと位置が維持されるようになります。

AngularJSおよびangular-schema-formの依存関係を更新しました。

アプリケーションを最新の状態かつ安全に保つための継続的なメンテナンスの一環として、AngularJSangular-schema-form の依存関係が最新の互換性のあるバージョンに更新されました。この変更により、アプリケーションはサポートされている依存関係のバージョンを維持し、これらのリリースにおけるバグ修正や改善を享受することができます。更新により、ユーザー向けの変更や既存の機能との互換性の問題が発生することはないと予想されています。

アラームリストウィジェットの設定は、子アラームの表示または非表示をサポートするようになりました。

アラームリストウィジェットは、ダッシュボードやThings Cloud UIの他の場所でアラームを表示するために使用されます。以前は、子アラームが常に表示されており、多くのアラームを監視しているユーザーにとって情報過多を引き起こす可能性がありました。この変更により、ウィジェットの設定に新しいトグルが追加され、アラームリスト内の子アラームを表示または非表示にすることができます。これにより、ユーザーはウィジェットを特定のユースケースに合わせてカスタマイズする柔軟性が高まり、関連するトップレベルのアラームに集中しやすくなります。

カスタムアプリケーション用の新しいアラームおよびイベントセレクターが利用可能です。

アプリケーション開発者がカスタムアプリケーションでアラームやイベントをより簡単に選択できるように、新しい再利用可能なアラームとイベントセレクターコンポーネントが導入されました。詳細については、Things Cloud Codexを参照してください。

コックピットアプリケーションはプラグインに分割されています

コックピットアプリケーションはさらにプラグインに分割されました。これにより、管理者はコーディングの努力をせずにコックピットアプリケーションを自分のニーズに合わせて調整できます。彼らは特定のプラグインを簡単に削除でき、それによってコックピットアプリケーションに含めたくない特定の機能を取り除くことができます。以下のプラグインが現在利用可能です:

  • コックピットウィジェット:コックピットアプリケーションで使用されるangularウィジェット。
  • コックピットアラーム:コックピットアプリケーションのアラーム機能。
  • センサーフォン:スマートフォンをプラットフォームに接続するためのウィザード。
  • 子デバイス:デバイスの子のリストビュー。
  • アセットナビゲータ:“グループ"ナビゲーションエントリで、アセット階層をナビゲートできる。
  • データポイントライブラリ:データポイントの特定の機能を定義するためのもの。
  • ブックマーク:ビューをブックマークするためのもの。
  • ロケーション:デバイスやアセットの位置を表示するためのもの。
  • 検索:アセットを検索するためのもの。
  • レポート:ナビゲータ内のレポートリストとレポート項目。

マーカーのポップアップが常に表示されるように地図をパンします。

マップコンポーネントでは、マーカーのポップアップが開かれたときに、時々マップの表示エリア外に位置し、ユーザーがポップアップの内容を閲覧するのが難しいことがありました。この変更により、マップは現在、開かれたマーカーのポップアップの位置に自動的にパンし、常にマップビューポート内で完全に表示されるようになりました。これにより、マーカーのポップアップと対話する際のユーザーエクスペリエンスが向上し、関連情報が一貫してアクセス可能かつ読みやすくなりました。

ナビゲータの非表示オプションがコックピットアプリケーションで機能するようになりました。

コックピットアプリケーションは、左側のナビゲーターメニューを隠すことができるhideNavigator設定オプションを適切にサポートしていませんでした。この問題は修正され、アプリディスクリプタでhideNavigatorをtrueに設定すると、コックピットアプリケーション内でナビゲーターメニューが正しく隠されるようになりました。この変更により、異なるアプリケーション間でのhideNavigatorオプションの一貫性が向上しました。

ノーコンフリクトを追加することでLeafletのバージョンの衝突を避ける

一部のシナリオでは、Things Cloudとカスタムウィジェットで使用されるLeafletライブラリの異なるバージョンが衝突し、予期しない動作やエラーを引き起こす可能性があります。これに対処するために、Things CloudのLeaflet統合にnoConflictモードが追加されました。この変更により、カスタムウィジェットは、Things CloudのLeafletバージョンに干渉することなく、自身のLeafletバージョンを使用できるようになりました。これにより、Things Cloudの組み込みの地理空間機能とともにカスタムウィジェットでLeafletを使用する際の信頼性と互換性が向上します。

ブランディングエディタが再び確実に動作します。

場合によっては、Things Cloud プラットフォームのブランディングエディタが期待通りに動作せず、ユーザーはブランディングの編集を試みる際に問題を経験していました。この問題は現在解決され、ユーザーは再び信頼性を持ってブランディングエディタを使用して、Things Cloud の外観と感触をカスタマイズできるようになりました。

マイクロサービス名のバリデーション

2025年Q1から、Things Cloudはカスタムマイクロサービスデプロイメントに対してnameおよびcontext-pathマニフェストフィールドの命名制限を適用します。UIまたはREST APIを介してマイクロサービスをアップロードすることで、その正確性を確認できます。これが成功すれば、あなたの設定は正しいです。nameおよびcontext-pathフィールドの詳細については、マイクロサービスマニフェスト > 設定を参照してください。

アプリケーションを読み込む際に、欠落または不正確なタイトルを修正しました。

特定の状況下で、UIのアプリケーションタイトルが正しく表示されない場合がありました。この問題は解決され、ユーザーは常に正しいアプリケーションタイトルを見ることができるようになりました。

Cumulocity Codexの国際化に関するセクションを更新しました。

国際化に関するドキュメントを改善するために、Things Cloud Codexの「国際化」セクションが更新されました。これらの変更により、アプリケーションにおける翻訳とローカリゼーションを処理する方法に関するより詳細な情報とガイダンスが提供されます。これは、複数の言語でアプリケーションを利用可能にしたい開発者に影響を与え、国際化のベストプラクティスを理解し実装するためのより良いリソースを提供します。

ウィジェットのタイトルとアクションは、オーバーレイおよび非表示の外観設定に合わせて調整

ウィジェットのタイトルとアクションボタンの表示が、オーバーレイおよび隠されたウィジェットの外観設定に合わせて最適化されました。以前は、これらの要素が常に表示されており、ウィジェットの編集モードが無効になっていると混乱を招く可能性がありました。この更新により、アクションボタンはウィジェット設定でオーバーレイまたは隠された外観が選択され、ウィジェットの編集モードが有効な時のみ表示されます。

デバイスユーザーのパスワードを明示的に設定する機能を削除する

セキュリティを改善するために、ユーザー管理者はデバイスユーザーのパスワードを明示的に設定できなくなりました。この変更により、管理者アカウントが侵害された場合にすべてのデバイスユーザーにアクセスできる攻撃者を防ぎます。デバイスのパスワードを失った場合は、デバイスを再登録する必要があります。

繰り返しアラームの監査ログは、最後のアラーム更新の日付で作成されます。

リピーティングアラームの監査ログは、アラーム作成日を使用していたため、監査ログに過去の日付が表示されていました。この問題は修正され、リピーティングアラームの監査ログは最新のアラーム更新日で作成されるようになりました。

SmartREST テンプレートコレクションの解析は、レスポンステンプレートで失敗しなくなりました。

デバイスシミュレータは、レスポンステンプレートを含むSmartRESTテンプレートコレクションを使用するように構成されていましたが、データ作成を妨げる内部の問題がありました。この問題は、レスポンステンプレートを正しく解析することで解決され、処理が中断されなくなりました。

マイクロサービスマニフェストの高度なユーザー入力検証

Things Cloudをより安全にするために、アップロード時にマイクロサービス設定にHttpGet、exec、およびTCPSocketのような改行文字を含まないことを確認するチェックを追加しました。これはKubernetes PodSpecの項目と整合しています。

SNMPドキュメントの移動

SNMPデバイスプロトコルのドキュメントは、ユーザードキュメントから公開GitHubリポジトリのcumulocity-examplesに移動しました。

アセットセレクタは、最初に選択されたアイテムを正しく出力するようになりました。

アセットセレクターコンポーネントは、ユーザーがリストからアセットを選択するために使用されます。以前は、リストの最初のアイテムが自動的に選択されることはありませんでした。これは変更されましたが、最初に選択されたアイテムが他のコンポーネントに正しく送信されていませんでした。この結果、データポイントセレクターにデータポイントが表示されないことがありました。これが修正され、アセットセレクターコンポーネントは常に選択されたアイテムを送信するようになりました。この変更により、選択されたアセットが適切に通信され、依存するコンポーネントが期待通りに使用できるようになります。

ウィジェットのグループ作成ダイアログをグループページへのリダイレクトに置き換えました。

AngularJSベースのウィジェットから新しいグループを作成するためのダイアログは置き換えられました。このダイアログの代わりに、ユーザーがウィジェットから新しいグループを追加したい場合、グループページにリダイレクトされ、グループを追加ダイアログが表示されるようになります。

ダッシュボードコピーアクションのための権限チェックを追加しました

ダッシュボードコピーアクションのための権限チェックが追加されました。プラットフォームは、ユーザーがダッシュボードをコピーする前に必要な権限を持っているかを確認します。必要な権限がない場合、コピーボタンは無効になります。

ノーコンフリクトを追加してLeafletのバージョンの衝突を避ける

異なるバージョンのLeafletライブラリを使用してマップをレンダリングする際の競合を防ぐために、noConflictモードが追加されました。以前は、同じページに複数のバージョンのLeafletが読み込まれると、予期しない動作やエラーが発生する可能性がありました。この変更により、各バージョンのLeafletを互いに干渉することなく独立して使用できるようになりました。これにより、他のシステムの部分やカスタムウィジェットが異なるバージョンのライブラリを使用していても、Things Cloud アプリケーションがLeafletを使用して信頼性をもって機能することが保証されます。

繰り返しアラームの監査ログは、最後のアラーム更新の日付で作成されます。

繰り返しアラームの監査ログは、アラーム作成日を使用していたため、監査ログに過去の日付が表示されていました。この問題は修正され、現在、繰り返しアラームの監査ログは最後のアラーム更新日で作成されます。

Spring Boot アクチュエータエンドポイントへのアクセス制限

Microservice SDKのセキュリティを向上させるために、Spring Bootアクチュエーターエンドポイントの初期設定(/loggersエンドポイントへのPOSTアクセス)を管理者ロールのみに制限することに決定しました。

ダッシュボードインスタンスを編集するときにアセットとグループが表示されるようになりました。

ダッシュボードマネージャーは、デバイスとグループ/アセットタイプのダッシュボードを表示します。グループ/アセットタイプのダッシュボードは、アプリケーションオプション hideTypeDashboardForAssets が false に設定されている場合に作成できますが、Edit をクリックすると、新しいモーダルはデバイスダッシュボードのみにターゲットアセットを表示し、グループ/アセットのリストは空でした。今では、Edit をクリックすると、リストは常にデバイスとグループ/アセットが表示されます。

非デフォルト言語のロケールの読み込みが可能になりました。

以前は、システムで設定されたデフォルト言語以外の言語のロケールを読み込むことはできませんでした。この変更により、デフォルト以外の言語のロケールを読み込むことが可能になりました。この機能強化により、ユーザーはシステムのデフォルト言語設定とは異なる自分の好みの言語のロケールを利用できるようになります。これにより、アプリケーション全体で言語特有のフォーマットや翻訳を使用できるため、ユーザーエクスペリエンスが向上します。

ストリーミング分析アプリケーションのバージョン番号はプラットフォーム詳細ファイルに移動しました。

ストリーミング分析アプリケーションの右側のドロワーに、フロントエンドおよびバックエンドのバージョン番号はもはや表示されません。代わりに、すべてのコンポーネントの詳細はプラットフォームの詳細をダウンロードボタンを介してダウンロードできます。この変更により、ほとんどのユーザーにとってUIが簡素化されました。

デバイスデータウィジェット内のソフトウェアリストは、すべてのエントリを適切に表示するためにページネーションされました。

「デバイスデータ」ウィジェットでは、ソフトウェアリストに多数の項目が含まれている場合に正しく表示されませんでした。この問題は、ソフトウェアリストをページネーションすることにより解決されました。つまり、初期リストを10項目に制限し、必要に応じてさらに読み込むオプションが追加されました。

最大アーカイブ数に達した際のダイアログのキャンセルされた際、エラーメッセージを表示しなくなりました

過去には、ユーザーが最大アーカイブ数に達し、対応するダイアログが表示された際に、そのダイアログをキャンセルすると誤ってエラーメッセージが表示されていました。これが修正されました。現在、ユーザーが最大アーカイブ数のダイアログをキャンセルしても、エラーメッセージは表示されず、アプリケーションは期待通りに動作します。

マイクロサービスデプロイメントのサービスレベルアグリーメント

マイクロサービスデプロイメントのサービスレベルアグリーメントは、カスタムマイクロサービスのためのマイクロサービスホスティング機能に含まれる内容について、より正確な定義を提供しています。また、このサービスからどのように最大限に利益を得ることができるかについても説明しています。

重大なセキュリティの問題を修正しました

この修正は、Things Cloudの整合性に影響を与える可能性がある重要なセキュリティの問題に対処していますが、その性質がランダムであるため、ターゲットにすることはできません。

すべてのユーザーがログアウトされた際の確認メッセージが正しく翻訳されました。

管理アプリケーションでは、管理者がすべてのユーザーのログアウトを試みると確認モーダルが表示されます。以前は、このモーダルの本文テキストが正しく翻訳されておらず、ユーザーの言語設定に関係なく常に英語で表示されていました。この変更により、確認モーダルの本文テキストは、ユーザーが選択した言語に基づいて正しく翻訳されるようになりました。

標準アプリケーションの説明が正しく翻訳されました

Things Cloud を異なる言語向けにローカライズする過程で、標準アプリケーションの説明が期待通りに翻訳されていないことが判明しました。この変更により、標準アプリケーションの説明が選択されたプラットフォームの言語に基づいて適切に翻訳されるようになります。

デバイスデータウィジェット内のソフトウェアリストがページネーションされ、すべてのエントリが正しく表示されるようになりました。

「デバイスデータ」ウィジェットでは、ソフトウェアリストに大量のエントリが含まれている場合、正しく表示されませんでした。この問題は、ソフトウェアリストをページネートすることにより解決されました。つまり、最初のリストを10項目に制限し、必要に応じてさらに読み込むオプションを追加しました。

一括デバイスアップロードの成功メッセージに欠けていたドイツ語翻訳を追加しました

一括でデバイスをアップロード後に表示される成功メッセージが、ドイツ語に正しく翻訳されていませんでした。この問題は解決され、その言語が選択されたユーザーには成功メッセージが正しくドイツ語で表示されるようになりました。

最大アーカイブ数に達した際にダイアログをキャンセルすると、エラーメッセージは表示されなくなります。

過去に、ユーザーがアーカイブの最大数に達し、対応するダイアログが表示された際に、ダイアログをキャンセルすると誤ってエラーメッセージが表示されることがありました。これが修正されました。現在、ユーザーがアーカイブの最大数ダイアログをキャンセルすると、エラーメッセージは表示されず、アプリケーションは期待通りに動作します。

オフローディングステータスの調査をサポートするためのホームページの強化

ホームページが強化され、現在のオフロードパイプラインの状態を調査できるようになりました。状態には、現在実行中のオフロード、最近失敗したオフロード、そして正常に完了したオフロードが含まれます。

追加の結果列の探索

オフロードパイプラインの追加結果カラムを管理するためのエディタは、ネストされたデータを探索するための便利なツールを追加して強化されました。対応する Things Cloud ベースコレクションから取得したサンプルデータを使用して、データの構造をインタラクティブにブラウズし、オフロードしたい特定のサブストラクチャを決定することができます。

スマートルールリストは、マネージドオブジェクトに子アセットが割り当てられている場合、常に子列を正しく表示します

グループまたはデバイスのスマートルールリストにおいて、スマートルールがアクティブな子アセットを示す子列が常に正しく表示されていませんでした。この問題は修正され、スマートルールが子アセットに対してアクティブな場合、子列は常に表示されるようになりました。

ナビゲータでレポートアイコンが正しく更新されました

以前は、ナビゲータに表示オプションが有効なレポートのアイコンが変更されても、ナビゲータ内ではアイコンが更新されませんでした。この修正により、変更が保存されたときに、ナビゲータ内のアイコンが即座に更新されるようになりました。

Streaming Analyticsアプリケーション内のモデル用のリサイズ可能な説明フィールド

新しいモデルを追加する場合や、ストリーミング分析アプリケーションでモデル名を編集する際に、説明フィールドのサイズを変更できるようになりました。これは、詳細な説明を持つサンプルのケースを含め、より長い説明を編集または表示する際に便利です。

ストリーミング分析アプリケーションのモデルエディタは、読み取り専用モードで有効なツールバーアイコンのみを表示します。

以前は、モデルがアクティブなとき(つまり、読み取り専用モード)の場合に使用できないアイコンは、モデルエディタのツールバーで無効として表示されていました。読み取り専用モードのユーザビリティを向上させるために、使用できないアイコン(保存アイコンなど)はツールバーに表示されなくなりました。

ページサイズを1に設定したRESTクエリの無限ループ事象の修正

Things Cloud トランスポートには、pageSize が 1 に設定されている場合に REST クエリが無限ループに入る回帰がありました(これはストリーミング分析 10.16 で導入されました)。これは現在修正されました。

Cumulocity SaaSインスタンスにおけるマイクロサービスAPIバージョン1の削除と次回の年次リリース2025

Things Cloud は、セキュリティ要件の変更に対応するために、マイクロサービスAPIバージョン2の提供を発表し、APIバージョン1を非推奨としました。マイクロサービスAPIバージョン2は、特権LinuxカーネルAPIの呼び出しを制限する改善されたマイクロサービスコンテナセキュリティコンテキストを提供します。今日、Things Cloud は、テナントをAPIバージョン1を使用しているマイクロサービスにサブスクライブする際にアラームを作成することを発表します。2024年第3四半期に、マイクロサービスAPIバージョン1はThings Cloud SaaSインスタンスから削除され、2025年の年次リリースでも削除されます。まだ行っていない場合は、マイクロサービスをAPIバージョン2に移行してください。これを達成する方法については、ユーザードキュメントのマイクロサービスのAPIバージョン2への移行を参照してください。さもなければ、Things Cloud SaaSインスタンスのマイクロサービスは、2024年第3四半期または2025年の年次リリースを使用している環境で機能しなくなる可能性があります。

トレンドマイナーオフロードモードの廃止

メジャーメント収集のオフロードのために、Things Cloud DataHubは、TrendMinerとの特定のインタラクションのために設計されたTrendMinerモードを提供しています。このモードは廃止されており、TrendMinerとの統合が終了するため、今後のリリースで削除される予定です。

デバイス管理サービスの機能が現在プラグインとして利用可能です。

サービスコンポーネントは以前、デフォルトのデバイス管理アプリケーションの不可欠な部分でした。この変更により、サービスの機能はプラグインにモジュール化されました。デフォルトでは、ユーザーは引き続きデバイス管理アプリケーション内でサービスにアクセスできます。ただし、必要ない場合はプラグインを無効にすることでその機能を削除できます。このアプローチは、アプリケーション内で特定の機能を必要とするユーザーに柔軟性を提供します。

フック`hookDeviceListColumns`をファクトリーと共に使用した際の型エラーを修正しました。

Things Cloudにおいて、hookDeviceListColumns APIはデバイスリストに表示される列をカスタマイズすることを可能にします。しかし、このAPIをファクトリとともに使用した際に型エラーが発生し、明示的な型キャストが必要でした。この問題は現在解決されました。

一括デバイスアップロードの成功メッセージに欠落していたドイツ語の翻訳を追加しました。

一括でデバイスをアップロードした後に表示される成功メッセージが、ドイツ語に正しく翻訳されていませんでした。この問題は解決され、成功メッセージはその言語を選択しているユーザーに対して正しくドイツ語で表示されます。

空の状態メッセージのレイアウトと内容の改善

データグリッドに表示される空の状態メッセージのレイアウトが、すべての標準アプリケーションで調整され、統一されました。さらに、データが利用可能でない場合とフィルターが一致しない、または検索結果がない場合を区別していなかったグリッドは、より正確な対応する空の状態メッセージを表示するようになりました。

開発者向けに、データソース統計変数をテンプレートコンテキストに挿入する emptyStateContext ディレクティブが導入されました。

高度なソフトウェア管理機能をプラグインとして分離しました。

高度なソフトウェア管理機能は以前はデフォルトのデバイス管理アプリケーションの不可欠な部分でした。この変更により、高度なソフトウェア管理サービスは再構築され、独立したプラグインとして機能するようになりました。デフォルトで含まれているままですが、必要に応じて追加または削除する柔軟性が提供されます。

Codexにおける動的フォームの拡張情報

Codexドキュメントは、Things Cloudプラットフォームを使用したアプリケーション開発に関する情報を提供します。ユーザーがアプリケーション内でダイナミックフォームを理解しやすく利用できるように、Codexドキュメント内のダイナミックフォームページが拡張されました。詳細については、Things Cloud Codexを参照してください。

cumulocity.config.tsファイルに欠落しているプロパティが自動的に追加されました

ng-cli namecontext-path、およびkeyの値が cumulocity.config.ts ファイルにない場合、それらは自動的に package.json ファイルの name プロパティから導出されます。

アセットセレクターは、デフォルトで選択された要素を表示します。

以前は、アセットセレクターはデフォルトで現在選択されている要素を表示せず、ユーザーは常に手動で目的のアセットを検索して選択する必要がありました。この変更により、アセットセレクターは開いたときに自動的に選択された要素を表示するようになりました。この改善により、同じアセットを繰り返し探して選択する必要がなくなり、ユーザーのワークフローが効率化され、時間と労力が節約されます。

アプリ固有のパスから動的オプションをロードするサポート

アプリケーションを構成するための柔軟性を高めるために、Things Cloudはアプリケーション固有のパスから動的オプションをロードすることをサポートしました。この変更により、各ホストされたアプリケーションはアプリケーションコンテキストパスを含むパスから動的オプションをロードします。これにより、アプリケーション固有の構成が動的にロードされることが可能になります。

Cockpit アプリケーションは、これまで /apps/public/public-options/options.json から動的オプションをロードしていましたが、今後は /apps/public/public-options@app-cockpit/options.json からロードするようになります。

この変更は、今後のブランディングマネージャーへの変更に向けた準備として行われました。

アラームは現在、リンクを介して参照できます。

以前は、アラームには参照するためのユニークなリンクがないため、共有することができませんでした(例えば、メールやチャットで)。この変更により、各アラームにはユニークなリンクが付与されます。これにより、アラームを共有し、アラーム間をより簡単にナビゲートできるようになります。

アラーム機能の再設計

以前に発表された通り、アラーム機能の再設計が視覚的および機能的な強化とともに導入されました。

視覚的およびUXの強化:

  • アラームがアラームビューやウィジェットに表示される方法が再設計されました。

機能的改善:

  • アラームビューは、フィルターを適用できる単一のアラームリストのみを表示します。
  • アラームに関連するすべての情報を含む詳細セクションが導入されました。
  • 「アラームリスト」、「すべてのクリティカルアラーム」、「最近のアラーム」ウィジェットの機能が統合され、包括的なウィジェット「アラームリスト」となりました。
  • 「アラームリスト」ウィジェットはAngularに移行されました。
  • リアルタイム機能は自動更新機能に置き換えられました。
  • 既存のウィジェット「アラームリスト」、「すべてのクリティカルアラーム」、「最近のアラーム」は自動的に更新され、新しい「アラームリスト」ウィジェットに移行されます。

サブアセットビューのアセットプロパティフィールドは、既存またはデフォルトの値がクリアされた後、現在空のままになります。

アセットのサブアセットビューでアセットプロパティの値を編集する際、ユーザーが値をクリアしてもデフォルト値が表示されていました。この問題は現在解決されました。この修正により、ユーザーがサブアセットビューでアセットプロパティの値をクリアし、変更を保存すると、フィールドはデフォルト値を保持することなく期待通り空になります。

すべてのダッシュボードウィジェットの変更が正しく保存されるようになりました。

以前は、複数のダッシュボードウィジェットが編集されると、最後に編集されたウィジェットの変更のみが保存されていました。現在は、すべての変更が考慮されます。

ダッシュボードにおける固定ウィジェットのドラッグを修正しました。

angular CDKライブラリの更新により、ダッシュボードのウィジェットのドラッグ機能が動作しなくなりました。この問題は新しいバージョンに合わせることで修正され、ウィジェットを再びドラッグできるようになりました。

ダッシュボードの復元後にナビゲータノードのプロパティが正しく変更されました

過去には、ダッシュボードを復元するとナビゲータのノードプロパティが正しく更新されず、不整合が生じていました。これが修正されました。ダッシュボードを復元した後にナビゲータのノードプロパティが正しく変更され、復元されたダッシュボードが期待される状態と一致することが保証されています。

データグリッドは現在、展開可能な行をサポートしています。

データグリッド内で階層データを表示する際のユーザー体験を向上させるために、展開可能な行が導入されました。この変更により、ユーザーはデータグリッド内の行を展開または折りたたむことで、ネストされた情報を表示または非表示にすることができるようになりました。これにより、特に複雑な階層や大量の関連情報を扱う際に、データのよりコンパクトで整理された提示が可能になります。展開可能な行の機能は、既存のデータグリッドコンポーネントとシームレスに統合されており、ユーザーが表示されたデータと対話し、ナビゲートするための一貫性のある直感的な方法を提供します。

データポイントグラフのリアルタイムは、ブラウザタブがバックグラウンドにあるときでも有効に保たれます

データポイントグラフのリアルタイム機能は、ブラウザタブがバックグラウンドにあるときに自動的に無効化されていました。この修正により、リアルタイムは有効のままとなり、ユーザーの直接的な操作によってのみ無効にすることができます。

プラグインによるシェルアプリケーションのスタイリングを文書化しました

プラグインを通じてシェルアプリケーションをスタイルする方法に関するドキュメントが追加されました。
詳細については、Things Cloud Codexを参照してください。

ブランドダッシュボードのスタイルを調整しました

ブランドダッシュボードのスタイリングが調整され、可読性とアクセシビリティが向上しました。

モバイル画面では利用できないデータグリッドフィルターに関するCodexドキュメントに情報が追加されました

データグリッドフィルターやその他の機能がモバイル画面で利用できないという情報がCodexドキュメントに追加されました。

レポートページが別のプラグインに抽出されました。

以前に発表されたように、レポートモジュールはコックピットアプリケーションから抽出され、別のプラグインとして追加されました。
これはレポートモジュールを完全に取り除き、ダッシュボードマネージャーに置き換えるための第一歩です。
この変更は破壊的な変更となる可能性があり、レポートモジュールはもはや @c8y/ngx-components/context-dashboard の一部ではなく、 @c8y/ngx-components/report-dashboard の一部となります。

この変更はコックピットアプリケーションのレイアウトやUXには影響を与えず、新しい機能も追加されません。
副作用として、今後はレポートが遅延ロードされるため(つまり、ユーザーがレポートページに移動したときのみ)、パフォーマンスの向上が見られるかもしれません。

新しいダッシュボード管理者がデバイスタイプダッシュボードのリストを表示します

デバイスタイプダッシュボードの管理を効率化するために、ダッシュボードマネージャービューが追加されました。このビューは、特定のデバイスタイプに割り当てられたすべてのダッシュボードのリストを集約して表示します。このリストから、デバイスタイプにリンクされたダッシュボードテンプレートを表示し、特定のインスタンスに移動して編集することができます。また、必要に応じてテンプレートを削除することもできます。

自己インポートしたプラグインが、ユーザーがすでにプラグインを持っている場合でも追加できるようにする

もしユーザーがデフォルトのウェブアプリケーション(例えば、コックピット)をクローン後にアップグレードした場合、そのアプリケーションが最初にクローン/インストールされた際に提供されていたプラグインのみが含まれます。
追加で自己インポートされたプラグインがアップグレード版に導入されていても、アプリケーションを使用しているときにはこれらは存在しませんでした。

これは特に、以前は標準のangularモジュールとして存在していたアプリケーションの機能が自己インポートされたモジュールフェデレーションプラグインに移行された場合に問題を引き起こしました。これらの機能は、プラグインが手動でアプリケーションにインストールされるまで欠落していました。

この問題を解決するために、すでに存在する通常のプラグイン用のインクルードリストに加えて、これらの自己インポートされたプラグインの除外リストが利用されています。

長時間実行されているマネージドオブジェクトオペレーションのアラーム

特定の状況において、Things Cloud内のマネージドオブジェクトオペレーションが予期せぬ長時間を要する場合があり、ユーザーにフィードバックが提供されないことがあります。透明性を高めるために、特定のオペレーションが特定の期間を超えた場合、UIにアラートが表示されるようになりました。

データポイントグラフリアルタイムは、ブラウザタブがバックグラウンドのときも有効のままです。 Data points graph realtime is kept enabled when the browser tab is in background

データポイントグラフのリアルタイム機能は、ブラウザタブがバックグラウンドにあると自動的に無効になっていました。この修正により、リアルタイムが常に有効のままとなり、直接のユーザー操作によってのみ無効にできるようになりました。

非推奨のJWTログインモードの削除

Things CloudとのJWT認証は、10.6のリリースから非推奨となり、SaaSインスタンスでは2024年第3四半期に、年次リリースでは2025年に削除されます。
この認証方法は、推奨されており、まだサポートされているSSO(シングルサインオン)やOAI-Secure認証と混同しないでください。
この変更は、あなたの組織がThings Cloudの初期のSSOバージョンを使用していた場合にのみ影響を与えます。
パブリッククラウドインスタンスのお客様には、このタイプの認証を使用している場合にご連絡いたします。
自己ホスト型または自己管理型のインスタンスの場合、次の手順を実行する必要があります:
オペレーションチームにこのスクリプトを実行するように依頼します。これにより、
どのテナントコレクションがauthenticationProviders設定を持っているか、および
どのテナントがカテゴリtoken.publicKeyでテナントオプションを設定しているかを確認します。
authenticationProvider設定またはテナントオプションtoken.publicKeyカテゴリのいずれかが存在する場合、これにより非推奨のJWTが過去に使用されていたことを示します。この場合、外部サービスでJWT認証の使用を確認し、SSOまたはOAI-Secureを使用するように変更する必要があります。これらの二つの方法は、認証に対してより良く、安全なアプローチを提供します。
これらの方法は次の場所で文書化されています:

デフォルトのロールラベルの翻訳を提供します

以下のデフォルトロールのラベルが翻訳されました。

グローバルロール: “管理者”, “ビジネス”, “デバイス”.

インベントリロール: “マネージャ”.

デフォルトロールラベルの翻訳を提供

以下のデフォルトロールのラベルが翻訳されました。グローバルロール: 管理者ビジネスデバイス。インベントリロール: マネージャ

プラグインとして利用可能なデバイス機能の置き換え

「デバイスの置き換え」機能は、デバイス管理アプリケーションによってセルフホスティングのプラグインとして提供されるようになりました。この方法により、必要がない場合はアプリケーションから機能を簡単に削除できます。

さらに、デバイス置き換えウィザードは、フック可能なインターフェース(hookDataGridActionControlsおよびhookService)を導入することによって、より拡張性が高くなりました。

バイナリの制限は、アプリケーションのバージョン制限と等しくなりました。

以前は、バージョン付きアプリケーションの保存されたバイナリの数が6ファイルに制限されていましたが、許可されるアプリケーションバージョンの数はデフォルトで20でした。7番目のアプリケーションバージョンにバイナリアタッチメントがアップロードされると、最も古いファイルが自動的に削除されていました。これが修正され、現在ではバイナリの制限はアプリケーションバージョンの制限(デフォルトで20)と等しくなりました。

バージョン25のDockerを使用したマイクロサービスコンテナイメージの構築時のエラー修正

Things Cloudは、マイクロサービスをデプロイすることにより、顧客固有の機能でプラットフォームAPIを拡張することを可能にします。技術的に言えば、マイクロサービスはThings CloudでホストされているDockerコンテナであり、特定の規則に従っています。Dockerバージョン25でマイクロサービスコンテナイメージを構築する際に、次のエラーでマイクロサービスのアップロードに失敗することがありました:config file does not have .json extension(設定ファイルに.json拡張子がありません)。この問題は現在修正されています。

c8y_Positionフラグメントの作成と解析のための新しいEPLアクション

ManagedObjectイベントは、c8y_Positionフラグメントのpositionプロパティにパース可能なfloat値を追加し、すべての値をparamsプロパティに追加する独自の方法で処理します。Things CloudトランスポートAPIの他のすべてのイベントは、フラグメント全体をparamsプロパティに単純に追加します。このため、他のイベントからc8y_PositionManagedObjectに、またその逆に頑健にコピーするのが煩雑になりました。これを容易にするために、ManagedObjectイベントにc8y_PositionオブジェクトからManagedObjectをポピュレートする新しいヘルパーアクションが2つ追加され、逆にManagedObjectイベントからオブジェクトを作成します。

  • action setC8yPosition(any c8y_Position)

    この新しいアクションは、c8y_Positionオブジェクトを使用してManagedObjectを設定します。これはdictionary<string, any>の形式である必要がありますが、使用前に検証されます。例:

    on all Event(type="locationUpdate") as evt
    
    { ManagedObject mo := new ManagedObject;
      mo.id := evt.source;
      mo.setC8yPosition(evt.params.getOrDefault("c8y_Position"));
      send mo to ManagedObject.SEND_CHANNEL; }
    
  • action getC8yPosition() returns dictionary<string, any>

    この新しいアクションは、ManagedObjectからc8y_Positionスタイルのオブジェクトを生成します。例:

    evt.params["c8y_Position"] := mo.getC8yPosition();
    

ストリーミング分析アプリケーションのユーザーメニューから利用可能なブックマーク

Streaming Analyticsアプリケーションの右側のドロワーには、ユーザーボタンをクリックすると表示されるブックマークセクションが含まれています。これは、他の Things Cloud アプリケーションで追加したブックマークが、Streaming Analyticsアプリケーションでも利用可能になったことを意味し、Streaming Analyticsアプリケーション内のページのためにブックマークを追加することもできるようになりました。

一時的なネットワーク問題に対するストリーミング分析の堅牢性の向上

EPLアプリおよび分析ビルダーのモデルは、一時的なネットワークの問題に対する頑健性が向上しました。
具体的には、一時的なネットワークの問題が原因でEPLアプリや分析ビルダーのモデルをインベントリに保存する際に問題が発生した場合でも、EPLアプリまたは分析ビルダーのモデルはUIに正しい状態で表示され、不正確な状態で表示されたり、全く表示されないことはありません。

使用統計のためのデバイスカウントの詳細が文書化されました

ルートデバイス、すべてのデバイス、および葉デバイスをカウントするアルゴリズムの詳細がユーザー文書に追加されました。詳細は利用統計と請求をご覧ください。

SSOサーバーで管理されているユーザーのロール変更に関する制限

管理者は、ログイン中に更新された場合、シングルサインオン (SSO) サーバーによって管理されるユーザーのグローバルロールおよびインベントリロールを変更することができなくなります。 「以下のルールで選択されたロールは、各ログイン時にユーザーに再割り当てされ、それ以外のものはクリアされます」というオプションは、SSO構成のアクセスマッピングで設定できます。

TFA設定は現在TFAエンドポイントを通じて更新可能になりました。

二要素認証(TFA)プロセスのセキュリティと柔軟性を向上させるために、専用のTFAエンドポイントを使用してTFA設定を更新できるようになりました。この変更により、ユーザーは複数のステップやメニューを介さずに、TFA設定をより簡単かつ効率的に変更できるようになります。更新された機能はTFA構成プロセスを合理化し、ユーザーフレンドリーな体験を提供しながら、TFAが提供する強力なセキュリティ対策を維持します。

グローバルロールおよびインベントリーロールタブの固定位置情報

管理アプリケーションでは、アカウント > ロールの下にあるグローバルロールインベントリロールタブの場所情報が不正確であり、ユーザーにとってナビゲーションが混乱していました。この問題は解決され、アプリケーション内でのユーザーの位置が正確に反映されるようになりました。

シングルサインオンページのタイプミスを修正しました。

シングルサインオンページで、タイプミスが修正されました (AIM -> IAM)。IAMはアイデンティティとアクセス管理を表します。

シングルサインオンログインボタンのレイアウト改善

シングルサインオン(SSO)ログインボタンのレイアウトが更新されました。以前は、SSOログインボタンはカスタムスタイルを使用しており、アプリケーションの全体的な外観と一致していませんでした。この変更により、SSOログインボタンはデフォルトのレイアウトを使用するようになりました。

ユーザーページに直接サブユーザー数インジケーターが追加されました

ユーザーページにおいて、ユーザーの直接のサブユーザー数を示すインジケーターが欠けていました。このインジケーターは、各ユーザーの直接のサブユーザー数を可視化するために追加されました。

ユーザー名の大文字小文字を区別するかどうかを切り替える新しいスイッチ。

ユーザーエクスペリエンスを向上させるために、認証設定にスイッチが追加され、ユーザー名の大文字と小文字の区別を無効または有効にすることができるようになりました。スイッチがオンになると、ユーザー名の検証は大文字と小文字を区別するようになり、ユーザーは設定した通りに正確にユーザー名を入力する必要があります。これはすべてのユーザーに影響します。

Angular 開発サーバーのWebSocket接続の問題を修正する

Angular開発サーバーは、開発中にアプリケーションのライブリロードを有効にするためにWebSocket接続に依存しています。以前はWebSocket接続が不安定で頻繁に切断され、ライブリロード機能が動作しなくなることがありました。この変更により、WebSocket接続の根本的な問題が修正され、より安定で信頼性の高いものとなります。

データエクスプローラーでデータをエクスポートする際の不正確なエラーメッセージを修正しました。

データエクスプローラーで、設定された最大行数を超えるデータのエクスポートを試みると、不正確なエラーメッセージが表示されていました。この変更により、エラーメッセージが修正され、ユーザーに正しい情報が提供されるようになります。ユーザーは、選択された行数が設定された最大制限を超えたためにエクスポートが失敗したことを説明する正確なエラーメッセージを見ることができるようになります。

ナビゲータ内のグループナビゲーションツリーは、サブアセットビューからグループを削除した後に正しくリフレッシュされるようになりました。

Things Cloudユーザーインターフェースでは、サブアセットビューを介してグループやデバイスを削除した後にナビゲータが正しく更新されないことがありました。これにより、ナビゲータが削除されたグループやデバイスを表示し続け、UIが一貫性を欠く問題が発生していました。この修正により、ナビゲータはサブアセットビューを通じてグループやデバイスが削除された後に正しく更新されるようになり、ユーザーインターフェースが同期を保ち、現在のインベントリの正確な表示を提供します。

範囲表示は、データポイントの最大値が0の場合に正しい値を表示するようになりました。

場合によっては、最大値が0に設定されたデータポイントが、ダッシュボードやその他のビジュアライゼーションの範囲表示に正しく表示されないことがありました。この問題は解決され、範囲表示は現在、最大値が0のデータポイントの値を正しく表示します。この変更により、すべてのユーザーに対するデータビジュアライゼーションの精度と一貫性が向上しました。

非推奨のhookDeviceGridActionは削除されました

非推奨の hookDeviceGridAction は削除されました。その代わりに最近導入された hookDataGridActionControls を使用するべきです。これにより、データグリッドアクションに対するより多くのコントロールが提供され、任意のデータグリッドにアクションを追加したり、既存のアクションをオーバーライドしたりすることが可能です。

新しいプラグインのバージョンは、自動的に最新としてマークされなくなりました。

過去には、新しいバージョンのプラグインがアップロードされると、自動的に最新バージョンとしてマークされていました。これは、古いバージョンのプラグインを最新として使用する意図がある場合には混乱を招く可能性がありました。この変更により、新しいプラグインバージョンはアップロード時に自動的に最新としてマークされなくなります。これにより、ユーザーはどのバージョンのプラグインを最新としてマークするかを明示的に決定できるようになります。既存のプラグインとその最新バージョンのマークには、この変更の影響はありません。

インストールされたソフトウェアパッケージは、Advancedソフトウェア管理マイクロサービスの再起動後に空にされなくなりました。

古いデータモデルのマイグレーションメカニズムが、Advanced software management マイクロサービスが再サブスクライブまたは再起動された際に、デバイスからインストールされたソフトウェア情報を誤って削除していました。このメカニズムを完全に削除したため、既存のデータが変更されることはなくなりました。

ソフトウェアアイテムは現在、デバイスデータウィジェットに適切に表示されます。

c8y_SoftwareList フラグメントのプロパティライブラリスキーマ定義が実際のマネージドオブジェクトプロパティと一致していませんでした。そのため、デバイスデータ ウィジェットで ソフトウェア プロパティを選択したときに、データが表示されませんでした。現在、プロパティは ソフトウェアリスト と呼ばれ、c8y_SoftwareList フラグメントに含まれるすべてのソフトウェアアイテムを表示します。

ドロップダウン内のカレンダーが切り取られなくなりました

以前は、フォーム内のカレンダードロップダウンが部分的に隠れたり切り取られたりすることがあり、ユーザーが日付を選択しにくい状況でした。この問題は、カレンダードロップダウンをフォームではなくドキュメントのボディに追加することで解決されました。ユーザーは、フォーム内で日付を選択する際に完全なカレンダードロップダウンを確認できるようになり、視覚的な障害なく希望の日付を簡単に選択できるようになりました。

「情報ゲージ」ウィジェットでのラベル表示が改善されました

情報ゲージ ウィジェットのラベルが改善されました。以前は、長い名前のラベルが表示問題に直面していました。現在、より明確で正確なラベル表示が確保されるよう調整が行われました。

UIを通じたパッケージバージョンのアップロード制限がデフォルトに合わせて増加しました。

UIを通じてアップロードできるパッケージバージョンの数が不適切に6に制限されていました。これが修正され、デフォルトの制限である20パッケージバージョンに一致するようになりました。

ダッシュボードの可用性選択は、必要な権限がないユーザーには隠されています。

以前は、ダッシュボードの可用性選択がユーザーに対して常に表示されていましたが、権限を持っていない場合でも表示されていました。この変更により、必要な権限を持っていないユーザーに対してダッシュボードの可用性選択が非表示になります。ユーザーは、ダッシュボードの可用性プロパティを表示および変更するために、ユーザ管理のREAD権限を持っている必要があります。

ナビゲータのグループナビゲーションツリーは、サブアセットビューを介してグループを削除した後、正しく更新されるようになりました。

Things Cloud ユーザーインターフェースでは、サブアセットビューを介してグループやデバイスを削除した後、ナビゲータが正しく更新されないことがありました。これにより、ナビゲータに削除されたグループやデバイスが表示され、UIが一貫性を欠く原因となっていました。この修正により、グループやデバイスがサブアセットビューを通じて削除された後、ナビゲータが正しく更新されるようになり、ユーザーインターフェースが同期して現在のインベントリを正確に表示できるようになりました。

リストグループのドロップダウンのアクセシビリティが改善されました

リストグループアクションのドロップダウンには適切なフォーカス処理が欠けており、キーボードやスクリーンリーダーのユーザーにとってアクセシビリティや使いやすさの問題を引き起こす可能性がありました。この変更により、ドロップダウンにトラップフォーカスが適用され、ドロップダウンが開いている間、フォーカスが適切にドロップダウン内にトラップされるようになりました。これにより、キーボードやスクリーンリーダーのユーザーがドロップダウンを容易にナビゲートし、操作できるようになり、誤ってドロップダウンを離れてしまうことが減ります。

OAI-Secureユーザーは、グローバルロールの更新が失敗してもログアウトされなくなりました。

ユーザーグローバルロールの更新中にOAI-Secureを使用しているユーザーがログアウトされる問題が修正されました。グローバルロールの割り当てや割り当て解除中にエラーが発生しても、ユーザーはログアウトされません。

SSOユーザーの権限が、プラットフォームをバージョン10.17からアップグレードする際に失われなくなりました。

プラットフォームをバージョン10.17から後のバージョンにアップグレードした後、一部のSSOユーザーの権限が失われるという問題が発生しました。この問題は修正され、プラットフォームのバージョンを更新してもユーザーの権限には影響を及ぼさなくなりました。

カスタム属性の空のキーの作成を防止する

インベントリでは、データ取得時のパースに問題を引き起こす空のキーを作成しないように、カスタム属性に対するキー検証が追加されました。

SmartRESTを使用してサポートされているクラウドリモートアクセスプロトコルを設定します。

新しいSmartRESTテンプレートが追加されました。テンプレートID 150を使用すると、デバイスがサポートするクラウドリモートアクセスプロトコルのリストを設定できるようになりました。

インストールされたソフトウェアパッケージは、Advanced software managementマイクロサービスの再起動後も空にならなくなりました。

古いデータモデル移行メカニズムが、アドバンスドソフトウェア管理マイクロサービスが再サブスクライブされたり再起動されたりする際に、デバイスからインストールされたソフトウェア情報を誤って削除していました。このメカニズムを完全に削除したため、既存のデータがもはや修正されることはありません。

レポートページが別のプラグインに抽出されました

今後のバージョンでは、レポートモジュールがコックピットアプリケーションから抽出され、別のプラグインとして追加されます。
これはレポートモジュールを完全に削除し、ダッシュボードマネージャーに置き換えるための第一歩です。
この変更は破壊的な変更となる可能性があります。なぜなら、レポートモジュールはもはや @c8y/ngx-components/context-dashboard の一部ではなく、@c8y/ngx-components/report-dashboard の一部になるからです。

この変更はコックピットアプリケーションのレイアウトやUXに影響を与えず、新しい機能を追加することもありません。
副次的な効果として、レポートは今後遅延読み込みされるため、パフォーマンスの改善が見られるかもしれません(つまり、ユーザーが Reports ページに移動したときのみ読み込まれることになります)。

カレンダードロップダウンが切り捨てられなくなりました。

以前、フォーム内のカレンダードロップダウンが部分的に隠れたり切り取られたりすることがあり、ユーザーが日付を選択するのが難しいことがありました。この問題は、カレンダードロップダウンをフォームではなくドキュメントボディに追加することで解決されました。ユーザーは今後、フォームで日付を選択する際に完全なカレンダードロップダウンを見ることができ、視覚的な障害なしに望む日付を簡単に選択できるようになります。

シェルタブにおけるシェル操作のコマンド出力が、正しく改行文字を含むようになりました。

デバイスの詳細のシェルタブでは、シェルオペレーションを介して実行されたコマンドの結果が以前は改行文字が欠落して表示され、読みづらい状態でした。この問題は現在解決されました。シェルオペレーションは、コマンド出力に期待通りに改行文字を正しく含むようになりました。

ソフトウェアアイテムは、デバイスデータウィジェットに適切に表示されるようになりました。

c8y_SoftwareListフラグメントのプロパティライブラリスキーマ定義は、実際のマネージドオブジェクトのプロパティと一致しませんでした。そのため、「デバイスデータ」ウィジェットで「ソフトウェア」プロパティが選択されたときに、データが表示されませんでした。プロパティは現在「ソフトウェアリスト」と呼ばれ、c8y_SoftwareListフラグメントに含まれるすべてのソフトウェアアイテムを表示します。

Codexの動的フォームページに追加情報を拡張しました。

Codexの「コンポーネント > フォーム > ダイナミックフォーム」ページには、ダイナミックフォームの概念と使用法をより良く説明するために、追加の詳細と例が拡充されました。

ダッシュボードの利用可能性選択は、必要な権限を持たないユーザーには非表示となります。

以前は、ダッシュボードの可用性選択は、ユーザーがそれを見る権限を持っていない場合でも常に表示されていました。この変更により、必要な権限を持っていないユーザーにはダッシュボードの可用性選択が隠されるようになりました。ユーザーはダッシュボードの可用性プロパティを表示および変更するために、ユーザー管理の読み取り権限を持っている必要があります。

プライベートスマートルールはもはやcontextDataプロパティを必要としません。

過去には、プライベートスマートルールは c8y_ContextcontextData プロパティを持っていましたが、ルールがそれを使用しない場合でもそうでした。これが必須ではなくなりました。プライベートスマートルールは、データベースに冗長なデータを保存しないように、contextData プロパティなしで作成できるようになりました。この変更は、新しいプライベートスマートルールの作成のみに影響します。既存のスマートルールには影響しません。

プライベートスマートルールを作成または編集する際にブロックされたデバイスの検索

過去には、プライベートスマートルールを作成または編集する際にデバイスを検索できたため、ユーザーがアクセスすべきでないデバイスに関する情報が漏れる可能性がありました。このセキュリティの懸念に対処するため、プライベートスマートルールを作成または編集する際のデバイス検索がブロックされるようになりました。この変更により、ユーザーは承認されたデバイスのみを選択できるようになり、データ漏洩の可能性が防止されます。この変更の影響はプライベートスマートルールの作成および編集に限定されており、ユーザーは従来通り、非プライベートスマートルールの作成または編集時にはデバイスを検索できます。

リストグループドロップダウンのアクセシビリティが向上しました

リストグループアクションのドロップダウンには適切なフォーカス処理が欠けており、キーボードやスクリーンリーダーユーザーにとってのアクセシビリティおよびユーザビリティの問題を引き起こす可能性がありました。この変更により、ドロップダウンにトラップフォーカスが適用され、オープン中にフォーカスがドロップダウン内に適切にトラップされるようになりました。これにより、キーボードやスクリーンリーダーユーザーのユーザーエクスペリエンスが向上し、誤ってドロップダウンから離れることなく、より簡単にナビゲートし、インタラクトできるようになります。

「データポイントリスト」ウィジェット内のアセット名が現在、正しいURLにリダイレクトされます。

過去には、「データポイントリスト」ウィジェット内でアセット名をクリックすると、ユーザーが誤ったURLにリダイレクトされることがありました。この問題は現在解決されています。「データポイントリスト」ウィジェット内でアセット名をクリックすると、ユーザーは正しいアセットページにリダイレクトされるようになります。

情報ゲージウィジェットのラベル表示が改善されました。

情報ゲージウィジェットのラベルが改善されました。以前は、長い名前のラベルが表示の問題に直面していました。現在は、より明確で正確なラベル表示が確保されるように調整が行われました。

デバイス管理アプリケーションには、現在利用可能なすべてのウィジェットが含まれています。

デバイス管理アプリケーションには、他のアプリケーションで利用可能なウィジェットがいくつか欠けていました。この変更により、すべての利用可能なウィジェットがデバイス管理アプリケーションに追加されました。

「failureReason」フラグメント を持つオペレーションのステータスは FAILED から変更できます。

以前は、「failureReason」フラグメントを持つオペレーションのステータスをFAILEDから変更することができませんでした。なぜなら、「failureReason」フラグメントは他のステータスでは許可されていなかったからです。
現在、オペレーションをFAILEDステータスから移動すると、「failureReason」が自動的に削除されます。

CRL(証明書失効リスト)のエントリに欠落しているフィールドに対して送信される正しいHTTPレスポンスコード

CRL(証明書失効リスト)エントリにフィールドが不足していた場合に、誤ったHTTPレスポンスコードが送信されました。この動作は現在修正されています。

デバイス用のX.509証明書を使用したJWTセッショントークンの取得をサポートしました。

デバイス向けにREST APIを介してX.509証明書を使用したJWTセッショントークンの取得サポートが追加されました。詳細については、デバイス認証のユーザードキュメントを参照してください。

ユーザー名またはエイリアスのログイン時に大文字と小文字を区別しないオプション

ログインプロセスを簡素化するために、テナント管理者はユーザーが大文字と小文字を区別しないユーザー名またはエイリアスでログインできるオプションを有効にできるようになりました。

ルートレベルのマネージドオブジェクトは、onlyRootsフラグを使用してクエリを実行する際に、確実に見つかるようになりました。

インベントリでは、onlyRootsフラグを使用してクエリを実行する際、オブジェクトがアセット階層から削除されてルートオブジェクトになった場合にアセットが見つからない問題がありました。この問題は修正され、ルートレベルのマネージドオブジェクトがonlyRootsフラグでクエリを実行した際に見つかるようになりました。

新しいプラグインのバージョンは、自動的に最新としてマークされません。

以前は、プラグインの新しいバージョンがアップロードされると、それが自動的に最新バージョンとしてマークされていました。これにより、古いバージョンのプラグインが最新のものとして使用される意図があった場合に混乱を招く可能性がありました。この変更により、新しいプラグインのバージョンはアップロード時に自動的に最新としてマークされなくなりました。これにより、ユーザーはどのバージョンのプラグインを最新のものとしてマークするかを明示的に決定するためのより多くのコントロールを持つことができます。既存のプラグインとその最新バージョンのマークには、この変更の影響はありません。

既存の関連グローバルIDがない外部IDを作成する際の動作が変更されました。

以前、外部IDを作成する際に、関連するグローバルIDが存在しない場合、自動的にグローバルIDを持つマネージドオブジェクトが誤って作成されていました。これが変更されました - 現在、外部IDを作成する際にグローバルIDが存在しない場合、新しいマネージドオブジェクトを暗黙的に作成する代わりに404エラーが返されます。この動作はマネジメントテナントから元に戻すことができます。

証明書管理に関する情報が追加されました。

設定タブの信頼された証明書ページに、証明書管理に関する情報とドキュメントへのリンクが追加されました。

デバイスIDにおける特殊文字の一貫した制限:単体および一括デバイス登録用

シングルデバイス登録および一括デバイス登録プロセスにおけるデバイスIDの検証は、いくつかの特殊文字を制限しています。これは一貫性がなく、かなり緩かったです。現在、検証は両方のプロセスで一貫して動作し、制限されている文字は /, \, $ および空白です。両方の登録は、制御文字も引き続きブロックします。

アプリケーションを構築する際にZIPオプションが利用可能になりました。

アプリケーションを構築する際に、–zip 引数を使用できるようになりました。これにより、通常のビルドアーティファクトに加えて、アプリケーションとその依存関係を含む ZIP アーカイブが生成されます。

ヘルプとサービスウィジェットは、現在のアプリケーションへのリダイレクト時に新しいタブを開かなくなりました。

ヘルプとサービスウィジェットは、ユーザーに役立つリソースとリンクを提供します。以前は、ユーザーが現在使用しているアプリケーションにリダイレクトするリンクをクリックすると、新しいブラウザタブが開いていました。この動作によって、不必要なタブが複数開かれる可能性がありました。今回の変更により、ウィジェットはリンクが現在のアプリケーションを指しているかどうかを検出し、同じタブで開くようになりました。これにより、タブの煩雑さが減り、アプリケーション内のナビゲーションがスムーズになり、ユーザーエクスペリエンスが向上します。

マップウィジェットにおける緯度および経度入力の正確な処理

マップ」ウィジェットは、空の緯度および経度入力やゼロの緯度および経度入力を正確に処理するように強化され、緯度と経度の値が許可された範囲内にあることを確認するための入力検証が追加されました。

ローカル開発サーバーを実行しているときにログ出力に表示される正しいポート番号

ng serve コマンドでローカル開発サーバーを実行するとき、ログ出力はデフォルトポートが既に使用されている場合にポート番号を誤って表示していました。これが修正され、ローカル開発サーバーが実際に使用している正しいポート番号が表示されるようになりました。これにより、どのポートが使用されているかの混乱を避けることで、開発者の体験が向上します。

EPL TimeFormatイベントライブラリの新しいユーティリティ関数

以下のユーティリティ関数が、日付と時刻を比較および操作するためにTimeFormatイベントライブラリに追加されました。既存の関数と同様に、新しいユーティリティ関数はローカルタイムゾーン、任意のタイムゾーン、適切な場合にはUTCタイムゾーンで機能します。

  • dateComponent: 指定された日時のタイムゾーンにおける前の真夜中の日時を返します。
  • timeComponent: 指定された日時のタイムゾーンにおける前の真夜中からの秒数を返します。
  • daysSinceEpoch: 指定された日時におけるエポックの開始からのジュリアン日の数を返します。
  • getOffset: 指定された日時におけるタイムゾーンのUTCからのオフセット(秒)を返し、適用される可能性のある夏時間を考慮します。
  • getRawOffset: タイムゾーンのベースオフセット(秒)を返します。これは、夏時間が適用されていない状態です。

例えば、ローカルタイムゾーンで真夜中であるかを確認する方法は2通りあります:

float now := currentTime;

// メソッド 1
if TimeFormat.dateComponent(now) = now
{
     // 今は真夜中です。
}
// メソッド 2
if TimeFormat.timeComponent(now) = 0.0
{
     // 今は真夜中です。
}

使用情報については、EPLのAPIリファレンスを参照してください(ApamaDoc)。これはApama 10.15.5で利用可能です。

分析ビルダーのランタイムパフォーマンスが向上しました

Analytics Builderのランタイムパフォーマンスは、大きなオブジェクトが取り込まれたときに改善されました。

Angular 17 アップグレード

将来のバージョンでは、Angularをバージョン17にアップデートします。この更新により、改善と新機能が追加されますが、既存の実装に影響を与える可能性のある破壊的変更も導入されるかもしれません。

スムーズな移行を確保し、実装に適応できるようにするために、この変更が発生した際にはアップグレードに関するドキュメントを提供します。このドキュメントは、変更点を把握し、コードベースを適切に更新するのに役立ちます。

アラームの再設計と改善

次のバージョンでは、アラーム機能の設計が変更され、視覚的および機能的な強化が行われます。

互換性の破壊

  • AngularJSウィジェットの実装は今後利用できません。カスタムアプリケーションで「アラーム」ウィジェットを使用するには、ユーザーは@c8y/ngx-components/widgets/implementations/alarmsからAlarmsWidgetModuleをインポートする必要があります。新しいアラームビューのみを使用するには、ユーザーは@c8y/ngx-components/alarmsからAlarmsModuleをインポートする必要があります。

視覚的およびUXの強化

  • 「アラーム」ビューとウィジェットでのアラームの表示方法が再設計されました。

機能的改善

  • 「アラーム」ビューは、フィルターを適用できる単一のアラームリストのみを表示します。
  • アラームに関連するすべての情報を含む詳細セクションが導入されました。
  • 「アラームリスト」、「すべてのクリティカルアラーム」、および「最近のアラーム」ウィジェットの機能が統合され、包括的なウィジェット「アラームリスト」になりました。
  • 「アラームリスト」ウィジェットはAngularに移行されました。
  • リアルタイム機能は、自動更新機能に置き換えられました。
  • 既存のウィジェット:「アラームリスト」、「すべてのクリティカルアラーム」、および「最近のアラーム」は、自動的に更新され、新しい「アラームリスト」ウィジェットに移行されます。

ダッシュボードの再設計と改善

次期バージョンでは、視覚的および機能的な強化と新機能を備えた再設計されたダッシュボードを導入します。

視覚的およびUXの強化:

  • ダッシュボードの編集方法を再設計しました。

機能的改善:

  • ロック/ロック解除機能は、より良い制御と明確さのために編集モードに置き換えられました。

新機能:

  • デバイスダッシュボードのためにダッシュボードテンプレートを有効化または無効化する機能。
  • ダッシュボードの変更を管理及び追跡するためのバージョニング。
  • 柔軟な調整のためのアンドゥ/リドゥ機能を備えた編集モード。

詳細については、ダッシュボードの操作を参照してください。

アセットセレクターの検索結果が通常の検索と一貫性を持つようになりました。

以前は、アセットセレクター検索が通常の検索と異なる結果を返しており、アセットを選択する際に混乱や不一致が生じる可能性がありました。この変更により、アセットセレクター検索は現在、通常の検索と同じ結果を返すようになりました。この改善により、アプリケーション全体で一貫した検索体験が確保され、ユーザーが望ましいアセットを見つけて選択しやすくなります。

カスタムユニットがデータポイントのユニットをオーバーライドします

場合によっては、ユーザーがデータポイントの単位をカスタム単位でオーバーライドしたいと考えます。以前は、データポイントの単位が手動で指定された単位よりも優先されていましたが、これは望ましい動作ではありませんでした。この変更により、手動で提供された単位が実際のデータポイントの単位に比べて優先されるようになりました。これにより、ユーザーが指定したカスタム単位が常にデフォルトのデータポイントの単位の代わりに使用されることが保証されます。

ユーザーは自分のパスワードを適切にリセットできます

一部のケースでは、ユーザーがパスワードリセットフォームを使用して新しいパスワードを設定できないことがありました。この問題は解決され、ユーザーは現在、期待どおりにパスワードを正常にリセットできるようになりました。

新しいアプリケーションをAngular CLIでスキャフォールディングする際のバージョン選択の明確化

Angular CLIの新しいコマンドは、Web SDKベースのAngularプロジェクトを作成と管理するために使用され、以前はバージョンの制限が3でした。これが5に引き上げられ、ユーザーは新しいプロジェクトを作成する際に、より幅広いWeb SDKバージョンから選択できるようになりました。さらに、「latest」タグがプロンプトで正しいWeb SDKバージョンのために常に表示されなかったバグが修正されました。この変更により、ユーザーはWeb SDKの最新の安定版の横に「latest」タグを見ることができ、新しいプロジェクトを作成する際に希望のバージョンを選択しやすくなります。これらの変更は、Angular CLIの新しいコマンドプロンプトを使用する際のユーザーエクスペリエンスと柔軟性を向上させます。

固定ファイルカウンタ

ファイルリポジトリでは、表示されるファイルの総数のカウンターが不正確な値を表示するか、まったく表示されないという問題が修正されました。

冗長なアクティビティログエントリをフィルタリングしました。

アプリケーションの詳細における冗長なアクティビティログエントリは、現在フィルタリングされています。

冗長な監査ログエントリの作成を修正しました。

カスタムアラームプロパティを更新しても、アラーム解除に関する誤解を招く情報を含む冗長な監査ログエントリが作成されなくなりました。

ダウンロードしたファイルの名前に関する問題を修正しました

プラットフォームからダウンロードしたファイルの名前に関する問題を修正しました(例えば、ファイルリポジトリやイベント添付ファイルから)。ファイル名に"+“のような特殊文字が含まれている場合、UTF-8文字(例えば、日本語ローカライズの文字)が欠落することはなくなりました。

インベントリロールを持つユーザーは新しいグループを追加できます。

在庫ロールのみを持つユーザーが新しいグループを追加できない問題を修正しました。

未委譲のアクションボタンを修正しました

ユーザー詳細の未デリゲートアクションボタンが機能していませんでした。この機能を再度有効にすることで修正されました。

インベントリロールタブのページネーション

ユーザーの詳細のインベントリロールタブにページネーションを実装し、大量のグループとサブグループに関する問題を修正しました。

翻訳に関する具体的なテキストが提供されていないため、翻訳を行うことができません。提供していただければ、そのテキストを日本語に翻訳いたします。

管理アプリケーションでは、接続ページのSIMプロバイダ設定タブに不足していた翻訳が追加されました。

ファイルアップロード用のプログレスバー

ファイルリポジトリにファイルをアップロードする際、各ファイルごとに別々の進捗バーが表示されるようになりました。

デフォルトのグローバルルールの問題を修正しました

デフォルトのグローバルロールのいくつか(例えば、「デバイス」)をクローンする際の問題を修正しました。

ユーザー管理者は他のユーザーのパスワードを設定できなくなります。

前に発表したように、セキュリティを向上させるために、今後のバージョンから、ユーザー管理者はテナント内の他のユーザーのパスワードやメールアドレスを明示的に設定できなくなります。この変更により、管理者アカウントが侵害された場合に攻撃者がすべてのユーザーにアクセスできることが防止されます。なお、管理者は引き続き、ユーザーに次回のログイン時にパスワードをリセットさせるか、ユーザーを無効にするオプションを持っています。

3-party protobuf-javaの更新

セキュリティの脆弱性(CVE-2022-3509、CVE-2022-3510、CVE-2022-3171)に対処するために、サードパーティ製ソフトウェア“protobuf-java”がバージョン3.19.2からバージョン3.19.6に更新されました。

インベントリAPIのパフォーマンスが向上しました

Inventory APIのGET /managedObjectsのパフォーマンスが向上しました。

/user/usersへのGETリクエストのパフォーマンス向上

/user/users エンドポイントの GET リクエストのパフォーマンスが改善されました。

null値を持つフィールドの検索が可能になりました。

マネージドオブジェクトAPIで使用されるクエリ言語が改善されました。これにより、null値を持つフィールドを検索できるようになりました。

アラームのステータスと重大度は現在、大文字小文字を区別しません

アラームのステータスと重大度は現在、大文字小文字を区別しません。アラームステータス active で検索すると、APIはステータス ACTIVE のアラームも返します。同様に、アラームの重大度についても、critical アラームを検索すると CRITICAL アラームも返ります。ステータスが active および acknowledged のアラームは、現在アラームの重複除去の対象となります。

Apama コレレータ バージョン

このバージョンの Things Cloud ストリーミング分析には、Apama バージョン 10.15.4 コレレーターが含まれています。
EPLアプリの開発者は、Apama ドキュメント内の Apama 10.15.4の新機能 も参照してください。

拡張説明クエリ結果

ExplainQueryの結果情報は、インベントリロールを持つユーザーのクエリを実行する際に使用されるアルゴリズムによって拡張されました:

GET /inventory/hierarchy/info/management

例:{“algorithm”: “Legacy” }

可能な結果:Legacy, LimitedSourcesAcl, PostFilteringBySourceAcl, SingleSourceAcl, HierarchyAcl, SingleAgentAcl, SingleDeviceAcl, SingleAgentAndDeviceAcl

デバイスのログファイルは現在ダウンロード可能です。

場合によっては、プラットフォームに保存されたデバイスのログファイルを、ログタブからダウンロードできないことがあります。これは、正しいユーザー認証情報を使用してリクエストすることで対処されています。

基本的な診断情報

EPLメモリプロファイラのスナップショットは、以前は強化された診断情報にのみ含まれていましたが、現在は基本的な診断情報にも含まれています。これは、高いメモリ使用量のアラームが発生し、Apama-ctrlマイクロサービスがマイクロサービスコンテナに許可された最大メモリの90%を消費している場合に、基本的な診断情報しか利用できない時に役立ちます。ユーザードキュメントの「診断とログのダウンロード」も参照してください。

ユーザーリストのページネーションチェックの修正

ユーザーリストのページネーションチェックが変更され、重複リクエストを防ぐようになりました。

分析モデルとEPLアプリをダウンロードするためのコマンドの名前を変更しました。

分析モデルやEPLアプリをダウンロードするためのコマンドは、エクスポートからダウンロードに改名されました。詳細については、モデルをダウンロードするおよびストリーミング分析アプリケーションを使用したアプリの開発を参照してください。

新しいEPLサンプル

新しいEPLサンプル「更新通知の受信」が、ストリーミング分析アプリケーションのEPLエディタからアクセス可能になりました。
これは、管理オブジェクト、メジャーメント、アラーム、イベント、およびオペレーションの作成および更新に関する通知を区別できるEPLアプリの書き方を示しています。
ユーザードキュメント内のストリーミング分析アプリケーションでのアプリの開発もご覧ください。

詳細情報については、Things Cloudトランスポートコネクティビティプラグイン向けのApamaドキュメント内の更新通知の受信をご覧ください。

ユーザー階層管理のパフォーマンスを改善しました。

ユーザー階層管理のパフォーマンスを改善し、サブユーザーリストを展開する際に実行されるサーバーリクエストの数を削減しました。

最新のメジャーメント値は、デバイス管理オブジェクトの一部として保存できます。

機能プレビュー
この機能はパブリックプレビューにあり、デフォルトでは有効になっておらず、将来的に変更される可能性があります。

c8y_LatestMeasurements フラグメントの下での測定値の自動永続化のサポートが導入されました。設定と一致するシリーズで測定が作成されると、そのデバイスのマネージドオブジェクトはプラットフォームに送信された最後のシリーズで更新されます。

すべての入力ソースから入力を受け取る

Analytics Builderの入力ブロックは、すべての入力ソースからの入力を受け取るように構成できるようになりました。すべての入力ソースからの入力を使用する単一のAnalytics Builderモデルを作成することで、グローバルタスクを簡素化できます。たとえば、アラームを発生させたデバイスに関係なく、生成されたすべてのC8Y_TemperatureAlarmタイプの重大アラームについてメールを送信します。この目的のために新しいすべての入力オプションが利用可能です。

モデルに新しいブロックを追加するか、新しいテンプレートインスタンスのパラメータを編集する際、すべての入力オプションはデフォルトで設定されます。また、ユーザードキュメントのブロックのパラメータの編集もご覧ください。

入力ソースを置き換える際に、置き換えダイアログボックスに新しいすべての入力オプションを使用することもできます。置き換えダイアログボックスは、入力ブロックと出力ブロックの両方に使用されることに留意してください。そのため、デバイスを新しいすべての入力オプションに置き換えると、一致する出力デバイスは自動的にトリガーデバイスに変更されます。ユーザードキュメントのソースまたは宛先の置き換えもご覧ください。

“入力ソースごとの測定の集約"という新しいAnalytics Builderサンプルが利用可能になりました。これは、指定されたフラグメントとシリーズを持つ各入力ソースの測定値を平均化する新しい測定を作成します。これは、テンプレートパラメータなしでモデルを作成するシンプルなサンプルであり、モデルマネージャーで直接モデルをアクティブにできます。ユーザードキュメントのサンプルタブもご覧ください。

インベントリAPIの全文検索機能における計画された変更

今後のバージョンでは、全文検索機能には以下のプロパティのみが含まれます:

  • _id
  • name
  • type
  • owner
  • external id

テキスト検索機能は、GET {url}/inventory/managedObjectstext パラメータに対応しています。

例:次のクエリを実行する場合:GET {url}/inventory/managedObjects?text=c8y_MajorDevice では、プロパティ idnametypeowner および external id のみが検査されます。

この変更により、テキスト検索機能のユーザーエクスペリエンスが改善され、関連性の高いマネージドオブジェクトが返されます。同時に、インベントリAPIのパフォーマンスも向上します。

この変更は早くても3カ月後に実施されます。

定数値ブロックの追加値タイプ

Constant Valueブロックは、分析ビルダーで floatboolean の値タイプをサポートするようになり、これらのタイプの出力を生成できるようになりました。これにより、ブロックの出力は、LogicAggregate カテゴリのブロックのように、float または boolean タイプの入力を受け取る他のブロックによって消費されます。Type パラメータは現在オプションになっています。タイプが選択されていない場合、出力値のタイプは Value パラメータから推論されます。

バージョン付きアプリケーションの解凍に関する問題を修正しました。

コアの起動時にバージョン管理されたアプリケーションがアンパックされない可能性がある問題を解決しました。この問題により、一部のリクエストで404エラーが発生していました。

テンプレートパラメータの削除

分析ビルダーでは、テンプレートパラメータダイアログボックスからテンプレートパラメータを削除するためのアイコンが提供されるようになりました。したがって、行の末尾にあるアクションメニュー(縦に並んだ3つのドット)は削除されました。ユーザードキュメントのテンプレートパラメータの管理も参照してください。

新しいテキストインデックス

新しいテキストインデックスがGET /inventory/managedObjects エンドポイントに導入されました。デフォルトでは、以下のフィールドのみが含まれています:

_id, type, name, owner, externalIds

テンプレートパラメータのための選択リスト

Analytics Builderテンプレートパラメータのための選択リストを作成できるようになりました。これにより、モデル作成者はユーザーが選択できる事前定義された値のリストを提供でき、ユーザーが入力する値を制限できます。

文字列、浮動小数点数、ソースまたはデスティネーション、またはジオフェンスのようなタイプに対して選択リストを定義でき、特定の値をデフォルト値として選択することもできます。選択リストのために定義した値は、モデルのインスタンスを作成する際に選択可能になります。

ユーザードキュメントのテンプレートパラメータのための選択リストの追加も参照してください。

デバイスグループまたはアセット階層内のサブアセット不足時のエラー解消

以前、分析ビルダーのモデルを再アクティブ化する際に、モデルがイベントを受け取るデバイスグループまたはアセット階層の子アセットがインベントリに存在しなくなった場合、エラーが発生しました。たとえば、デバイスが削除された場合です。
このバージョンから、デバイスグループまたはアセット階層内の欠落した子アセットは無視され、エラーは発生しなくなります。
ただし、子アセットの削除によりデバイスグループまたはアセット階層が空になる場合は、依然としてエラーが発生します。

機械学習の削除

リリース10.18で発表されたように、分析ビルダーの機械学習ブロックは削除されました。

インベントリAPIクエリの新しいソート方法

ユーザーがUIまたはインベントリAPIから検索を行うと、テキストパラメータが関連性によってソートされるため、より適切なデータが返されるのがわかりやすくなりました。

Apama 10.15.4における新たな定数の追加

AlarmおよびOperationイベントには、それぞれのステータスおよび重大度メンバーの有効な値を定義する新しい定数があります。これにより、より堅牢なコーディングが可能になり、リテラル文字列のタイプミスによるランタイムエラーを排除できます。

シングルサインオン構成における外部トークンの検証

シングルサインオンの設定ページで、ユーザーは外部トークン検証プロセスを有効化し、設定できるようになりました。

アクセスマッピングセクションにおける保存ボタンの問題を修正しました。

アクセスマッピングセクションでデフォルトのグローバルロールやデフォルトのアプリケーションなどのデータが変更された場合、保存ボタンが現在アクティブになっています。

Apama 10.15.4におけるREST APIの変更の反映

Things Cloudに関する変更がリリース10.18で発表されたため、Apama 10.15.4では適用可能なリクエストに対してwithTotalPagesが明示的にtrueに設定されます。

範囲ベースのクエリ(例えばFindManagedObject)は、デフォルトでクエリパラメータに一致するすべてのリソースを取得しようとします。currentPageの値を明示的に設定するか、withTotalPagesfalseに設定することで、ページングを無効にし、クエリパフォーマンスを向上させることができます。

Apama 10.15.4のHTTPクライアントは、レスポンスの切り捨てをサポートしています。

HTTPクライアントには、サーバーからのレスポンスサイズを制限するための2つの新しい設定可能なオプション、maxResponseKBmaxResponsePolicyが追加されました。これらのオプションは、全体のトランスポートや個別のリクエストに対して設定できます。また、事前定義されたイベント定義へのサポートも追加されました(詳細はJSONおよび文字列ペイロードを使用してHTTPサービスを呼び出すための事前定義された汎用イベント定義の使用を参照してください)。これにより、大きなサーバーレスポンスがメモリ不足の問題を引き起こすのを防ぐことができます。

強化されたOpenSSLコマンド

Proof of Possessionのための「署名付き検証コード」を生成するためのOpenSSLコマンドが、追加のエンコード機能を含めるように強化されました。

ウェブアプリケーションのコピーとバージョン

ウェブアプリケーションのバージョン(パッケージ)とSHARED可用性を持つウェブアプリケーションをコピーすることが現在可能になりました。バージョンを持つアプリケーションの場合、デフォルトで「latest」タグの付いたアプリケーションがコピーされます。新しいアプリケーションには単一のバージョンがあり、タグはありません。異なるバージョンのアプリケーションをコピーしたい場合は、クエリパラメーター「tag」または「version」(単一のバージョンのみ)を指定できます。

パッケージのバージョンマトリックス

リポジトリ接続マイクロサービスは、バージョニングマトリックスを含むパッケージの同期を提供するようになりました。これにより、同期されるバージョンを正確にフィルタリングできます。マトリックスに含まれていないがプラットフォームにアップロードされたバージョンは、マイクロサービスによって削除されます。

サブテナントのためのパスワード検証の改善

サブテナントの作成時に管理者ユーザーのパスワードを設定する際、パスワードの検証は選択したテナントのポリシーに基づいています。この場合の例外は、システムレベルで強力なパスワードの使用が強制されている場合です。既存のサブテナントの管理者ユーザーのパスワードを設定する際、パスワードの検証は現在のテナントのセキュリティ設定に基づいています。

新しいフィルターオプション

アイテムの検索は、アプリケーション、機能、マイクロサービス、および拡張リストでのフィルタリングによって改善されました。

Apama 10.15.4におけるEPLの強化

文字列結合演算子 + は非文字列オペランドをサポート

オペランド式のうち一方が string 型の場合、他方のオペランドは実行時に文字列に変換されます。 詳細については、Apama ドキュメントの 加算演算子 をご覧ください。

文字列、配列、辞書に新しい便利な組み込みメソッド

EPL言語は、文字列や配列が指定された部分文字列や項目を含むかどうかを確認したり、文字列、配列、辞書が空かどうかを判断するなど、一般的な操作のためのいくつかの便利なメソッドを追加されました。

指定したインデックスに値が存在しない場合にフォールバックのデフォルト値を持つ配列値を取得するメソッドがあります:

mySequence.getOr(100, "default value");

また、正規表現グループ検索を使用して文字列内の最初の一致を見つけ、正規表現の各 “(…)” グループでキャプチャされたテキストを返す強力なメソッドがあります:

// ["Bob", "Eve"] を印刷
 print "Today Bob met Eve".groupSearch("([a-zA-Z]) met ([a-zA-Z])").toString();

以下の表は新しいメソッドを一覧にしています:

新しいメソッド 説明
string.contains(), sequence.contains() 文字列または配列が指定された部分文字列や項目を含むかどうかを判断します。これは find() または indexOf() の整数値をチェックする便利な代替手段です。
string.groupSearch() この文字列内で最初の正規表現の一致を見つけ、一致した “(…)” グループのリストを返します。
string.startsWith(), string.endsWith() 文字列が指定された接頭辞または接尾辞を持っているかどうかを判断します。
string.rfind() この文字列内で右側(つまり、文字列の末尾から)から文字列を検索します。
string.substringFrom() 指定した文字から始めて、文字列の最後までの部分を抽出します。
string.quote() 標準EPLイベント表現に従って引用符とエスケープを追加します。このメソッドは、スペースや改行文字を含む可能性のある文字列をログに記録するのに役立つことがあります。これは既存の string.parse() メソッドの逆になります。
string.isEmpty() 文字列の長さがゼロ文字かどうかを判断します。
dictionary.isEmpty(), sequence.isEmpty() サイズが0かどうかを判断します。
any.isEmpty(), optional.isEmpty(), listener.isEmpty(), Channel.isEmpty(), chunk.isEmpty() これらの型の既存の empty() メソッドのエイリアスです。新しい isEmpty() メソッドを使用することを推奨しますが、empty() の使用は非推奨ではありません。
sequence.getOr() 指定されたインデックスの値を取得し、インデックスが無効な場合は指定されたフォールバック値を返します。

詳細については、EPLのAPIリファレンス (ApamaDoc) を参照してください。

配列[…] アクセスのための負のインデックスのサポート

範囲外例外がスローされる代わりに、負のインデックスを指定することで配列の末尾近くの項目を参照することが可能になりました。たとえば、seq[-1] は配列の最後の項目を、seq[-2] はその前の項目を返します。負の配列インデックスは sequence.remove() および sequence.insert() メソッドでも使用できます。

any.getEntry() メソッドを使用して配列項目にアクセスする際には、負の値を指定できないことに注意してください。

混合型の配列および辞書リテラルはデフォルトで <any> として扱われます

異なる型が混在する配列または辞書リテラルの最初の項目の周りに <any> キャストを追加する必要がなくなりました。たとえば、次の配列リテラルは sequence<any> を生成します:

[<any> 12345, "a string"]

これが次のように簡略化できます:

[12345, "a string"]

これはApamaドキュメントの EPLの10.15.3での拡張 での機能的な例を簡素化します:setFields 呼び出しで <any> はもはや必要ありません。

未使用の戻り値の破棄

EPLでは、関数や式の戻り値を破棄し、変数に割り当てないことが可能になりました。これは、関数の副作用だけを取得したいが戻り値は必要ない場合に便利です。プログラムが使用する可能性のある重要な条件を示す戻り値を破棄しないように注意してください。

以前は次のように書く必要がありました:

any _ := Functional(newAlarms).map(Fn.getEntry("alarm")).map(allAlarms.append);

しかし現在は次のように書けます:

Functional(newAlarms).map(Fn.getEntry("alarm")).map(allAlarms.append);

詳細については、Apamaドキュメントの 式をステートメントとして使用 を参照してください。

機能的演算子

com.apama.functional.Fn および com.apama.functional.Functional イベントには、キーを変更した辞書コンテナを返す新しいメソッド mapKeys が追加されました。詳細については、Apama ドキュメントの 機能的演算子 および EPLのAPIリファレンス (ApamaDoc) を参照してください。

機能的リスナー

機能的な onTimeout アクションは、作成された待機リスナーを返すようになったため、必要に応じて終了することができます。詳細については、Apama ドキュメントの 機能的リスナー を参照してください。

捕捉されない例外の処理

EPLモニタは、特定の場合に捕捉されない例外がスローされるとデフォルトで終了しなくなりました。

プログラミングエラーや受信イベント内の予期しないデータは、EPLで捕捉されない例外を引き起こす可能性があります。これにより、モニタインスタンスが終了し、アプリケーションが使用できなくなります。より良い体験を提供するために、リスナーやストリームリスナーからの捕捉されない例外はもはやモニタインスタンスを終了させず、現在のイベントの処理を停止するだけとなります。

開発者は引き続き、EPL内で例外を正しくキャッチして処理することが推奨されています。例外がスローされてキャッチされない場合、イベントが失われたり正しく処理されない可能性があります。

これは動作の変更です。一部のユーザーは、以前の動作に依存している場合があります。特に ondie() アクションの組み合わせと。ondie() アクションを持つEPLは、常にモニタを終了し、ondie() を呼び出す以前の動作を保持します。以前の動作を保持する必要がある場合は、モニタに空の ondie() アクションを追加できます。

備考
ストリームクエリ内から呼び出されるアクション(例えば、wheregroup by 句、またはウィンドウ定義の一部として)で例外をスローする場合、このアクションはモニタインスタンスを終了させます。
com.apama.cumulocityのイベントの更新

Things Cloud に向けてイベントが送信されているのか、Things Cloud からの更新として受信されているのかの混乱を避けるために、Cumulocityイベント定義APIは以前のリリース(10.5.2.0)で変更され、既存の CHANNEL 定数は非推奨となり、適切に SEND_CHANNEL または SUBSCRIBE_CHANNEL 定数に置き換えられました。これらの変更でいくつかのイベントが省かれ、これが修正されました。したがって、次のイベントで CHANNEL 定数は非推奨です:

  • SubscribeMeasurements
  • UnsubscribeMeasurements
  • FindManagedObjectResponseAck
  • FindMeasurementResponseAck
  • GenericResponseComplete
  • Subscribe
  • Unsubscribe

さらに、代わりに次のイベントに新しい SUBSCRIBE_CHANNEL または SEND_CHANNEL が追加されました:

  • SubscribeMeasurements
  • UnsubscribeMeasurements
  • Subscribe
  • Unsubscribe

次のイベントの定数は、それに対応する Response タイプの SUBSCRIBE_CHANNEL 定数に置き換えられます:

  • FindManagedObjectResponseAck
  • FindMeasurementResponseAck
  • GenericResponseComplete

EPLのAPIリファレンス (ApamaDoc) は、確認イベントは常に対応するレスポンスイベントと同じチャネルで受信されることを明確にし、混乱を避けるために、これらの確認イベントで定義されていた CHANNEL 定数は非推奨とされています。

パッケージの可用性

使いやすさを向上させるために、パッケージのアップロードウィザードでパッケージの可用性(SHAREDまたはPRIVATE)を設定できるようになりました。

スケジュールされたエクスポートのためのメールテンプレートの問題を修正しました。

Enterpriseテナントの設定からそのサブテナントへのスケジュールされたエクスポート用のメールテンプレートが伝播されない問題を修正しました。

パスワード強度インジケーターの問題を修正しました。

パスワードの強度インジケーターが正しく更新され、パスワードが強度の条件を満たすと、保存ボタンが利用可能になります。

使用統計ページでのツールチップの変更

使用統計ページのCPU列のツールチップで「ミリ秒」が「ミリコア」に変更されました。

改善されたマイクロサービスのサブスクリプション

APIを介してバイナリを提供せずに作成されたマイクロサービスは、エラーメッセージなしで再度サブスクライブできます。

ブループリントアプリケーションの適切な更新

親テナントから共有されたブループリントアプリケーションは、今や適切に更新できるようになりました。

デバイス交換のための新しいウィザード

デバイス管理アプリケーションでは、ユーザーが物理デバイスを別のデバイスに交換する際にガイドするウィザードが実装されています。交換するデバイスは事前にプラットフォームに登録されている必要があり、交換手続きが完了した後に削除されます。

デバイスの詳細におけるカスタマイズ可能なダッシュボード

ユーザーは、デバイス詳細の Info タブでダッシュボードをカスタマイズできるようになりました。ウィジェットは移動したりサイズ変更したりでき、利用可能なウィジェットのリストから新しいウィジェットを追加できます。ダッシュボードはいつでもデフォルトのダッシュボード設定にリセットできます。デフォルトでは、「アセットノート」ウィジェットが削除されています。

ソフトウェアアイテムの削除

ソフトウェアの最新バージョンが削除されると、ソフトウェアはリポジトリから完全に削除されます。

デバイス登録プロセスの改善

登録リストに保留中のデバイスが受け入れられた場合、そのデバイスはリストから削除され、デバイスの「受け入れられた」ステータスがリストに表示されなくなります。

改善されたスマートグループフィルターレイアウト

サブアセットビューでは、スマートグループフィルターが生のテキストフィルターを表示する代わりに、フィルターチップドロップダウンで表示されるようになりました。

ソフトウェアタイプによる改善されたフィルター

デバイスの詳細にある ソフトウェア タブでは、現在 ソフトウェア型でフィルター ドロップダウンが インストール済みソフトウェア リストおよび ソフトウェアをインストール モーダルに表示される型は、ソフトウェアリポジトリに存在する型に基づいています。これが変更され、デバイスがその c8y_SupportedSoftwareTypes フラグメントで発表したサポートされているソフトウェア型のみが表示されるようになりました。デバイスがサポートされているソフトウェア型を発表していない場合は、再びすべての利用可能な既存のソフトウェア型がリストされます。

新しい静的テンプレート 201

SmartREST静的テンプレート201を追加し、複数のフラグメントとシリーズを持つメジャーメントを作成できるようにしました。

新しい静的テンプレート 125

デバイスからのハートビートを送信するために、SmartREST静的テンプレート125を追加しました。

新しい静的テンプレート 507

静的テンプレート507を追加しました。これにより、デバイスのオペレーションステータスをEXECUTINGからFAILEDに変更できます。オペレーションはタイプでフィルタリング可能です。このテンプレートは、クラッシュ後のオペレーションのクリーンアップを容易にすることを目的としています。

カスタマイズ可能なホームダッシュボード

デバイス管理のホームページでは、ユーザーがカスタマイズ可能なウィジェットを追加できるカスタマイズ可能なダッシュボードも提供されています。

MQTT接続のパフォーマンス向上

MQTT接続のパフォーマンスが改善されました。MQTTデバイスは、プラットフォームにすでに多数のMQTTデバイスが接続されている場合、特に迅速に接続または再接続できるようになりました。

アラーム、イベント、メジャーメントAPIに必要なパラメータを導入しました。

以前に発表されたように、リリース 10.18を参照してください。影響を受けるデータを制限する少なくとも1つのクエリパラメータが、バルク削除操作中にあまりにも多くのオブジェクトが誤って削除されるのを防ぐために必要になりました。
この変更は以下のAPIに影響します。

  • DELETE /alarm/alarms は以下のパラメータのいずれかを少なくとも1つ必要とします: source, dateFrom, dateTo, createdFrom, createdTo
  • DELETE /event/events は以下のパラメータのいずれかを少なくとも1つ必要とします: source, dateFrom, dateTo, createdFrom, createdTo
  • DELETE /measurements/measurement は以下のパラメータのいずれかを少なくとも1つ必要とします: source, dateFrom, dateTo

SmartREST インベントリ GET テンプレートの問題が修正されました。

SmartRESTインベントリGETテンプレートは、テンプレート内に外部IDタイプが宣言されていない場合、UIで作成されてもレスポンスを生成しませんでした。この問題は、既存のテンプレートと新しく作成されたテンプレートの両方について対処されました。

固定デバイスの利用可能性接続ステータスが点滅しています

デバイスの接続状態をフラッシュする際の問題が修正されました。

エリクソンDCP SMSプロバイダーの問題が修正されました

エリクソンDCP SMSプロバイダーに関連するSMS送信時の問題が解決され、送信リクエストは予想通りにエリクソンDCP APIに送信されます。

デバイスグリッドの問題フィルターが修正されました

デバイスグリッドにおいて、フィルター適用に関する問題が修正されました。

SmartRESTテンプレートエディタの問題が修正されました

スマートRESTテンプレートエディタでは、インベントリPOSTメッセージの外部IDタイプフィールドの表示に関する問題が修正されました。CSVプレビューの下で生成された「テンプレート作成CSV」は、「ID」、「externalId」と「externalIdType」値を含むように調整されました。

クエリ動作の改善

REST APIは、クエリ基準が提供されない場合、もはやtotalPages値を返しません。

デバイスシミュレータマイクロサービスに適切なアプリケーションキーヘッダーが追加されました

デバイスシミュレータマイクロサービスは、アプリケーションキーヘッダーなしでいくつかの内部リクエストを送信しました。そのため、これらのリクエストがデバイスリクエストとしてカウントされました。すべてのリクエストが正しくカウントされるように、適切なアプリケーションキーヘッダーが追加されました。

デバイングリッド内のグループフィルターの問題を修正しました

デバイスグリッドのグループフィルタに関する問題が修正され、空の結果リストが表示されないようになりました。最初に一致するアセットがフィルタ値として正しく表示されるようになりました。

デバイスリストは複雑な列を正しく表示します

デバイスリストは、c8y_SoftwareList のような複雑な列を文字列に変換した後、正しく表示されるようになりました。

証明書の読み込みの不具合を修正しました。

コアの起動/再起動中に信頼ストアへの証明書の読み込みに関する問題を修正しました。この問題により、証明書を使用したMQTTデバイスの認証でエラーが発生していました。

トップレベルグループからアラーム列が削除されました

アラームの列は、グループ自体がアラームを含まないため、トップレベルグループから削除されました。この列は直接のアラームのみを表示します。

MongoDB Javaドライバのバージョンアップグレード

MongoDB Javaドライバが最新バージョン4.10.2にアップグレードされました。

デバイスプロファイルリポジトリのアイテムが正しく表示されるようになりました。


デバイスプロファイル ページでは、リポジトリアイテム(ソフトウェア、ファームウェア、構成)を追加する際に、デバイスプロファイルにデバイスタイプが定義されている場合、表示されるアイテムはこのデバイスタイプに対応しているか、デバイスタイプが指定されていないものになります。いくつかの場合、フィルターなしのリポジトリアイテムがアイテム追加ウィンドウに表示されませんでしたが、これらのアイテムは現在正しく表示されます。


デバイスグリッドはアラートを表示します

デバイスグリッドは、デバイスデータの取得中に問題が発生した場合にアラートを表示するようになりました。これには、無効なフラグメントパスで構成されたカスタム列によって引き起こされるエラーなどが含まれます。

creationRampプロパティに対する制限が導入されました

一括操作では、creationRampプロパティに制限が導入されました。これにより、一括操作の作成をより良く制御でき、指定された制限に準拠することが保証されます。これらは決定され、システムオプションdevice-control.bulkoperation.maxcreationrampおよびdevice-control.bulkoperation.mincreationrampによって変更可能です。

グリッドコンポーネントのフォーマットが間違っている値を修正しました。

データグリッドおよびデバイスグリッドコンポーネントにおいて、特定の文字列、ブール値、および数値のセル値が誤って日付としてフォーマットされる問題を修正しました。

デバイスプロトコルの詳細を編集した後の確認ポップアップ

デバイスプロトコルの詳細ページを編集してページを離れると、確認ポップアップが常に正しく表示されるようになりました。

時間間隔の可用性計算の修正

「可用性」概要および個々のデバイスにおける可用性計算が正しくありませんでした。パーセンテージは、各時間(24時間、過去7日間、過去30日間)に加えて追加の24時間に対して計算されていました。時間間隔は現在修正されました。

メジャーメントシリーズの読み込みの改善

以前、メジャーメントチャートデータをロードする際、メジャーメントシリーズに単位が定義されていない場合、メジャーメントレコードの総数に依存してパフォーマンスの問題が発生していました。この問題は解決され、メジャーメントシリーズは単位の定義にかかわらず効率的にロードされるようになりました。

許可されていない文字を含むメジャーメントフラグメントの作成が防止されました。

デバイスプロトコルでは、ユーザーはもはや測定フラグメント(メジャーメントタイプメジャーメントシリーズ フィールド)を作成できません。これらのフラグメントには、Measurements API によって許可されていない文字が含まれているためです。

誤った監査ログエントリが修正されました

以前は、IDの衝突が発生した場合、無関係な監査ログのエントリが一括操作の「変更の履歴」ビューに不正に表示されることがありました。これは現在解決されました。c8y/ngx-components において、c8y-audit-log コンポーネントは現在 type 入力を受け付けます。

数値フィールドは、テキスト表現を使用して定義できるようになりました。

以前は、CANバスプロトコルが最大値フィールドにおける数値の表現を制限しており、非常に大きな数値を扱う際に制約がありました。この制約に対処するために、数値フィールドをテキスト表現を使用して定義できる変換メカニズムを実装しました。

改善されたファイルアップロード動作

ファイルリポジトリでは、ファイルを選択し、それを破棄した後に再度選択してアップロードすることが可能になりました。以前は、一度破棄されたファイルは選択できませんでした。

プラットフォーム設定フォームがangularに移行されました。

プラットフォーム設定フォームは、Schema-formが削除され、Angularに移行されました。

新しいウィザードレイアウト

「スマートフォンを接続」ウィザードのイラストが更新されました。

ダッシュボードコピーボタンの問題を修正しました。

ダッシュボードをコピーボタンは、ユーザーに該当する権限がない場合は無効になります。

Availabilityの日本語訳は「可用性」です。

UIの「可用性」という用語は、コンテキストに応じて日本語で異なる翻訳を提供します。この改善により、日本市場向けのローカリゼーションがより適切に調整されました。

EnterキーとEscapeキーの一貫したサポート

以下のビューで、EnterキーとEscapeキー(それぞれ保存とキャンセルのアクション)のサポートの一貫性が向上しました:テナントの詳細ユーザーの詳細グローバルロールの詳細データ保持ルールの設定ブランディング設定

HTTPエラーの問題が修正されました

DELETE /inventory/managedObject/{id} エンドポイントが即座に完了せずにバックグラウンドで継続していた場合、プラットフォームは 204 の代わりに 202 HTTP コードを返しました。これが修正されました。

HTTPステータス500レスポンスを修正しました

リクエスト中にテナントの1つが削除された場合、/tenant/statistics/allTenantsSummaryからのHTTPステータス500レスポンスが発生する稀な状況を修正しました。

Measurement APIは先頭ゼロを受け入れます

Mesurement APIは、測定値に提供された先頭のゼロを受け付けるようになりました。

MQTT SSLハンドシェイクタイムアウトのデフォルト値が増加しました

MQTT SSLハンドシェイクタイムアウトのデフォルト値が10秒から50秒に増加し、ハンドシェイクが成功するための時間が増加しました。このプロパティの値はプラットフォーム管理者によって設定可能です。

Notifications 2.0 を使用して特定のマネージドオブジェクトの通知を削除する

Notifications 2.0 サブスクリプションに対する管理対象オブジェクトの通知を削除すること - つまり、managedObjects API の mo コンテキストへのサブスクリプション - は現在、常に送信されます。以前は、これらの通知はすべてのケースで信頼性よく送信されていませんでした。

OAI-Secureログインでのパスワードリセット

ユーザーがOAI-Secureを使用してログインし、パスワード変更が必要な場合、PasswordResetTokenがレスポンスヘッダーに返され、パスワードリセットが可能になります。

OAI-セキュアアクセスのトークン問題を解決しました

OAI-Secureアクセストークンを取得するためのクロスオリジンリクエストに対するアクセス不可のエンドポイントの問題は解決されました。

SCADAウィジェット内のSVGアニメーションがダッシュボードで正しく表示されます

SCADAウィジェットにおけるSVGファイルの問題を修正しました。animateまたはanimateTransformタグは構成プレビューでは正常に機能していましたが、ダッシュボードでは機能しませんでした。

SSOアクセスマッピングログイン設定

SSOアクセスマッピングで使用されているアプリケーションを削除すると、ログイン設定がそれに応じて更新されます。

SSOサーバーへのリダイレクションに関する問題を修正しました。

ログインページからSSOサーバーへのリダイレクトの問題が修正されました。

SSO設定の可読性向上

単一サインオン構成における認可リクエストのresponse_typeリクエストパラメータのデフォルト値はcodeに設定されています。

UIのさまざまな場所におけるアセット名の一貫性

ナビゲータメニューで表示されるグループ/デバイス名が翻訳されている一方で、サブアセットグリッドやデバイスグループセレクタなど他の場所では翻訳されていない問題を修正しました。今後、ナビゲータ内のアセット名は翻訳されません。

アラームAPIの問題を修正しました

アラームAPIがタイプ内にスペースを含むアラームタイプを正しく検索できない問題を修正しました。

アラームソース名の問題を修正しました

アラームの重複除去後にアラームソース名が返されない問題を修正しました。

クエリパラメータによるアプリケーション言語の変更を改善しました

ウェブアプリのロケールは、URLパラメーターlangを介して設定できます。例えば、/apps/administration/index.html?lang=zh-cnのようにです。ロケールコードは大文字と小文字を区別せず、ハイフン-またはアンダースコア_で区切られた2文字または4文字である必要があります。

提供されたロケールコードがサポートされていない場合、ウェブアプリは英語で表示されます。

サブスクライブ解除の確認に関する翻訳の問題を修正しました。

マイクロサービスのサブスクライブ解除中に表示される確認ポップアップでの翻訳が欠落している問題を修正しました。

サポートURL構成の改善されたドキュメント

サポートURLの設定に関するドキュメントが更新されました。詳細はプラットフォームのカスタマイズをご覧ください。この更新により、特定の状況でエンドユーザーに表示されるサポートURLの設定に関する指示の明確さと完全性が向上しました。改善されたドキュメントにより、管理者が必要に応じてサポートURLをカスタマイズしやすくなるはずです。

サポートユーザーのリダイレクションの問題に対処しました。

サポートユーザーとしてプラットフォームにログインすると、管理テナントへのリダイレクトが削除されました。プラットフォームは、管理テナントのコンテキストで認証されても、ログインしたテナントのドメインに対してcookieを設定します。

さまざまなウィンドウタイトルの日本語ローカリゼーションの改善

ダッシュボードおよびレポートの追加と編集のためのダイアログウィンドウタイトルの日本語ローカリゼーションが改善されました。

セキュアでないログインオプションエンドポイントによる情報漏洩の問題を修正しました。

未保護のログインオプションのエンドポイントでは、セッションの構成や認証の制限に関する情報がもはや明らかにされません。

セッショントークンの更新に関する問題を修正しました。

OAIセキュアログインモードが二要素認証で構成されている場合のセッショントークンの更新に関する問題が修正されました。

デバイス証明書認証におけるCRLサポート

管理者は現在、証明書失効リスト(CRL)の設定を構成できるようになりました。証明書が侵害された場合、プラットフォームはデバイス認証プロセス中に失効チェックを実行することができます。管理者は、失効した証明書の詳細を手動で追加できるオフラインモードを選択するか、発行された証明書の認証が失効リストを維持する場合はオンラインモードを選択できます。

デバイス詳細ビューでスマートルールタブのパンくずリストが正しく設定されています

グループビューでは、スマートルールタブのパンくずリストが欠落していました。アプリケーションオプションがパンくずリストを表示するように設定されている場合、パンくずリストは正しく表示されるようになります。

マイクロサービスのサブスクリプションに関する通知の問題を修正しました。

通知は現在、マネージドオブジェクトがマイクロサービスを表す場合に正しく送信されます。以前は、これらのマネージドオブジェクトへの通知のサブスクリプションが、マイクロサービスのサブスクリプションおよびサブスクライブ解除の失敗を引き起こす可能性がありました。

マネージドオブジェクトの削除の改善

ユーザーと一緒にマネージドオブジェクトを削除する信頼性が向上しました。「withUser=true」フラグを使用してマネージドオブジェクトを削除する場合、デバイスユーザーは他のアイテムを所有していない場合に削除されます。

ユーザーエイリアスとTFA SMSを使用したログインが、基本認証で再び信頼性高く機能しています。

ユーザーエイリアスとTFA SMSを使用した基本認証でログインする際に、ランダムな問題(「ユーザーの非活動による無効なTFAトークン」)を修正しました。

ユーザーの問題を修正しました。

サポートユーザーとして他のユーザーのパスワードを変更する際の問題を修正しました。

リアルタイムAPIハンドシェイクレスポンスからデータフィールドを削除しました。

data フィールドは、リアルタイム API ハンドシェイクレスポンスから削除されました。これは必要ない場合に常に “null” 値が設定されていました。

ローカリゼーション文字列は、c8ycliコマンドを使用してWindows上で正しくJSONにコンパイルされます。

Windowsでc8ycli locale-compileに関する問題を修正しました。POファイルへのパスにフォルダが含まれている場合、コンパイルされたJSONファイルが作成されないという問題です。

使用統計ページのクリアボタンは、適用されたフィルタを適切に削除します。

利用統計ページのクリアボタンが適用されたフィルターを解除できない問題を修正しました。

信頼された証明書におけるツールチップの使いやすさの向上

ポップアップ内の署名された検証コードをクリックしても、ツールチップはもう閉じなくなったため、ユーザーはSSLコマンドをコピーできます。ツールチップは、その外側をクリックすることで閉じることができます。

信頼された証明書のプロセスの問題を修正しました

信頼された証明書ページでは、新しい証明書がアップロードされた場合やユーザーによって検証コードがリフレッシュされた場合に、検証コードの取得とリフレッシュが正しく機能するようになりました。

入力フィールド内のプレースホルダーに余分な接尾辞は含まれなくなりました。

標準アプリケーションのいくつかの場所で、バッククォート内に余分なサフィックス(例えば “LOCALIZE")を持つ文字列に関する問題が修正されました。

文字列は、c8ycliコマンドを使用してWindows上のソースコードから正しく抽出されます。

Windowsでc8ycli locale-extractに関する問題を修正しました。ソースコードから文字列が正しく抽出されていないというもので、現在、抽出されたlocales.potファイルにはすべてのエントリが正しく含まれています。

新しいブランドを作成する際にアプリロゴの高さが正しく設定されます

新しいブランディングを作成する際にアプリのロゴの高さが正しく設定されていなかった問題を修正しました。新しいブランディングを生成する際に、アプリのロゴの高さが適切に設定されるようになります。

日付ピッカーは、ピッカーの外側をクリックすると閉じるようになりました。

日付ピッカーの外をクリックすると、カレンダーのドロップダウンが閉じるようになりました。

検証コードは行末文字をサポートしています

証明書所持プロセスで署名された検証コードは、現在、さまざまなオペレーティングシステムの改行文字をサポートしています。

正しい日本の電話番号の例は以下の通りです

日本語の翻訳で使用されている例の電話番号は、以前は無効であり、日本の電話番号の期待される形式と一致していませんでした。この変更により、例の電話番号は、日本に適した有効な形式に更新されました。これにより、日本語を話すユーザーに対して、アプリケーションのテキストやラベルにおいて、よりリアルで関連性のある例を提供することで、ユーザーエクスペリエンスが向上します。

無効なパラメーターに関する問題を修正しました。

Things Cloud REST APIが無効な pageSize または currentPage パラメータの場合に500 HTTPエラーコードを返す問題を修正しました。APIはこのような場合に422 HTTPエラーコードを返すようになりました。

監査ログ項目の詳細表示の改善

監査ログの詳細における古いおよび新しいオブジェクトの値の表示に関する問題を修正しました。関連するオブジェクトに対して行われた変更が監査ログに表示されるようになりました。

管理オブジェクトとバイナリファイルへのアクセスを付与するロールを分離する

管理オブジェクトとバイナリファイルへのアクセスを別々に制御するために、2つの新しい権限が追加されました。この機能により、テナント管理者はオブジェクトへのアクセスをより細かく制御できるようになります。

複数デバイスのスマートルールを有効または無効にするパフォーマンスが向上しました

複数の子アセットに対してスマートルールを有効化または無効化するパフォーマンスが、複数のリクエストではなく単一のリクエストを実行することによって改善されました。

認証パフォーマンスの向上

認証パフォーマンスは、再起動またはアップグレードされたプラットフォームに初めて同時に接続する複数のユーザーまたはデバイスの際に改善されました。

重複した識別子マッピングを修正しました。

デバイスの重複アイデンティティマッピングに関する競合状態の可能性を解消するため、ユニークなデータベースインデックスを導入しました。

Enterキーの一貫した動作

デバイス管理アプリケーションでは、「Enter」キーを押すことでダイアログやウィンドウ内のフォームが一貫して送信されるようになりました。 この変更前は、ユーザーは送信ボタンをクリックする必要がありました。

フィルタリセット時にグリッドフィルターテキストがクリアされない

シンプルな FilteringFormRendererComponent をデータグリッドの列に使用してフィルター入力を表示する際、フィルターがリセットされたときに入力値がクリアされなかった問題がありました。この問題は修正されました。現在、フィルターをリセットすると、入力値が正しくクリアされます。

リアルタイムAPIの問題を修正しました。

リアルタイムAPIにおいて、「再試行不可」とマークされたサブスクリプションが、サーバーへの基本的な接続を再確立した後、例えばCumulocityコアの再起動やネットワーク障害の後に再サブスクライブできてしまう問題を修正しました。

操作の公開時のエラー処理の改善

MQTTデバイスに対して操作を公開する際のエラーハンドリングが改善されました。

証明書管理に関する情報が追加されました。

設定タブの信頼された証明書ページに、証明書管理に関する情報とドキュメントへのリンクが追加されました。

「イベントリスト」ウィジェットのタイムスタンプ幅を拡大しました

「イベントリスト」ウィジェットのタイムスタンプの幅がわずかに広がりました。

「リニアゲージ」ウィジェットカードのツールチップのオーバーフローを修正しました。

「リニアゲージ」ウィジェットのツールチップは、もはやウィジェットカードから溢れません。さらに、ツールチップの色は宣言された範囲のタイプ(デフォルト、赤、または黄色)に応じて変わります。

1つのパッケージから複数のプラグインをインストールする

現在、1つのパッケージからアプリケーションに複数のプラグインをインストールすることが可能になりました。ユーザーは、この特定のプラグインがインストールされているアプリケーションからのみ、プラグインをアンインストールできます。

Angular 15へのアップグレード

Web SDKはAngular 15にアップグレードされました。

C#用マイクロサービスSDKの非推奨

自動生成されたSDKの導入により、異なるプログラミング言語(C#を含む)でのThings Cloudマイクロサービスの開発を促進するために、常に最新の開発者ライブラリを提供します。

新しい自動生成されたSDKにより、既存のC#用マイクロサービスSDKは廃止されました。このため、C#用マイクロサービスSDKは当社の公開製品ドキュメントから削除されました。

自動生成されたSDKの使用方法については、当社のそれぞれのGitHubリポジトリを参照してください。

c8y_Global フラグメントは意図せず null に設定されなくなりました

設定で doNotAddGlobalFragmentByDefault オプションが有効になっている場合、DatapointLibraryModule の構成において、c8y_Global フラグメントは新しいデータポイントライブラリエントリの作成中に意図せず null に設定されることはありません。

c8y/clientパッケージのエクスポートで不足している必要なタイプを調整しました。

@c8y/clientパッケージのエクスポートに必須の型が欠けており、特定のセットアップで問題を引き起こしていました。これが調整されました。

data-gridおよびdevice-gridコンポーネントでの新しいactiveClassName入力

データグリッドおよびデバイスグリッドコンポーネントに新しい activeClassName 入力が追加されました。これは、グリッド内で最後にクリックした行に追加されるクラス名を定義するために使用できます。デフォルト値は “active” です。このオプションは、入力値を空の文字列に設定することで無効にすることができます。

Impact接続機能の削除

Impact接続機能は、@c8y/ngx-componentsおよび@c8y/ng1-modulesパッケージから削除されました。

jetty依存関係の更新

org.eclipse.jetty:jetty-*への依存関係がバージョン9.4.51.v20230217に更新されました。

json-path依存関係の削除

Java SDKからcom.jayway.jsonpath:json-pathへの依存関係が削除されました。

KPI ウィジェットは、トレンド インジケーターにマウスオーバーした際に正しい前の値を表示します。

KPIウィジェットは、リアルタイム更新がまだ受信されていない場合、トレンドインジケーターにホバーすると正しい前の値を表示します。

Locationプロパティの調整を行ったアセットの作成

アセットを作成した後、ロケーションプロパティにおいて緯度と経度のデフォルト値が設定されていると、マーカーを表示した地図が表示されます。これらの値のどちらか一方または両方が削除されると、サブアセットビューから地図が非表示になります。ロケーションプロパティを編集する際にこれらの値が欠けていると、ロケーションを選択するためのマーカーは表示されません。

org.eclipse.jetty:jettyの依存関係を更新しました。

org.eclipse.jetty:jetty-*への依存関係がバージョン9.4.51.v20230217に更新されました。

org.json依存関係の削除

org.json:jsonへの依存関係がJava SDKから削除されました。

SCADAウィジェットに使用されるテーブルがリストグループに置き換えられました

SCADAウィジェットの設定に使用されていたテーブルは、データやアクションの視覚化を向上させるためにリストグループに置き換えられました。

SCADAウィジェットのSVGファイルに関する問題を修正しました。

SCADAウィジェット内のSVGファイルに関する問題を修正しました。 <code>animate</code>または <code>animateTransform</code>タグは、設定プレビューでは正常に動作しましたが、ダッシュボードでは動作しませんでした。

SCADAウィジェットマッピングは、子デバイスデータを適切に保持します。

SCADAウィジェットマッピングは、現在子デバイスのデータを正しく保持し、親デバイスによってオーバーライドされることはありません。

Spring Boot依存関係の更新

Spring Bootの依存関係がバージョン2.7.11に更新されました。

アセットウィジェットのレンダリング問題が修正されました

アセットウィジェットが深くネストされたカスタムプロパティが選択された場合にレンダリングされないという問題が修正されました。

アセットセレクターの検索結果が通常の検索と一致するようになりました。

以前は、アセットセレクター検索が通常の検索とは異なる結果を返しており、アセットを選択する際に混乱や不一致を引き起こす可能性がありました。この変更により、アセットセレクター検索は現在、通常の検索と同じ結果を返します。この改善により、アプリケーション全体で一貫した検索体験が提供され、ユーザーが希望するアセットを見つけて選択しやすくなります。

アセットノートウィジェットにおけるXSS保護の強化

「アセットノート」ウィジェットのXSS保護が強化されました。

アセットのブール型プロパティの固定値

アセットプロパティの型がBooleanのものは、その値が"false"のときに"Undefined"の代わりに"false"と表示されるようになりました。

アセットプロパティは現在クリアできます。

アセットプロパティは、必要ない場合はクリアできるようになりました。

アプリケーションスイッチャーのブループリントに対する修正

アプリケーションスイッチャーには、デプロイされていないブループリントは表示されなくなりました。

アラームの調整

データポイントグラフは、creationTime属性のみを使用するのではなく、firstOccurrenceTimetime、またはcreationTime属性を使用してアラームを表示します。
アラームは現在、最小幅1ピクセルで表示され、たとえばCLEAREDステータスで作成された非常に短い期間のアラームも表示されるようになっています。
データポイントグラフのアラームツールチップは、ユーザーのタイムゾーンと形式でlastUpdatedタイムスタンプを表示するようになりました。

ウィジェットプラグイン開発のために依存関係が追加されました

ウィジェットプラグインをWeb SDKで開発する際、package.jsonに依存関係が不足しているために依存関係の問題が発生する可能性があります。この不足していた依存関係は現在追加されました。

ウェブアプリのロケールは、URLパラメータを通じて設定できます。

ウェブアプリのロケールは、URLパラメーター lang を介して設定できます。例えば、/apps/administration/index.html?lang=zh-cnのように指定します。ロケールコードは大文字と小文字を区別せず、ハイフン “-” またはアンダースコア “_” で区切られた2文字または4文字である必要があります。提供されたロケールコードがサポートされていない場合、ウェブアプリは英語で表示されます。

エクスポートの新しい時間範囲

エクスポート設定に以下の時間範囲オプションが追加されました: 「過去24時間」, 「過去7日間」, 「過去30日間」

カスタムWeb SDKの実装が正しいタイトルで表示されます

カスタムWeb SDKの実装がコンテキストダッシュボードコンポーネントを使用している場合、空のタイトルの代わりに正しいタイトルが表示されるようになりました。

カスタム単位がデータポイント単位をオーバーライドします

一部のケースでは、ユーザーがデータポイントの単位をカスタム単位でオーバーライドしたいと考えることがあります。以前は、データポイントの単位が手動で指定された単位よりも優先されており、これは望ましい動作ではありませんでした。この変更により、手動で指定された単位は実際のデータポイントの単位に比べて優先されるようになりました。これにより、ユーザーが指定したカスタム単位が常にデフォルトのデータポイント単位の代わりに使用されることが保証されます。

グループおよびデバイス名の翻訳に関する問題を修正しました

ナビゲータメニューに表示される際にグループ名とデバイス名が翻訳される問題を修正しましたが、サブアセットグリッドやデバイスグループセレクタなど他の場所では翻訳されていませんでした。

すべての共通タブを削除したときに、ダッシュボードボタンが削除されなくなりました。

コックピットアプリケーションがグループまたはデバイスレベルで全ての共通タブを削除するように設定されていた場合、ダッシュボードを追加するボタンも意図せず削除されていました。これには対処されました。

スマートルールの編集に関する問題を修正しました。

スマートルールの編集は、デバイスが欠如している(削除された)場合に正常に機能しませんでした。現在、欠如したデバイスは自動的に削除され、スマートルールは適切に編集できるようになりました。

ダイアログウィンドウのタイルの改善

ダッシュボードとレポートの追加および編集のためのダイアログウィンドウタイトルのローカライズが改善されました。

ダッシュボードの日付コンテキストを使用して複数のウィジェット間でタブを切り替えると、スムーズに動作します。

ダッシュボードにダッシュボード日付コンテキストフィルターを使用したウィジェットが2つ以上含まれている場合、ユーザーがダッシュボードタブを切り替えられない問題を修正しました。ユーザーはダッシュボード日付コンテキストウィジェットの数に関係なく、タブ間をスムーズに切り替えられるようになりました。

ダッシュボードレベルでウィジェットのリアルタイムを無効化/有効化する

ウィジェットがリアルタイムをサポートしている場合、ダッシュボードのリアルタイムコンテキストにリンクして、ダッシュボードレベルでリアルタイムを無効化/有効化できるようになりました。以下のウィジェットはリアルタイムダッシュボードコンテキストをサポートしています: データポイントグラフデータポイントテーブルイベントリストマップ

ダッシュボード上のウィジェットの詳細な配置

ダッシュボードでウィジェットを配置するために使用されるグリッドは、12列ではなく24列をサポートするようになりました。これにより、ダッシュボード上でウィジェットのより細かい位置決めが可能になります。異なるアプリケーションバージョン間で同じダッシュボードを共有する場合は、修正 MTM-55923 を含むバージョンにアップグレードすることを強くお勧めします。

ダッシュボード全体の集約を変更する

ダッシュボードのコンテキスト機能をサポートするすべてのウィジェットの集計を一度に変更できるようになりました。ダッシュボードコンテキストの集計をサポートするウィジェットは以下の通りです: データポイントグラフ, データポイントグラフ 2.0, データポイントテーブル

データエクスプローラーにおけるY軸の調整

データエクスプローラーにおいて、データポイントの最小値/最大値を削除すると、Y軸にはデータに基づいて最大値と最小値を決定する代わりに「-1」と「1」が表示されていました。これが修正され、Y軸は再びデータの最小値/最大値を表示します。

データエクスプローラーにおける改善されたデータエクスポート機能

データエクスプローラーのデータエクスポート機能が改善されました。現在、アクティブなデータポイントのみが含まれます。さらに、エクスポートされたファイルの名前にはシリーズの名前が含まれています。このファイルには、このシリーズが見つかるすべてのメジャーメントが含まれています。

データグリッドコンポーネントは、リロード後に最初のページに戻ります

データグリッドコンポーネントは現在のページを保持しなくなりました。再読み込み後は常にリストの最初のページに戻ります。

データグリッド内の新しいフィルタードロップダウン

データグリッドコンポーネントには、新しいフィルター概要ドロップダウンが追加されました。これにより、すべてのアクティブなフィルターが一か所に表示され、ユーザーはフィルターを削除することができます。
カスタムカラム実装の場合、WebSDKは開発者がアクティブなフィルターをフィルター概要内のアイテムとして表示するための独自のロジックを提供することを許可します。

データポイントグラフウィジェットの設定でのチャートタイプ選択の改善

「データポイントグラフ」ウィジェットの設定では、データポイントがデータポイントライブラリのテンプレートにリンクされていない場合にのみ、チャートタイプを選択できました。今では、常にチャートタイプを選択できるようになります。

データポイントグラフでリアルタイムを有効にするには、リアルタイムインジケーターをクリックします。

ユーザーがリアルタイムが有効な「データポイントグラフ」ウィジェットでX軸をドラッグすると、リアルタイムがオフになります。リアルタイムインジケータをクリックすることで再度有効にすることができます。

データポイントセレクターでのフィルタブルアセット選択

データポイントセレクタのアセット選択がフィルタブルになりました。

データポイントセレクタの新しいフィルターオプション

データポイントセレクター内のアセットの選択は、現在フィルタ可能です。

デジタルツインマネージャーで作成されたアセットのために表示されるマップ

デジタルツインマネージャーアプリケーションで複雑なロケーションプロパティが設定されている場合、アセットビューにマップが表示され、ユーザーはマップ上のロケーションを選択できるようになりました。

デバイスの可用性とメジャーメントのための一貫した時間形式

デバイスの可用性と測定に使用される時間形式(12/24時間)が一貫性を持つようになりました。

デバイス削除失敗時のエラーメッセージが改善されました

ユーザーが最小限の権限でデバイスを削除しようとすると、「デバイスを削除できませんでした。」というエラーメッセージが表示されました。
現在、失敗メッセージとともに、失敗の理由が表示されます。

デバイス情報ダッシュボードのデフォルト設定を新しいグリッドに合わせて調整します。

デバイス詳細の「情報」ダッシュボードをリセットすると、ウィジェットが利用可能なダッシュボードスペースの半分だけを占めるようになりました。デフォルトのダッシュボード設定は新しいダッシュボードグリッドに合わせて調整され、ダッシュボードのリセットは再び正常に機能します。

デフォルトの範囲は、ユーザーによってカスタム範囲が指定されていない場合に設定されます。

「リニアゲージ」ウィジェットおよび「サイロ」ウィジェットの範囲は、ユーザーによってカスタム範囲が指定されていない場合、現在0-100に設定されています。

ファイルダウンロードの動作を修正しました

ユーザーがファイルが添付されたアセットに移動した場合、ファイルは即座にダウンロードされていました。現在、ファイルはダウンロードボタンをクリックしたときのみダウンロードされます。

ファイルプロパティを更新する際にファイルを削除する新しいオプション

現在、アセットの複雑なプロパティ内でファイルプロパティを更新する際に、ファイルを削除できるようになりました。

プラグインインストール時の動作改善

プラグインをインストールする際、テナントにカスタムアプリケーションがない場合は、既存のアプリケーションを複製することが可能になりました。

プラグインリストのバージョンに "v" プレフィックスが追加されました。

プラグインリストに表示されるバージョンは、現在「v」プレフィックス付きで表示されています。

ブループリント/プラグインの新しいバージョニングマトリックス

バージョニングマトリックスを現在、cumulocity.json のブループリント/プラグインに追加できます。ブループリント/プラグインがインストールされると、そのバージョンがプラットフォームのバージョンと照合されます。バージョンが互換性がない場合は、警告が表示されます。

ペーストダッシュボードボタンのスタイルが他のボタンと一貫性を持つようになりました。

Paste dashboardボタンのスタイリングが正しく適用され、他のボタンのスタイリングと一貫性があります。

マップウィジェットのアラームカラーの問題を修正しました

「マップ」ウィジェットで使用されるアラームの色は、デバイスによって発生した最も高い重大度のアラームの色を再び正しく表しています。

マップウィジェットのセンターマップボタンの問題を修正しました。

「マップ」ウィジェットのセンターマップボタンは、指定されたマップの中心点が現在のビューの中心から移動した場合にのみ有効になりました。

マップウィジェットの設定でリフレッシュインターバルが設定された値を保持します。

マップウィジェットの設定を開くと、リフレッシュインターバルがうっかり5秒にリセットされました。これが修正され、リフレッシュインターバルは以前に設定された値を保持するようになっています。

メインブランドのカラーは、現在SVG画像やダッシュボードのブランディングに使用されています。

ブランドアプリケーションでは、主要なブランドカラーがSVG画像やダッシュボードのブランディングにも使用されるようになり、主要なブランドカラーのシェードが自動的に生成されます。

メジャーメント作成の問題を修正しました

同時に作成されたメジャーメントがダッシュボードの同じ行に表示されない問題を修正し、一度に複数のメジャーメントを作成するオプションを使用した場合、リストの最初のものだけが表示される問題を修正しました。

モバイルスクリーン上の使用統計フィルターアクションボタン

ウィンドウ使用統計フィルターのアクションボタンは、モバイル画面を使用する際に正しく整列されるようになりました。

モバイル画面のアクションボタン

ウィンドウの 一括操作の追加デバイスプロトコルの追加 におけるアクションボタンは、モバイルスクリーン使用時に正しく整列されるようになりました。

ユーザーの言語設定に属性が設定されました

非ハイブリッドアプリケーションでは、htmlタグのlang属性が現在のユーザーの言語設定に正しく設定されるようになりました。

ユーザーは現在、すべてのトップレベルノードグループを見ることができます。

ユーザーが必要な権限を持っていても、すべての最上位ノードグループが表示されない問題を修正しました。

リアルタイム接続が中断されたときのウィジェットの動作を修正しました

稀にリアルタイム接続が中断された場合、接続が再確立された後も特定のウィジェットが再度更新されないことがありました。この動作は修正されました。

リアルタイム通知の問題を修正しました。

Javaリアルタイム通知SDKにおいて、クライアントがThings Cloudプラットフォームから「402::Unknown client」エラーを受信した後、サブスクリプションの再確立を試みるのを停止する問題が修正されました。この問題の影響として、将来の通知がクライアントに配信されなくなっていました。通常、この問題はサブスクリプションが1つのThings Cloudコアノードから別のノードに移動された後、例えばコアの再起動やネットワークの停止の後に観察されました。この問題は現在解決され、通知サブスクリプションはクライアントに影響を与えることなく透明に復元されます。

リストに設定されたフィルターの問題を修正しました

拡張機能、アプリケーション、またはマイクロサービスのリストでフィルターが設定されている場合、アイテムの削除や追加後にページを再読み込みしても機能しませんでした。この問題は修正されました。

リモートアプリケーションオプションのコンテキストパス

アプリケーションを scaffold する際に、remotes アプリケーションオプションを使用すると、c8ycli が remotes アプリケーションオプションで使用されるコンテキストパスも更新されるようになりました。

レポート追加ボタンの問題を修正しました。

レポートを追加 ボタンは、ユーザーに該当する権限がない場合、現在無効化されています。

ログイン画面のリンクに関する修正

ログイン画面のリンクのテキストが切れている問題を修正しました。

ロケーションビューがAngularに移行されました。

デバイス管理およびコックピットアプリケーションの位置表示は、Angularに移行されました。マッププロバイダー、位置検索、およびマップレイヤーは、アプリケーションオプションまたはテナントオプションを介して構成できるようになりました。位置情報用のangular.jsモジュール@c8y/ng1-modules/devicemanagement-locationは削除され、カスタムビルドアプリケーションの更新時に移行するか、少なくとも削除する必要があります。

ロケール.potファイルの問題を修正しました

Windows上でのc8ycli locale-extractに関する問題を修正しました。抽出されたlocales.potファイルにエントリが含まれていませんでした。

入力フィールドにおけるHTMLのサポート

入力フィールドに期待される入力についての詳細な情報を提供できるように、動的フォームフィールドは現在、その説明にHTMLマークアップをサポートしています。

右のドロワーに表示される言語選択

右のドロワーは、ユーザーの設定で選択された言語を常に表示するようになりました。

右のドロワーのブックマーク

ユーザーは、プラットフォームの任意のページに右側のドロワーでブックマークを追加できるようになりました。

同じウィジェットに対して複数のパッケージが利用可能な場合、1つのプラグインが表示されます。

アプリケーションプラグインビューでは、同じウィジェットに対して複数のパッケージ(サブスクリプションされたものとカスタム)が利用可能な場合、プラットフォームは同じインストール済みプラグインの複数のエントリを表示していました。現在は、1つのプラグインのみが表示されます。

固定資産アイコンの問題

デフォルトのグループアイコンが対応するアセットアイコンの代わりに表示される問題を修正しました。

子アセットのアクティベーションとディアクティベーションを単一リクエストで行う

子アセットの有効化または無効化は、現在単一のリクエストで実行されます。

子アセットのカスタムプロパティフォームでの科学的表記による数字の入力が可能になりました。

現在、サブアセットのカスタムプロパティフォームで科学的表記(例えば「1.234e2」)で数字を入力できるようになりました。

廃止されたクラスへの参照の削除

非推奨のクラス ComponentFactoryComponentFactoryResolver への参照は、@c8y/ngx-components ライブラリから削除されました。

改善されたシェルアプリケーションの挙動

シェルアプリケーションは、すべてのプラグインがロードされるまで初期ナビゲーションを待機するようになりました。これにより、たとえば、プラグインによって提供されるルートへのリンクを介して直接ナビゲートすることが可能になります。

既存のデータポイントからのフラグメントおよびシリーズの選択

データポイントライブラリでは、既存のデータポイントからフラグメントとシリーズを選択することができるようになりました。

時間範囲が拡大され、現在の範囲のデータが データポイントグラフ ウィジェットに表示されます。

データポイントグラフウィジェットでは、リアルタイムが有効になっているときにユーザーがチャートをダブルクリックすると、時間範囲が拡大し、現在の範囲のデータが表示されます。

最新のイベントがデータポイントグラフに正しく表示されるようになりました。

最新のイベントは、カスタムインターバルが選択されていても、データポイントグラフに正しく表示されるようになりました。

複数のリアルタイムAPIサブスクリプションの問題が解決されました

リアルタイムAPIの複数のサブスクリプションが迅速に行われることで、不正なサブスクリプション状態が発生し、サブスクリプションが重複通知を受け取る問題を解決しました。

複雑なカスタムプロパティのプロパティのソートが改善されました。

サブアセットページでは、複雑なカスタムプロパティのプロパティがアルファベット順にソートされていました。現在、ソートはデジタルツインマネージャでユーザーが指定した順序を反映しています。

静的関数の戻り値の型を調整しました

Angularモジュールのいくつかの静的関数の返り値の型が調整されました。特定の場合、これにより「この式を静的に評価できません」というエラーメッセージが表示されることがありましたが、これは解決されました。

非推奨のデバイスグリッドモデルクラス、カラム実装およびサービスの削除

以前発表された通り、リリース 10.18を参照してください。@c8y/ngx-components/device-gridからの共有クラス、コンポーネント、およびサービスは非推奨となりました。これらの非推奨アイテムは現在削除されています。

この変更は、あなたまたはあなたの開発チームがWeb SDKを使用してThings Cloud UIアプリケーションを拡張したり、自分自身のWebアプリケーションを構築したりする場合にのみ影響します。デバイスグリッド機能を使用している場合は、非推奨のドキュメントを確認し、コードを適切に変更してください。デバイスグリッドサービスのWebSDKリソースドキュメントの非推奨を参照してください。このドキュメントにも他の非推奨事項がマークされています。

非推奨の実装の削除

リリース10.16.0.0では、コア再利用可能なデータグリッド関連のコンポーネントとサービスが@c8y/ngx-componentsに移動されました。初期の実装は非推奨となり、現在は削除されています。

2024年のThings Cloudデータハブのリリースは10.18のリリースと同一です。

Things Cloud データハブの2024リリース版は、10.18リリース版と同一です。

テンプレートモデルに適用されるフィルタリングモデル

Analytics Builderのモデルマネージャーで、モードおよびステータスでモデルをフィルタリングする際、フィルターはテンプレートモデルにも適用されるようになりました。
この修正前は、フィルターはテンプレートパラメーターのないモデルにのみ適用されていました。

新しいブランディングを作成する際にアプリのロゴの高さが適切に設定されます

新しいブランディングを作成する際にアプリのロゴの高さが正しく設定されない問題を修正しました。新しいブランディングを生成する際には、アプリのロゴの高さが適切に設定されるようになりました。

翻訳で使用される日本の電話番号の有効な例

ユーザーインターフェースの日本語翻訳では、電話番号フィールドに無効な例が使用されており、日本のユーザーが電話番号を入力しようとする際に混乱を招く可能性がありました。この変更により、例が有効な日本の電話番号形式に更新されます。この修正により、日本のユーザーは期待される電話番号形式をより理解しやすくなるはずです。

コックピットセットアップウィザードのボタンテキストが改善されました

コックピットセットアップウィザードのボタンのテキストが更新されました。この変更により、セットアップフローを通過するユーザーにとって、テキストの明確さと一貫性が向上します。

サービスレジストリをサービス登録用のフックで紹介する

Things Cloudにおけるサービスの管理と発見能力を向上させるために、サービスがフックを介してプラットフォームに登録できる新しいサービスレジストリが導入されました。

ブックマークは、デフォルト値の代わりにページタイトルをラベルとして表示するようになりました。

ブックマーク機能が更新され、デフォルトの値の代わりにページタイトルをブックマークのラベルとして表示するようになりました。これにより、ユーザーはブックマークリストを見る際により多くのコンテキストを得ることができます。

マップマーカーのポップアップは、アセットおよびデバイスに正しくリンクされています。

マップのマーカーポップアップ内のリンクは、現在それぞれのアセットまたはグループを正しく参照しています。

リニアゲージおよびサイロウィジェットでのメジャーメント表示の改善

「リニアゲージ」と「サイロ」ウィジェットの測定表示ラインのサイズが増加しました。この改善により、可読性が向上し、ユーザーが測定値を一目で解釈しやすくなります。

入力範囲コンポーネントの改善

入力レンジコンポーネント(c8y-range)は、範囲を設定するためのスライダーを表示するために使用できます。このコンポーネントのスタイリングとドキュメントは、全体のコンポーネントおよびフォームのスタイリングにより適合するように改善されました。

EPLのstring.toDecimal()メソッドの改善

以前、無効な変換の文字列に対して string.toDecimal() を実行すると、ParseException エラーが発生していました。現在は “0.0” が返されます。これは、toDecimal() の使用体験を toFloat() の使用体験と似たものにするために行われました。以前の厳密な動作を希望する場合は、代わりに decimal.parse() を使用してください。

クリップボードから分析ビルダーモデルのJSONコードを貼り付けます。

分析ビルダーのモデルマネージャでは、ツールバーのモデルのインポートコマンドがドロップダウンメニューに変更されました。このドロップダウンメニューには新しい貼り付けコマンドが含まれています。このコマンドをクリックすると、クリップボードにモデルの有効なJSONコードが含まれている場合、貼り付けられたモデルのカードがモデルマネージャに表示されます。この変更は、分析ビルダーのモデルのJSONをクリップボードにコピーできるアクセシビリティの向上を補完し、変更を加えた後にJSONを分析ビルダーに貼り付けることができるようにします。

さらに、ドロップダウンメニューにはアップロードコマンドも含まれています。これは以前のバージョンのモデルのインポートコマンドと同じ機能を持っています。

詳細については、モデルの貼り付けおよびモデルのアップロードを参照してください。

非同期アラーム入力が分析ビルダーのモデルチェーンで内部エラーを引き起こす問題の修正

アラーム出力ブロックによって宣言された非同期アラーム入力は、モデル間の接続チェーンのために考慮されており、一部のシナリオでは「内部エラー: 一貫性のないチェーンID」エラーが発生しました。これに対処し、ブロックによって宣言された非同期入力はモデルチェーンの考慮から外されました。

ストリーミング分析マイクロサービスにおける/prometheusエンドポイントのより効率的な実装

/prometheus エンドポイントの実装は、他の内部エンドポイントへの冗長な呼び出しを削除することによって最適化されました。

アセットノートウィジェットにおける強化されたXSS保護

「アセットノート」ウィジェットのXSS保護が強化されました。

カスタムアプリケーションのファビコンに関する問題を修正しました。

カスタムアプリケーションがデプロイされたときにファビコンが表示されない問題が修正されました。

ダッシュボードの日付コンテキストを使用して複数のウィジェットでタブを切り替えることがスムーズに行えます。

ダッシュボードの日付コンテキストフィルターを使用しているウィジェットが2つ以上ある場合に、ユーザーがダッシュボードのタブを切り替えられなかった問題を修正しました。ユーザーは、ダッシュボードの日付コンテキストウィジェットの数に関係なく、タブをスムーズに移動できるようになりました。

デジタルツインマネージャーにおける複雑なカスタムプロパティのプロパティのソート改善

デジタルツインマネージャーのサブアセットページでは、複雑なカスタムプロパティのプロパティがアルファベット順にソートされていました。現在、ソートはデジタルツインマネージャーでユーザーが指定した順序を反映しています。

バージョン番号はプラットフォーム詳細ファイルに移動しました。

フロントエンドとバックエンドのバージョン番号は、プラットフォームUIに表示されなくなりました。その代わりに、すべてのコンポーネントの詳細はプラットフォームの詳細をダウンロードボタンを介してダウンロードできます。この変更は、異なるバージョン番号スキームを持つ多くの異なるコンポーネントがあるコンポーネントの分割によって動機づけられました。ただし、Web SDKを使用して開発されたカスタムアプリは、必要に応じてデフォルトのバージョン番号を表示することがあります。サポートリクエストには、常にプラットフォームの詳細情報を含める必要があります。

ファイルのダウンロード動作を修正しました。

ユーザーがファイルが添付されたアセットに移動した場合、ファイルは即座にダウンロードされていました。現在は、ダウンロードボタンをクリックしたときのみファイルがダウンロードされます。

フォントファミリーとサイズを日本語テキストに調整する

日本語のテキストのフォントファミリーとサイズは、可読性と視覚的一貫性を向上させるために調整されています。これらの調整により、日本語の文字が異なる画面密度や解像度で適切なサイズでクリーンに表示されることが保証されます。

マップウィジェットの センターマップ ボタンの問題を修正しました。

「マップ」ウィジェットのセンターマップボタンは、指定されたセンターポイントが現在のビューの中心からシフトしている場合にのみ有効になりました。

マップウィジェットはスマートフォンをデバイスとして正しく割り当てます

ダッシュボードに表示される「マップ」ウィジェットは、スマートフォンを接続した際にデバイスが割り当てられていませんでした。この問題は修正され、「マップ」ウィジェットが接続されたスマートフォンを位置データを表示するデバイスとして正しく割り当てるようになりました。

回転ウィジェットは、実際のモデルを表示します。

「回転」ウィジェットが実際のモデルを表示するのを妨げていたバグが修正されました。

改善されたJSDoc注釈

JSDocのアノテーションが改善されました。変更点には、壊れたリンクの修正、古くなった情報の更新、欠落していたコードスニペットの追加、全体的な明確さの向上が含まれます。これらの改善は、開発者がWeb SDKを使用する際により良いリファレンスとガイドを提供することを目的としています。

英語のテキストの不必要なリフレッシュの問題を修正しました。

英語のテキストの不要なリフレッシュに関する問題が、各Angularディジェストサイクルで修正されました。

EnterキーとEscapeキーの一貫したサポート

次のビューにおいて、Enterキー(保存アクション)およびEscapeキー(キャンセルアクション)のサポートの一貫性が向上しました: テナント詳細, ユーザー詳細, グローバルロール詳細, データ保持ルール設定, ブランディング設定.

TOTPによるログイン時のエラーメッセージを修正しました

サポートアクセスが無効化された場合、TOTPを使用したログイン時に正しいエラーメッセージが表示されるようになりました。

アプリケーションコンテキストからスマートルールを編集する際に、アラートメッセージが表示されなくなりました。

アプリケーションコンテキストからスマートルールを編集する際に発生したUIエラーを修正しました。この修正により、誤ったマネージドオブジェクトIDでリクエストを送信し、アラートメッセージが表示されることを防ぎます。

シングルサインオン設定ページでの整列レイアウト

シングルサインオン構成におけるロール割り当てに関する情報が、シングルサインオン構成ページの新しいレイアウトに合わせて更新されました。

マイクロサービスステータスタブの更新ボタンにはスマートルールのリストが含まれています。

マイクロサービスの詳細のステータスタブにある更新ボタンには、スマートルールのリストが含まれるようになりました。

マイクロサービス管理における翻訳の問題を修正しました。

マイクロサービスのサブスクライブ解除時に表示される確認ポップアップにおける翻訳が欠落している問題を修正しました。

Tracking タブの Angular への移行

デバイス詳細の トラッキング タブは Angular に移行されました。廃止された AngularJS モジュール AssetTrack はデバイス管理アプリケーションのインポートから削除されました(インポート @c8y/ng1-modules/devicemanagement-tracking/cumulocity.json)。これは非推奨であり、将来的に削除される予定です。この変更により、カスタム日付範囲フィルタの不正確な結果に関する問題が修正されました。さらに、位置マーカーのポップアップがより情報豊かになりました。

カスタムイベントおよびオペレーションフィールドにおける値としての0に関する問題を修正しました。

Chromeでは、カスタムイベントおよびオペレーションフィールドが値として0または'0’を持つ場合に、誤って日付として解析され表示されていました。これは現在修正されました。

サブアセットページのコンテキストヘルプの改善

サブアセットページでは、コンテキストヘルプが表示されているグループがスマートグループである場合、より具体的な情報を提供します。

情報 ダッシュボードのデフォルト設定を新しいグリッドに合わせて調整します。

デバイスの詳細で「情報」ダッシュボードをリセットした結果、ウィジェットが利用可能なダッシュボードスペースの半分しか占有しなくなりました。デフォルトのダッシュボード設定が新しいダッシュボードグリッドに合わせて調整され、ダッシュボードのリセットが再び正常に機能するようになりました。

数値フィールドの説明の翻訳が抜けています

一部の数値フィールドの説明が英語版のみで表示されていることがありましたが、これが修正され、数値フィールドの説明が選択されたプラットフォームの言語で表示されるようになりました。

「Aavilability」という用語の日本語訳は「可用性」です。

UIの「Availability」という用語は、文脈に応じて日本語で異なる翻訳を提供します。この改善により、日本市場向けのローカリゼーションがより適切になります。

AngularJSのパンくずリストが非同期値で動作するように更新されました。

AngularJSのパンくずリストコンポーネントが更新され、値が非同期に解決されたときにパンくずリストが正しく表示されるようになりました。以前は、非同期に設定された値がパンくずリストに正しく表示されないことがありました。この更新により、パンくずリストは同期または非同期の値解決にかかわらず、期待通りに表示されるようになります。特に、これによりSmartRESTテンプレートデバイス認証情報ページのパンくずリストが修正されます。

CSS変数によりアプリのアイコンのサイズを正しく設定できるようになりました

ナビゲータに表示されるアプリのアイコンのサイズを制御する変数に関する問題を修正しました。

ホームダッシュボードからダッシュボードの可用性設定が削除されました。

ホームダッシュボードの可用性設定は削除されました。この変更により、ホームダッシュボードに不正確な可用性ステータスが表示される問題が防止されます。

マップウィジェットのアラームカラーの問題を修正しました。

「マップ」ウィジェットで使用されるアラームの色は、デバイスによって発生した最も高い重要度のアラームの色を再度正しく表すようになりました。

古いAngularJSモジュール AssetTrack(c8y.parts.tracking) が削除されました

AngularJSモジュール AssetTrack (c8y.parts.tracking) は廃止されたとみなされ、削除されました。アプリケーションにデバイストラッキングを組み込むには、現在、Angularのスタンドアロン TrackingComponent (@c8y/ngx-components/tracking) を使用するか、直接 trackingFeatureProvider 環境プロバイダーを提供することができます。

EPLイベントはisCreateおよびisUpdateアクションから例外を発生させません。

AlarmEventManagedObjectおよびOperationイベントは、もはやisCreate()およびisUpdate()アクションから例外をスローしません。チェックされているイベントがEPLコードで生成されたものである場合、これらの2つのアクションは単にfalseを返します。チェックされているイベントがEPLコードで生成されたものである場合、これらの呼び出しの周りにtry ... catchブロックはもはや必要ありません。

これらのアクションを使用するEPLコードは、例外をスローしなくなったため、より堅牢に動作します。適切にキャッチされない場合、これらの例外はモニターやアプリを終了させる可能性があります。

try ... catchブロックを使用して内部生成されたイベントを意図的にチェックすることが非常に稀な場合は、チェックを次のように変更する必要があります:

if not (evt.isCreate() or evt.isUpdate()) { ... }

ストリーミング分析 マイクロサービスが Red Hat UBI 9 を使用するようにアップグレードされました。

Apama-ctrlマイクロサービスは、現在Red Hat UBI 9をベースのオペレーティングシステムとして使用しています。以前はRed Hat UBI 8でした。バージョン9では、セキュリティが向上しています。

分析ビルダーモデルのJSONコードをクリップボードにコピーします。

分析ビルダーのモデルマネージャーでは、コピーコマンドがモデルのアクションメニューに追加されました。これはアクセシビリティの向上であり、分析ビルダーモデルのJSONをクリップボードにコピーすることで、サードパーティのエディタに迅速に貼り付けることができます。このJSONは、例えばスクリーンリーダーや高コントラスト環境で読み取ることができます。新しいコピーコマンドは、読み取り専用ユーザーにも利用可能です。

さらに、このアクションメニューに表示されるダウンロードコマンドも、現在は読み取り専用ユーザーが利用できるようになりました。詳しくはモデルのコピーおよびモデルのダウンロードを参照してください。

新しい 分析ビルダー フィルターによる入力ソースまたは出力先の選択

分析ビルダーでは、入力または出力ブロックの異なる入力ソースまたは出力先を選択したときに表示されるダイアログボックスで、表示されるエントリをフィルタリングできるようになりました。デフォルトでは、ダイアログボックスには定義されたすべてのデバイス、デバイスグループ、スマートグループ、およびアセットが表示されます。これは以前の動作と同じです。ダイアログボックスに他のマネージドオブジェクトも表示したい場合は、「他の」チェックボックスを選択できます。

また、ブロックのパラメータの編集もご覧ください。

Linux cgroup v2への切り替え

Things Cloud SaaS インスタンスは、2024年後半に徐々にLinux cgroup v2に移行されます。その後、マイクロサービスはLinux cgroup v2を意識したアプリケーションランタイムを使用しなければなりません。これらのバージョンでThings Cloud上でcgroup v2と互換性のないマイクロサービスを実行すると、アプリケーションランタイムが提供するCPUやメモリに関する情報が正しくない可能性があります。これにより、マイクロサービスコンテナプロセスにおけるメモリとスレッドの割り当てが誤って行われることがあります。

cgroupは、プロセスを階層的に管理し、階層に沿ってシステムリソースを制御可能かつ構成可能な方法で分配するLinuxカーネルの機能です。システム内のすべてのプロセスは、一つのcgroupにのみ所属します。Things Cloudでは、cgroupを使用してコンテナのリソース制限を強制します。

マイクロサービスを開発するためにThings Cloud Microservice SDKを使用する場合、マイクロサービスをビルドする際にcgroup v2を意識したJavaバージョンを設定することを確認してください。Java 8を使用する場合は、openjdk8u372以上を使用してください。Java 11を使用する場合は、Java 11.0.16以上またはJava 15以上を使用してください。OpenJDK Java以外のサーバーランタイムをマイクロサービスアプリケーションランタイムとして使用する場合は、プロバイダーのドキュメントを参照してください。

デフォルトのログイン方法に関する情報が監査ログに追加されました

作成または更新されたログイン方法の監査記録には、デフォルトとして選択された方法に関する情報が含まれるようになりました。

DCP APIへの外部リクエストに関する問題を修正しました

sms-gatewayエージェントは、DCP APIによって認識されないコンテンツタイプ「application/xml」で送信要求を行っていました。これが修正され、送信要求は現在コンテンツタイプ「application/json」で送信されるようになりました。

SmartREST 2.0 インベントリ POST テンプレートの問題を修正しました。

SmartREST 2.0インベントリのPOSTテンプレートは、空の「mandatoryValues」フィールドを解析する際にエラーが発生していました。POSTテンプレートを処理する前に、フィールドが空かどうかを確認するチェックが実装されました。

リアルタイムAPIの問題を修正しました。

リアルタイムAPIにおいて、「再試行不可」とマークされたサブスクリプションが、サーバーとの基盤となる接続を再確立した後でも再サブスクライブできるという問題を修正しました。たとえば、Cumulocityコアの再起動やネットワーク障害の後です。

必須フラグメントのクリアを防止しました

SmartREST 2.0の静的テンプレートを呼び出す際に、タイプ、タイム、作成時間、オーナー、ソースなどの必須フラグメントをクリアすることは、107、307、および407のようなフラグメントをクリアすることはもはや許可されていません。

パスワード変更の挙動が改善されました。

パスワードは、現在ログインしているユーザーのみが変更できるようになりました。管理者は他のユーザーのパスワードやメールを変更できなくなりました。

Shellタブのテキストフィールドへの入力をすべて表示

デバイス詳細のShellタブに新しい定義済みコマンドを追加する際、すべてのテキストフィールドが適切にフォーマットされ、すべての情報が表示されるようになりました。

固定されたドイツ語翻訳の問題

デバイスからスナップショットを取得オペレーションの説明のドイツ語翻訳に関する問題と、いくつかのその他の類似ケースを修正しました。

新しい「デバイスの置き換え」オプション

サブアセットビューでは、すべてのサポートされているデバイスのコンテキストメニューに「デバイスを置き換える」オプションが新たに追加されました。以前は、「デバイスを置き換える」オプションはすべてのデバイスページでのみ利用可能でした。さらに、デバイス詳細の情報タブにある「デバイスステータス」ウィジェットにデバイスを置き換えるボタンが追加されました。この機能はLWM2Mデバイスをサポートしていません。

c8ycliのlocale-compileに関する問題を修正しました。

Windowsでc8ycli locale-compileに関する問題を修正しました。POファイルへのパスにフォルダーが含まれている場合、コンパイルされたJSONファイルが作成されない問題が解決されました。

UIコンポーネント c8y-stepper 機能が修正されました。

c8y-stepper UIコンポーネントのonStepChange関数は、ユーザーの操作によって選択されたステップの値が変更されるたびに、その値を発信することを目的としています。しかし、この出力イベントは正しくトリガーされていませんでした。この問題は現在修正されました - onStepChangeは、更新後に再び確実に現在のステップ値を公開します。

デバイス証明書認証におけるCRLサポート

管理者は現在、証明書失効リスト(CRL)設定を構成できます。証明書が侵害された場合、プラットフォームはデバイス認証プロセス中に失効チェックを実行できるようになりました。管理者は、失効した証明書の詳細を手動で追加できるオフラインモードを選択するか、失効した証明書のリストを維持する発行証明書認証がある場合はオンラインモードを選択できます。

改善されたSSO設定

SSO構成ページが更新され、Azure AD統合テンプレートのための追加の署名検証方法をサポートするようになりました。ユーザーは、シングルサインオンのためにAzure Active Directoryへの接続を設定する際に、署名検証設定内で公開鍵発見URLをオプションで指定できるようになりました。

管理者は他のユーザーのパスワードを変更することはできません。

セキュリティ上の理由から、管理者は他のユーザーのパスワードを変更できなくなりました。ユーザーは自分のパスワードのみを変更することが許可されています。ただし、管理者は予期される侵害がある場合、ユーザーに次回のログイン時にパスワードを変更させることは引き続き可能です。