History

Steps closer...

Zach Fox committed 7 years ago

Commit c8464781 parent a41ae3d2 files · +23 −4Browse files

Showing the changes to interface/src/scripting/ScreenshareScriptingInterface.cpp (1 of 2 files). Show all

Unified · Split

interface/src/scripting/ScreenshareScriptingInterface.cpp+21−4
@@ -30,12 +30,14 @@ ScreenshareScriptingInterface::~ScreenshareScriptingInterface() { · 29 unmodified lines
3030 static const EntityTypes::EntityType LOCAL_SCREENSHARE_WEB_ENTITY_TYPE = EntityTypes::Web;
3131 static const uint8_t LOCAL_SCREENSHARE_WEB_ENTITY_FPS = 30;
3232 static const glm::vec3 LOCAL_SCREENSHARE_WEB_ENTITY_LOCAL_POSITION(0.0f, 0.0f, 0.1f);
33−static const QString LOCAL_SCREENSHARE_WEB_ENTITY_URL = "https://s3.amazonaws.com/hifi-content/Experiences/Releases/usefulUtilities/smartBoard/screenshareViewer/screenshareClient.html";
33+static const QString LOCAL_SCREENSHARE_WEB_ENTITY_URL = "https://hifi-content.s3.amazonaws.com/Experiences/Releases/usefulUtilities/smartBoard/screenshareViewer/screenshareClient.html?1";
3434 void ScreenshareScriptingInterface::startScreenshare(const QUuid& screenshareZoneID, const QUuid& smartboardEntityID, const bool& isPresenter) {
3535 if (QThread::currentThread() != thread()) {
3636 // We must start a new QProcess from the main thread.
3737 QMetaObject::invokeMethod(
3838 this, "startScreenshare",
39+ Q_ARG(const QUuid&, screenshareZoneID),
40+ Q_ARG(const QUuid&, smartboardEntityID),
3941 Q_ARG(const bool&, isPresenter)
4042 );
4143 return;
@@ -111,10 +113,13 @@ void ScreenshareScriptingInterface::startScreenshare(const QUuid& screenshareZon · 69 unmodified lines
111113 localScreenshareWebEntityProps.setPosition(smartboardProps.getPosition());
112114 localScreenshareWebEntityProps.setDimensions(smartboardProps.getDimensions());
113115
114− _screenshareViewerLocalWebEntityUUID = esi->addEntity(localScreenshareWebEntityProps, "local");
116+ QString hostType = "local";
117+ _screenshareViewerLocalWebEntityUUID = esi->addEntity(localScreenshareWebEntityProps, hostType);
115118
116119 QObject::connect(esi.data(), &EntityScriptingInterface::webEventReceived, this, [&](const QUuid& entityID, const QVariant& message) {
117120 if (entityID == _screenshareViewerLocalWebEntityUUID) {
121+ qDebug() << "ZRF HERE! Inside `webEventReceived(). `entityID`:" << entityID << "`_screenshareViewerLocalWebEntityUUID`:" << _screenshareViewerLocalWebEntityUUID;
122+
118123 auto esi = DependencyManager::get<EntityScriptingInterface>();
119124 if (!esi) {
120125 return;
@@ -123,15 +128,26 @@ void ScreenshareScriptingInterface::startScreenshare(const QUuid& screenshareZon · 2 unmodified lines
123128 QJsonDocument jsonMessage = QJsonDocument::fromVariant(message);
124129 QJsonObject jsonObject = jsonMessage.object();
125130
126− if (jsonObject["type"] == "eventbridge_ready") {
131+ qDebug() << "ZRF HERE! Inside `webEventReceived(). `message`:" << message << "`jsonMessage`:" << jsonMessage;
132+
133+ if (jsonObject["app"] != "screenshare") {
134+ return;
135+ }
136+
137+ qDebug() << "ZRF HERE! Inside `webEventReceived(). we're still here!";
138+
139+ if (jsonObject["method"] == "eventBridgeReady") {
127140 QJsonObject responseObject;
128− responseObject.insert("type", "receiveConnectionInfo");
141+ responseObject.insert("app", "screenshare");
142+ responseObject.insert("method", "receiveConnectionInfo");
129143 QJsonObject responseObjectData;
130144 responseObjectData.insert("token", token);
131145 responseObjectData.insert("projectAPIKey", apiKey);
132146 responseObjectData.insert("sessionID", sessionID);
133147 responseObject.insert("data", responseObjectData);
134148
149+ qDebug() << "ZRF HERE! Inside `webEventReceived(). `responseObject.toVariantMap()`:" << responseObject.toVariantMap();
150+
135151 esi->emitScriptEvent(_screenshareViewerLocalWebEntityUUID, responseObject.toVariantMap());
136152 }
137153 }
@@ -154,4 +170,5 @@ void ScreenshareScriptingInterface::stopScreenshare() { · 16 unmodified lines
154170 esi->deleteEntity(_screenshareViewerLocalWebEntityUUID);
155171 }
156172 }
173+ _screenshareViewerLocalWebEntityUUID = "{00000000-0000-0000-0000-000000000000}";
157174 }