Skip to content

Commit a4e1c2e

Browse files
committed
add functionality to save messages in firestore when sent
1 parent 1d470e4 commit a4e1c2e

File tree

2 files changed

+18
-2
lines changed

2 files changed

+18
-2
lines changed

components/AblyChatComponent.jsx

+17
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,15 @@ import React, { useEffect, useState } from "react";
22
import { useChannel } from "./AblyReactEffect";
33
import { useAuthContext } from "../hooks/useAuthContext";
44
import { userAgent } from "next/server";
5+
import { collection, addDoc, getDocs, query } from "firebase/firestore";
6+
import { db } from "../firebase/config";
7+
8+
const q = query(collection(db, "messages"), where("channel", "==", "4"));
9+
10+
const querySnapshot = await getDocs(collection(db, "messages"));
11+
querySnapshot.forEach((doc) => {
12+
console.log(`${doc.id} => ${doc.data()}`);
13+
});
514

615
const AblyChatComponent = (props) => {
716
const { user } = useAuthContext();
@@ -21,7 +30,15 @@ const AblyChatComponent = (props) => {
2130
// This means we'll always have up to 199 message + 1 new message, stored using the
2231
// setMessages react useState hook
2332
});
33+
2434
const sendChatMessage = (messageText) => {
35+
const docRef = addDoc(collection(db, "messages"), {
36+
user: user.displayName,
37+
message: messageText,
38+
channel: props.channelNum.channel,
39+
});
40+
console.log("Document written with ID: ", docRef.id);
41+
2542
channel.publish({ name: user.displayName, data: messageText });
2643
setMessageText("");
2744
inputBox.focus();

components/AblyReactEffect.js

+1-2
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,10 @@ import { useEffect } from "react";
44
const ably = new Ably.Realtime.Promise({ authUrl: "/api/createTokenRequest" });
55
export function useChannel(channelName, callbackOnMessage) {
66
const channel = ably.channels.get(channelName);
7-
console.log(channelName);
87

98
const onMount = () => {
109
channel.subscribe((msg) => {
11-
console.log(msg), callbackOnMessage(msg);
10+
callbackOnMessage(msg);
1211
});
1312
};
1413

0 commit comments

Comments
 (0)