From 9ee98a06160ee2b234e92db70eb18e128fc76e5d Mon Sep 17 00:00:00 2001 From: zheng_wenlong Date: Thu, 6 Jun 2019 16:31:25 +0900 Subject: add hubtbt --- app/Hudtbt.qml | 93 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 app/Hudtbt.qml (limited to 'app/Hudtbt.qml') diff --git a/app/Hudtbt.qml b/app/Hudtbt.qml new file mode 100644 index 0000000..141cd71 --- /dev/null +++ b/app/Hudtbt.qml @@ -0,0 +1,93 @@ +/* + * Copyright (c) 2018 TOYOTA MOTOR CORPORATION + * Copyright (C) 2016 The Qt Company Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import QtQuick 2.6 +import QtQuick.Layouts 1.1 +import QtQuick.Controls 2.0 +import QtWebSockets 1.0 + +ApplicationWindow { + id: window + + title: "HUD Tbt Demo" + width: 1920 + height: 1080 + visible: true + + property string api_str: "naviapi" + property string verb_subscribe: "subscribe" + property string event_getdestdir: "naviapi/navicore_getdestdir" + property var msgid_enu: { "call":2, "retok":3, "reterr":4, "event":5 } + property string request_str: "" + property string status_str: "" + + property double state: 0 + WebSocket { + id: websocket + url: bindingAddress + + onStatusChanged: { + if (websocket.status === WebSocket.Error){ + console.log ("Error: " + websocket.errorString) + websocket.active = false + }else if (websocket.status === WebSocket.Open){ + console.log ("Socket Open") + do_subscribe("getdestdir") + }else if (websocket.status === WebSocket.Closed){ + console.log ("Socket closed") + } + } + onTextMessageReceived: { + var message_json = JSON.parse(message) + + console.log ("Raw response: " + message) + console.log ("JSON response: " + message_json) + + if (message_json[0] === msgid_enu.event){ + + if(message_json[2].event === event_getdestdir) + { + var state = message_json[2].data.state + tbt_board.state = state + console.log ("state is ok !") + } + } + else{ + if (message_json[0] !== msgid_enu.retok) { + console.log ("Return value is not ok !") + return + } + } + /* refresh happen */ + } + active: true + } + //subscribe + function do_subscribe( event ) { + request_str = '[' + msgid_enu.call + ',"99999","' + api_str+'/'+verb_subscribe + '", {"value":"' + event + '"} ]' + console.log (request_str) + websocket.sendTextMessage (request_str) + } + TbtBoard { + id: tbt_board + z: 1 + visible: true + anchors.fill: parent + } + +} + -- cgit 1.2.3-korg