Merge pull request #5409 from matrix-org/t3chguy/home-page-analytics
Add Analytics instrumentation to the Homepage
This commit is contained in:
commit
c94137b106
2 changed files with 23 additions and 3 deletions
|
@ -31,10 +31,26 @@ import {UPDATE_EVENT} from "../../stores/AsyncStore";
|
||||||
import {useEventEmitter} from "../../hooks/useEventEmitter";
|
import {useEventEmitter} from "../../hooks/useEventEmitter";
|
||||||
import MatrixClientContext from "../../contexts/MatrixClientContext";
|
import MatrixClientContext from "../../contexts/MatrixClientContext";
|
||||||
import MiniAvatarUploader, {AVATAR_SIZE} from "../views/elements/MiniAvatarUploader";
|
import MiniAvatarUploader, {AVATAR_SIZE} from "../views/elements/MiniAvatarUploader";
|
||||||
|
import Analytics from "../../Analytics";
|
||||||
|
import CountlyAnalytics from "../../CountlyAnalytics";
|
||||||
|
|
||||||
const onClickSendDm = () => dis.dispatch({action: 'view_create_chat'});
|
const onClickSendDm = () => {
|
||||||
const onClickExplore = () => dis.fire(Action.ViewRoomDirectory);
|
Analytics.trackEvent('home_page', 'button', 'dm');
|
||||||
const onClickNewRoom = () => dis.dispatch({action: 'view_create_room'});
|
CountlyAnalytics.instance.track("home_page_button", { button: "dm" });
|
||||||
|
dis.dispatch({action: 'view_create_chat'});
|
||||||
|
};
|
||||||
|
|
||||||
|
const onClickExplore = () => {
|
||||||
|
Analytics.trackEvent('home_page', 'button', 'room_directory');
|
||||||
|
CountlyAnalytics.instance.track("home_page_button", { button: "room_directory" });
|
||||||
|
dis.fire(Action.ViewRoomDirectory);
|
||||||
|
};
|
||||||
|
|
||||||
|
const onClickNewRoom = () => {
|
||||||
|
Analytics.trackEvent('home_page', 'button', 'create_room');
|
||||||
|
CountlyAnalytics.instance.track("home_page_button", { button: "create_room" });
|
||||||
|
dis.dispatch({action: 'view_create_room'});
|
||||||
|
};
|
||||||
|
|
||||||
interface IProps {
|
interface IProps {
|
||||||
justRegistered?: boolean;
|
justRegistered?: boolean;
|
||||||
|
|
|
@ -21,6 +21,8 @@ import AccessibleButton from "./AccessibleButton";
|
||||||
import Tooltip from './Tooltip';
|
import Tooltip from './Tooltip';
|
||||||
import MatrixClientContext from "../../../contexts/MatrixClientContext";
|
import MatrixClientContext from "../../../contexts/MatrixClientContext";
|
||||||
import {useTimeout} from "../../../hooks/useTimeout";
|
import {useTimeout} from "../../../hooks/useTimeout";
|
||||||
|
import Analytics from "../../../Analytics";
|
||||||
|
import CountlyAnalytics from '../../../CountlyAnalytics';
|
||||||
|
|
||||||
export const AVATAR_SIZE = 52;
|
export const AVATAR_SIZE = 52;
|
||||||
|
|
||||||
|
@ -56,6 +58,8 @@ const MiniAvatarUploader: React.FC<IProps> = ({ hasAvatar, hasAvatarLabel, noAva
|
||||||
onChange={async (ev) => {
|
onChange={async (ev) => {
|
||||||
if (!ev.target.files?.length) return;
|
if (!ev.target.files?.length) return;
|
||||||
setBusy(true);
|
setBusy(true);
|
||||||
|
Analytics.trackEvent("mini_avatar", "upload");
|
||||||
|
CountlyAnalytics.instance.track("mini_avatar_upload");
|
||||||
const file = ev.target.files[0];
|
const file = ev.target.files[0];
|
||||||
const uri = await cli.uploadContent(file);
|
const uri = await cli.uploadContent(file);
|
||||||
await setAvatarUrl(uri);
|
await setAvatarUrl(uri);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue