summaryrefslogtreecommitdiff
path: root/protocols/Slack/src/slack_messages.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/Slack/src/slack_messages.cpp')
-rw-r--r--protocols/Slack/src/slack_messages.cpp49
1 files changed, 49 insertions, 0 deletions
diff --git a/protocols/Slack/src/slack_messages.cpp b/protocols/Slack/src/slack_messages.cpp
new file mode 100644
index 0000000000..f78ba3e9db
--- /dev/null
+++ b/protocols/Slack/src/slack_messages.cpp
@@ -0,0 +1,49 @@
+#include "stdafx.h"
+
+/* MESSAGE RECEIVING */
+
+// incoming message flow
+
+
+// writing message/even into db
+int CSlackProto::OnReceiveMessage(MCONTACT hContact, PROTORECVEVENT *pre)
+{
+ //return Proto_RecvMessage(hContact, pre);
+ if (pre->szMessage == NULL)
+ return NULL;
+
+ DBEVENTINFO dbei = {};
+ dbei.szModule = GetContactProto(hContact);
+ dbei.timestamp = pre->timestamp;
+ dbei.flags = 0;
+ dbei.eventType = pre->lParam;
+ dbei.cbBlob = (DWORD)mir_strlen(pre->szMessage) + 1;
+ dbei.pBlob = (PBYTE)pre->szMessage;
+
+ return (INT_PTR)db_event_add(hContact, &dbei);
+}
+
+/* MESSAGE SENDING */
+
+// outcoming message flow
+int CSlackProto::OnSendMessage(MCONTACT hContact, int flags, const char *szMessage)
+{
+ return 0;
+}
+
+// message is received by the other side
+
+// preparing message/action to writing into db
+int CSlackProto::OnPreCreateMessage(WPARAM, LPARAM lParam)
+{
+ MessageWindowEvent *evt = (MessageWindowEvent*)lParam;
+ if (mir_strcmp(GetContactProto(evt->hContact), m_szModuleName))
+ return 0;
+}
+
+/* TYPING */
+
+int CSlackProto::OnUserIsTyping(MCONTACT hContact, int type)
+{
+ return 0;
+} \ No newline at end of file