You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
session-desktop/ts/session/utils/Messages.ts

29 lines
773 B
TypeScript

5 years ago
import { RawMessage } from '../types/RawMessage';
import { ContentMessage, SessionRequestMessage } from '../messages/outgoing';
5 years ago
import { EncryptionType, PubKey } from '../types';
5 years ago
5 years ago
export function toRawMessage(
device: PubKey,
message: ContentMessage
): RawMessage {
5 years ago
const timestamp = message.timestamp;
const ttl = message.ttl();
5 years ago
const plainTextBuffer = message.plainTextBuffer();
const encryption =
message instanceof SessionRequestMessage
? EncryptionType.SessionRequest
: EncryptionType.Signal;
5 years ago
// tslint:disable-next-line: no-unnecessary-local-variable
const rawMessage: RawMessage = {
identifier: message.identifier,
plainTextBuffer,
timestamp,
device: device.key,
ttl,
encryption,
5 years ago
};
return rawMessage;
}