Merge pull request #1573 from thecodingmachine/PostHogNewAction

Add new action post hog
This commit is contained in:
grégoire parant 2021-11-24 10:02:34 +01:00 committed by GitHub
commit 29c0b57f0c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 38 additions and 0 deletions

View File

@ -47,6 +47,7 @@ class AnalyticsClient {
this.posthogPromise this.posthogPromise
.then((posthog) => { .then((posthog) => {
posthog.capture("$pageView", { roomId, roomGroup }); posthog.capture("$pageView", { roomId, roomGroup });
posthog.capture("enteredRoom");
}) })
.catch(); .catch();
} }
@ -74,5 +75,29 @@ class AnalyticsClient {
}) })
.catch(); .catch();
} }
validationName() {
this.posthogPromise
.then((posthog) => {
posthog.capture("wa-name-validation");
})
.catch();
}
validationWoka(scene: string) {
this.posthogPromise
.then((posthog) => {
posthog.capture("wa-woka-validation", { scene });
})
.catch();
}
validationVideo() {
this.posthogPromise
.then((posthog) => {
posthog.capture("wa-video-validation");
})
.catch();
}
} }
export const analyticsClient = new AnalyticsClient(); export const analyticsClient = new AnalyticsClient();

View File

@ -14,6 +14,7 @@ import { waScaleManager } from "../Services/WaScaleManager";
import { isMobile } from "../../Enum/EnvironmentVariable"; import { isMobile } from "../../Enum/EnvironmentVariable";
import { CustomizedCharacter } from "../Entity/CustomizedCharacter"; import { CustomizedCharacter } from "../Entity/CustomizedCharacter";
import { get } from "svelte/store"; import { get } from "svelte/store";
import { analyticsClient } from "../../Administration/AnalyticsClient";
export const CustomizeSceneName = "CustomizeScene"; export const CustomizeSceneName = "CustomizeScene";
@ -278,6 +279,8 @@ export class CustomizeScene extends AbstractCharacterScene {
return; return;
} }
analyticsClient.validationWoka("CustomizeWoka");
gameManager.setCharacterLayers(layers); gameManager.setCharacterLayers(layers);
this.scene.sleep(CustomizeSceneName); this.scene.sleep(CustomizeSceneName);
waScaleManager.restoreZoom(); waScaleManager.restoreZoom();

View File

@ -2,6 +2,7 @@ import { gameManager } from "../Game/GameManager";
import { ResizableScene } from "./ResizableScene"; import { ResizableScene } from "./ResizableScene";
import { enableCameraSceneVisibilityStore } from "../../Stores/MediaStore"; import { enableCameraSceneVisibilityStore } from "../../Stores/MediaStore";
import { localUserStore } from "../../Connexion/LocalUserStore"; import { localUserStore } from "../../Connexion/LocalUserStore";
import { analyticsClient } from "../../Administration/AnalyticsClient";
export const EnableCameraSceneName = "EnableCameraScene"; export const EnableCameraSceneName = "EnableCameraScene";
@ -27,6 +28,8 @@ export class EnableCameraScene extends ResizableScene {
update(time: number, delta: number): void {} update(time: number, delta: number): void {}
public login(): void { public login(): void {
analyticsClient.validationVideo();
enableCameraSceneVisibilityStore.hideEnableCameraScene(); enableCameraSceneVisibilityStore.hideEnableCameraScene();
this.scene.sleep(EnableCameraSceneName); this.scene.sleep(EnableCameraSceneName);

View File

@ -4,6 +4,7 @@ import { loginSceneVisibleIframeStore, loginSceneVisibleStore } from "../../Stor
import { localUserStore } from "../../Connexion/LocalUserStore"; import { localUserStore } from "../../Connexion/LocalUserStore";
import { connectionManager } from "../../Connexion/ConnectionManager"; import { connectionManager } from "../../Connexion/ConnectionManager";
import { gameManager } from "../Game/GameManager"; import { gameManager } from "../Game/GameManager";
import { analyticsClient } from "../../Administration/AnalyticsClient";
export const LoginSceneName = "LoginScene"; export const LoginSceneName = "LoginScene";
@ -34,6 +35,8 @@ export class LoginScene extends ResizableScene {
} }
public login(name: string): void { public login(name: string): void {
analyticsClient.validationName();
name = name.trim(); name = name.trim();
gameManager.setPlayerName(name); gameManager.setPlayerName(name);

View File

@ -13,6 +13,7 @@ import { PinchManager } from "../UserInput/PinchManager";
import { selectCharacterSceneVisibleStore } from "../../Stores/SelectCharacterStore"; import { selectCharacterSceneVisibleStore } from "../../Stores/SelectCharacterStore";
import { waScaleManager } from "../Services/WaScaleManager"; import { waScaleManager } from "../Services/WaScaleManager";
import { isMobile } from "../../Enum/EnvironmentVariable"; import { isMobile } from "../../Enum/EnvironmentVariable";
import { analyticsClient } from "../../Administration/AnalyticsClient";
//todo: put this constants in a dedicated file //todo: put this constants in a dedicated file
export const SelectCharacterSceneName = "SelectCharacterScene"; export const SelectCharacterSceneName = "SelectCharacterScene";
@ -98,6 +99,9 @@ export class SelectCharacterScene extends AbstractCharacterScene {
if (!this.selectedPlayer) { if (!this.selectedPlayer) {
return; return;
} }
analyticsClient.validationWoka("SelectWoka");
this.scene.stop(SelectCharacterSceneName); this.scene.stop(SelectCharacterSceneName);
waScaleManager.restoreZoom(); waScaleManager.restoreZoom();
gameManager.setCharacterLayers([this.selectedPlayer.texture.key]); gameManager.setCharacterLayers([this.selectedPlayer.texture.key]);