Clean up app message handling a little

This commit is contained in:
hensm
2022-04-25 10:17:59 +01:00
parent 88190bf12f
commit 418fc55112
11 changed files with 91 additions and 53 deletions

View File

@@ -2,9 +2,9 @@
import { Channel } from "castv2";
import { sendMessage } from "../../lib/nativeMessaging";
import messaging from "../../messaging";
import { ReceiverDevice } from "../../types";
import { ReceiverDevice } from "../../messagingTypes";
import { ReceiverMessage } from "./types";
import CastClient, { NS_CONNECTION, NS_HEARTBEAT } from "./client";
@@ -74,7 +74,7 @@ export default class Session extends CastClient {
const { friendlyName } = this.receiverDevice;
sendMessage({
messaging.sendMessage({
subject: "cast:sessionCreated",
data: {
sessionId: this.sessionId,
@@ -104,7 +104,7 @@ export default class Session extends CastClient {
break;
}
sendMessage({
messaging.sendMessage({
subject: "cast:sessionUpdated",
data: {
sessionId: this.sessionId,
@@ -141,7 +141,7 @@ export default class Session extends CastClient {
messageData = JSON.stringify(messageData);
sendMessage({
messaging.sendMessage({
subject: "cast:receivedSessionMessage",
data: {
sessionId: this.sessionId,
@@ -187,7 +187,7 @@ export default class Session extends CastClient {
// Handle client connection closed
this.client.on("close", () => {
if (this.sessionId) {
sendMessage({
messaging.sendMessage({
subject: "cast:sessionStopped",
data: { sessionId: this.sessionId }
});

View File

@@ -1,14 +1,10 @@
"use strict";
import castv2 from "castv2";
import { sendMessage } from "../../lib/nativeMessaging";
import { Message } from "../../messaging";
import messaging, { Message } from "../../messaging";
import Session from "./Session";
import CastClient, { NS_CONNECTION, NS_RECEIVER } from "./client";
const sessions = new Map<string, Session>();
export function handleCastMessage(message: Message) {
@@ -29,7 +25,7 @@ export function handleCastMessage(message: Message) {
const session = sessions.get(sessionId);
if (!session) {
sendMessage({
messaging.sendMessage({
subject: "cast:impl_sendMessage",
data: {
error: "Session does not exist",
@@ -44,7 +40,7 @@ export function handleCastMessage(message: Message) {
try {
session.sendReceiverMessage(messageData);
} catch (err) {
sendMessage({
messaging.sendMessage({
subject: "cast:impl_sendMessage",
data: {
error: `Failed to send message (${err})`,
@@ -57,7 +53,7 @@ export function handleCastMessage(message: Message) {
}
// Success
sendMessage({
messaging.sendMessage({
subject: "cast:impl_sendMessage",
data: { sessionId, messageId }
});
@@ -70,7 +66,7 @@ export function handleCastMessage(message: Message) {
const session = sessions.get(sessionId);
if (!session) {
sendMessage({
messaging.sendMessage({
subject: "cast:impl_sendMessage",
data: {
error: "Session does not exist",
@@ -91,7 +87,7 @@ export function handleCastMessage(message: Message) {
session.sendMessage(namespace, messageData);
} catch (err) {
sendMessage({
messaging.sendMessage({
subject: "cast:impl_sendMessage",
data: {
error: `Failed to send message (${err})`,
@@ -104,7 +100,7 @@ export function handleCastMessage(message: Message) {
}
// Success
sendMessage({
messaging.sendMessage({
subject: "cast:impl_sendMessage",
data: { sessionId, messageId }
});
@@ -116,7 +112,7 @@ export function handleCastMessage(message: Message) {
const { receiverDevice } = message.data;
const client = new CastClient();
client.connect(receiverDevice.host). then(() => {
client.connect(receiverDevice.host).then(() => {
(client.sendReceiverMessage as any)({ type: "STOP" });
});