概要:
コンソールには、アプリケーションとデバイスの概要ページを補完する、ゲートウェイの概要ページが必要です。 #26も参照してください。
概要ページには次のものが含まれている必要があります。
暗黙的に、概要の作業には次のものも含まれます。
なぜ私たちはこれが必要なのですか?
エンティティの概要ページは、クリックの深さを抑えて最も重要な情報にすばやくアクセスするのに役立ちます。
すでに何がありますか?
対応するAPIエンドポイント。 参考までに、ゲートウェイレジストリからのGET /gateways/{gateway_ids.gateway_id}
応答の例:
{
"ids": {
"gateway_id": "string",
"eui": "string"
},
"created_at": "2019-03-06T08:55:43.727Z",
"updated_at": "2019-03-06T08:55:43.727Z",
"name": "string",
"description": "string",
"attributes": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"contact_info": [
{
"contact_type": "CONTACT_TYPE_OTHER",
"contact_method": "CONTACT_METHOD_OTHER",
"value": "string",
"public": true,
"validated_at": "2019-03-06T08:55:43.727Z"
}
],
"version_ids": {
"brand_id": "string",
"model_id": "string",
"hardware_version": "string",
"firmware_version": "string"
},
"gateway_server_address": "string",
"auto_update": true,
"update_channel": "string",
"frequency_plan_id": "string",
"antennas": [
{
"gain": 0,
"location": {
"latitude": 0,
"longitude": 0,
"altitude": 0,
"accuracy": 0,
"source": "SOURCE_UNKNOWN"
},
"attributes": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
}
}
],
"status_public": true,
"location_public": true,
"schedule_downlink_late": true,
"enforce_duty_cycle": true,
"downlink_path_constraint": "DOWNLINK_PATH_CONSTRAINT_NONE"
}
何が欠けている?
これをどのように実装することを提案しますか?
アプリケーションの実装を補完します。
あなたは自分で何ができますか、そしてあなたは何を手伝う必要がありますか?
要件についての情報が得られたら、簡単なワイヤーフレームでフォローアップしたいと思います。
ゲートウェイの概要ページに何を表示するかについて、すぐにここで入力する必要があると思います。
cc @htdvisser @johanstokking
私はそれを単純に保ちます。 ID、EUI、名前、説明、頻度計画。
GSを押して接続統計を確認することにより、オンラインインジケータを表示するのがよいでしょう。 200 <=ステータス<300の場合は接続され、404の場合は接続されておらず、それ以外はエラーです。 これは表示されているエントリごとの呼び出しですが、メモリから取得されるため、GSから提供する価値があり安価です。
https://github.com/TheThingsNetwork/lorawan-stack/issues/26#issue-404416151から
ゲートウェイごとの接続統計を表示します(gateway_server_addressが現在のコンソールのGateway Server API構成と一致する場合)
と
GSを押して接続統計を確認することにより、オンラインインジケータを表示するのがよいでしょう。 200 <=ステータス<300の場合は接続され、404の場合は接続されておらず、それ以外はエラーです。
ユーザーに表示する内容に同意する必要があります。
させて
gtw_gs_address
は、ゲートウェイ用に構成されたゲートウェイサーバーのアドレスです。
console_gs_address
は、コンソールに渡される現在のクラスターのゲートウェイサーバーのアドレスです。
connected
gtw_gs_address
またはconsole_gs_address == empty
->ステータスunknown
の場合。 これは、ゲートウェイサーバーのアドレスが現在のクラスターに存在しない場合、ゲートウェイの作成時にアドレスが追加されなかった場合、またはその両方の場合に発生する可能性があります。gtw_gs_address == console_gs_address
->ステータスdisconnected
の場合gtw_gs_address != console_gs_address
->ゲートウェイis not managed by this console
の場合unknown
の場合、[ゲートウェイの概要]ページにエラーが表示されますUI:
connected (1)
unknown (2.1)
disconnected (2.2)
not this console (2.3)
@johanstokking @htdvisser @kschiffer
接続性インジケーターには別のロジックを使用します。 GSへの要求ではなく、ゲートウェイサーバーアドレスで開始する必要があります(ゲートウェイにサービスを提供していないことがすでにわかっているGSを呼び出すことは意味がないため)。
console.gateway_server_address
が空の場合、機能は完全に無効になりますgateway.gateway_server_address
が空の場合、次のいずれかです。console.gateway_server_address
と仮定しますが、メッセージも表示しますgateway.gateway_server_address
がconsole.gateway_server_address
と等しくない場合、このゲートウェイの機能は無効になり、メッセージが表示されますメッセージも少し変更します。 選択したゲートウェイが現在のコンソールのクラスター内のゲートウェイサーバーに割り当てられていないことをユーザーに通知しようとしています。 ゲートウェイサーバーではなくIDサーバーにあるゲートウェイの読み取り/書き込みは引き続き可能です(基本的に、接続状態とトラフィック以外のすべて)
メッセージも少し変更します。
メッセージは何でしょうか?
注文については@htdvisserに同意します。
したがって、5つの状態があります。
console.gateway_server_address
がgateway.gateway_server_address
$と等しい場合は、GSを押します。gateway.gateway_server_address
が空の場合。 ゲートウェイはプロビジョニングされていませんメッセージも少し変更します。
メッセージは何でしょうか?
いずれにせよ、上部が通知を表示するのに適した場所であるかどうかはわかりません。 意味のあるメッセージを表示するには、見栄えの悪い長いテキストが必要になる可能性があります。 ステータスとしてUnknown
またはOther Cluster
で十分であり、後で詳細についてユーザーに通知するために別の場所を調べる必要があります。
最も参考になるコメント
私はそれを単純に保ちます。 ID、EUI、名前、説明、頻度計画。
GSを押して接続統計を確認することにより、オンラインインジケータを表示するのがよいでしょう。 200 <=ステータス<300の場合は接続され、404の場合は接続されておらず、それ以外はエラーです。 これは表示されているエントリごとの呼び出しですが、メモリから取得されるため、GSから提供する価値があり安価です。