Zao SDK for Jetson / libzao-endpoint API リファレンス 1.2.0.0 (2023-10-30)
Loading...
Searching...
No Matches
CloudControlInterface.hpp
1#ifndef ZAO_ENDPOINT_CONTROL_CLOUD_CONTROL_INTERFACE_HPP_
2#define ZAO_ENDPOINT_CONTROL_CLOUD_CONTROL_INTERFACE_HPP_
3
4#include <future>
5#include <memory>
6#include <string>
7#include <vector>
8
9#include "RoomGroupList.hpp"
10#include "StreamingControlInterface.hpp"
11
12namespace zao {
13namespace endpoint {
14namespace control {
15
17
22 public:
29 virtual void StartCloud(const std::string& rest_api_url,
30 const bool cert_insecure) = 0;
31
35 virtual void StopCloud() = 0;
36
40 virtual void RequestSuid() = 0;
41
45 virtual void RequestVersion() = 0;
46
51 virtual void RequestPairing() = 0;
52
56 virtual void ResetPairing() = 0;
57
61 virtual void RequestRoomGroupList() = 0;
62
67 virtual bool SelectRoomGroupId(const std::uint32_t group_id) = 0;
68
72 virtual void ConnectCloudView() = 0;
73
77 virtual void DisconnectCloudView() = 0;
78
82 virtual bool IsOffAirByCloud() = 0;
83
94 virtual void RegisterCallback(
95 const std::shared_ptr<CloudControlCallbackInterface>& listener,
96 bool use_weak_ptr = false) = 0;
97
107 virtual void RegisterCallback(
108 std::unique_ptr<CloudControlCallbackInterface>&& listener) = 0;
109
110 virtual ~CloudControlInterface() noexcept = default;
111};
112
117 public:
121 enum class cloud_status_t {
122 START_CLOUD, // クラウド接続開始
123 STOP_CLOUD, // クラウド接続停止
124 NETWORK_FAILED, // ネットワーク接続失敗
125 NOT_PAIRED, // 未ペアリング状態
126 PAIRING, // ペアリング番号取得
127 PAIRED, // ペアリング番号確認状態
128 ROOM_UPDATE, // ROOM GROUP LIST 更新済状態
129 ROOM_EMPTY, // ROOM GROUP LIST 空の状態
130 INVALID_URL, // ネットワーク接続時エラー:URL不正
131 CERT_ERROR, // ネットワーク接続時エラー:証明書検証エラー
132 SERVER_ERROR, // ネットワーク接続時エラー:サーバーエラー
133 RESPONSE_NG, // ネットワーク接続時エラー:サーバー応答NG
134 };
135
140 virtual void OnConnectingCloudView() {}
141
145 virtual void OnConnectCloudView() {}
146
150 virtual void OnDisconnectCloudView() {}
151
155 virtual void OnReceiveSuid(const std::string& suid) {}
156
160 virtual void OnReceiveVersion(const std::string& package_ver) {}
161
167 virtual void OnReceivePairingNumber(const std::string& pairing_number) {}
168
174 virtual void OnReceiveGroupIdList(const RoomGroupList& room_group_list) {}
175
181 virtual void OnNotifyCloudStatus(cloud_status_t cloud_status) {}
182
183 virtual ~CloudControlCallbackInterface() noexcept = default;
184};
185
186} // namespace control
187} // namespace endpoint
188} // namespace zao
189
190#endif // ZAO_ENDPOINT_CONTROL_CLOUD_CONTROL_INTERFACE_HPP_
Cloud接続制御機能のコールバックインターフェース
Definition CloudControlInterface.hpp:116
virtual void OnReceiveSuid(const std::string &suid)
SUID を取得できたときに呼び出されるコールバック.
Definition CloudControlInterface.hpp:155
virtual void OnConnectingCloudView()
Cloud View に接続要求が開始されたときに呼び出されるコールバック.
Definition CloudControlInterface.hpp:140
virtual void OnConnectCloudView()
Cloud View に接続されたときに呼び出されるコールバック.
Definition CloudControlInterface.hpp:145
virtual void OnReceivePairingNumber(const std::string &pairing_number)
ペアリング番号を取得したときに呼び出されるコールバック.
Definition CloudControlInterface.hpp:167
virtual void OnReceiveGroupIdList(const RoomGroupList &room_group_list)
会議室番号一覧を受信したときに呼び出されるコールバック.
Definition CloudControlInterface.hpp:174
cloud_status_t
CloudStatusの種類
Definition CloudControlInterface.hpp:121
virtual void OnNotifyCloudStatus(cloud_status_t cloud_status)
Cloud の状態変化を受信したときに呼び出されるコールバック.
Definition CloudControlInterface.hpp:181
virtual void OnReceiveVersion(const std::string &package_ver)
Version を取得できたときに呼び出されるコールバック.
Definition CloudControlInterface.hpp:160
virtual void OnDisconnectCloudView()
Cloud View から切断されたときに呼び出されるコールバック.
Definition CloudControlInterface.hpp:150
Cloud接続制御機能のインターフェース
Definition CloudControlInterface.hpp:21
virtual void RegisterCallback(std::unique_ptr< CloudControlCallbackInterface > &&listener)=0
コールバックの送信先をunique_ptrで登録する
virtual void RequestRoomGroupList()=0
ルームグループリストの取得を要求する.
virtual void RequestSuid()=0
SUIDを要求する.
virtual void RequestVersion()=0
Versionを要求する.
virtual void StartCloud(const std::string &rest_api_url, const bool cert_insecure)=0
REST_APIとの接続を要求する.
virtual void RegisterCallback(const std::shared_ptr< CloudControlCallbackInterface > &listener, bool use_weak_ptr=false)=0
コールバックの送信先をshared_ptrまたはweak_ptrで登録する
virtual void StopCloud()=0
REST_APIへの切断を要求する.
virtual bool IsOffAirByCloud()=0
OffAirがCloudから行われたかどうかを取得
virtual void ConnectCloudView()=0
Cloud View への接続を要求する.
virtual bool SelectRoomGroupId(const std::uint32_t group_id)=0
ルームグループリストIDを選択する.
virtual void DisconnectCloudView()=0
Cloud View との切断を要求する.
virtual void RequestPairing()=0
ペアリングを要求する.
virtual void ResetPairing()=0
ペアリングをリセット要求する.
ルームグループリストのフォーマット
Definition RoomGroupList.hpp:118
ストリーミング制御機能のコールバックインターフェース
Definition StreamingControlInterface.hpp:39
ストリーミング制御機能のインターフェース
Definition StreamingControlInterface.hpp:16
Zao製品共通の名前空間
Definition FactoryInterface.hpp:11