aboutsummaryrefslogtreecommitdiff
path: root/src/services/backend_interactor_service
diff options
context:
space:
mode:
authorHenry Jameson <me@hjkos.com>2019-11-24 18:50:28 +0200
committerHenry Jameson <me@hjkos.com>2019-11-24 18:50:28 +0200
commit319bb4ac2895b8eb62da42e3f95addc9bb67b1a0 (patch)
treede24974025e9df8ca77b6417df3813e1722beeec /src/services/backend_interactor_service
parentddb6fb9217789e90490a4ec1ce7a2dd9ced67631 (diff)
initial streaming work
Diffstat (limited to 'src/services/backend_interactor_service')
-rw-r--r--src/services/backend_interactor_service/backend_interactor_service.js15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/services/backend_interactor_service/backend_interactor_service.js b/src/services/backend_interactor_service/backend_interactor_service.js
index 57fdccde..0cef4640 100644
--- a/src/services/backend_interactor_service/backend_interactor_service.js
+++ b/src/services/backend_interactor_service/backend_interactor_service.js
@@ -1,4 +1,4 @@
-import apiService from '../api/api.service.js'
+import apiService, { getMastodonSocketURI, handleMastoWS } from '../api/api.service.js'
import timelineFetcherService from '../timeline_fetcher/timeline_fetcher.service.js'
import notificationsFetcher from '../notifications_fetcher/notifications_fetcher.service.js'
import followRequestFetcher from '../../services/follow_request_fetcher/follow_request_fetcher.service'
@@ -16,6 +16,19 @@ const backendInteractorService = credentials => ({
return followRequestFetcher.startFetching({ store, credentials })
},
+ startUserSocket ({ store, onMessage }) {
+ const serv = store.rootState.instance.server.replace('https', 'wss')
+ // const serb = 'ws://localhost:8080/'
+ const url = serv + getMastodonSocketURI({ credentials, stream: 'user' })
+ const socket = new WebSocket(url)
+ console.log(socket)
+ if (socket) {
+ socket.addEventListener('message', (wsEvent) => onMessage(handleMastoWS(wsEvent)))
+ } else {
+ throw new Error('failed to connect to socket')
+ }
+ },
+
...Object.entries(apiService).reduce((acc, [key, func]) => {
return {
...acc,