From 023dc3907616f4e96151075b7ffe6a5af86b0b72 Mon Sep 17 00:00:00 2001 From: Douglas Barone Date: Thu, 3 Dec 2020 17:50:25 -0400 Subject: [PATCH] UserPresence subscription OK --- server/src/resolvers/Query.js | 2 ++ server/src/server.js | 8 +++++--- web/src/views/UserPresence.vue | 23 ++++++++++++----------- 3 files changed, 19 insertions(+), 14 deletions(-) diff --git a/server/src/resolvers/Query.js b/server/src/resolvers/Query.js index 5ff4b1a..8b4d834 100755 --- a/server/src/resolvers/Query.js +++ b/server/src/resolvers/Query.js @@ -2,6 +2,8 @@ import { User } from '../classes/User' import prisma from '../prisma' +import { updateDevicesInfo } from '../utils/wifiUtils' + const parseSAMAccountName = sAMAccountName => sAMAccountName ? sAMAccountName.replace('.', ' ') : '' diff --git a/server/src/server.js b/server/src/server.js index 24cdc56..470651d 100755 --- a/server/src/server.js +++ b/server/src/server.js @@ -17,9 +17,11 @@ const server = new ApolloServer({ typeDefs, resolvers, subscriptions: { - onConnect: connectionParams => ({ - authorization: connectionParams.authorization - }) + onConnect: connectionParams => { + return { + authorization: connectionParams.headers.Authorization + } + } }, schemaDirectives, context: ({ req, connection }) => { diff --git a/web/src/views/UserPresence.vue b/web/src/views/UserPresence.vue index d8779bf..f376f64 100644 --- a/web/src/views/UserPresence.vue +++ b/web/src/views/UserPresence.vue @@ -13,16 +13,6 @@ clearable style="max-width: 480px" /> - - mdi-refresh - @@ -70,7 +60,6 @@ export default { apollo: { userPresence: { fetchPolicy: 'cache-and-network', - pollInterval: 300000, // 5min query: gql` query($search: String = "") { userPresence(search: $search) { @@ -95,6 +84,18 @@ export default { } }, debounce: 250 + }, + $subscribe: { + userPresenceUpdated: { + query: gql` + subscription { + userPresenceUpdated + } + `, + result() { + this.$apollo.queries.userPresence.refresh() + } + } } }, computed: {