Websocket opening logic

This commit is contained in:
Eliot Berriot 2018-03-02 00:14:40 +01:00
parent 88e6808155
commit 6e6d874f3a
No known key found for this signature in database
GPG Key ID: DD6965E2476E5C27
1 changed files with 24 additions and 0 deletions

View File

@ -33,6 +33,9 @@
</template>
<script>
import { WebSocketBridge } from 'django-channels'
import logger from '@/logging'
import Sidebar from '@/components/Sidebar'
import Raven from '@/components/Raven'
@ -44,10 +47,31 @@ export default {
},
created () {
this.$store.dispatch('instance/fetchSettings')
this.openWebsocket()
let self = this
setInterval(() => {
// used to redraw ago dates every minute
self.$store.commit('ui/computeLastDate')
}, 1000 * 60)
},
methods: {
openWebsocket () {
let self = this
let token = this.$store.state.auth.token
// let token = 'test'
const bridge = new WebSocketBridge()
bridge.connect(
`/api/v1/instance/activity?token=${token}`,
null,
{reconnectInterval: 5000})
bridge.listen(function (event) {
logger.default.info('Received timeline update', event)
self.$store.commit('instance/event', event)
})
bridge.socket.addEventListener('open', function () {
console.log('Connected to WebSocket')
})
}
}
}
</script>