summary refs log tree commit diff
path: root/rtc/src/mongoStub.hpp
diff options
context:
space:
mode:
authorFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-08-12 20:33:42 +0200
committerFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-08-12 20:33:42 +0200
commita92c6637cea0ce595c712c3d445b57a1184e833e (patch)
treeb4aa50b4091617195025e2ed36406ae61e8fe3b9 /rtc/src/mongoStub.hpp
parent:sparkles: util (diff)
downloadserver-a92c6637cea0ce595c712c3d445b57a1184e833e.tar.xz
:sparkles: rtc
Diffstat (limited to 'rtc/src/mongoStub.hpp')
-rw-r--r--rtc/src/mongoStub.hpp41
1 files changed, 41 insertions, 0 deletions
diff --git a/rtc/src/mongoStub.hpp b/rtc/src/mongoStub.hpp
new file mode 100644
index 00000000..2809142f
--- /dev/null
+++ b/rtc/src/mongoStub.hpp
@@ -0,0 +1,41 @@
+#ifndef MONGOSTUB_HPP
+#define MONGOSTUB_HPP
+
+#include <boost/utility.hpp>
+#include <cstdint>
+#include <iostream>
+#include <vector>
+#include <mongocxx/client.hpp>
+#include <mongocxx/instance.hpp>
+#include <mongocxx/change_stream.hpp>
+#include <bsoncxx/json.hpp>
+#include <bsoncxx/document/element.hpp>
+
+
+class mongoStub{
+	public:
+		mongoStub();
+
+		struct mongoMessage{
+			std::string eventName;
+			std::vector<std::string> data;
+		};
+
+		std::vector<mongoMessage> getNewMessages(mongocxx::change_stream* colCs);
+
+		mongocxx::collection getCol() const { return col; }
+
+		
+		
+	private:
+		mongocxx::instance instance;
+		mongocxx::client client{mongocxx::uri{}};
+		mongocxx::database db;
+		mongocxx::collection col;
+		mongocxx::change_stream* colCs = nullptr;
+
+		void handleUdpRequest(std::string address, int port, std::string mode);
+		void handleVoiceRequest();
+};
+
+#endif