/* * Copyright 2018 Dialog LLC */ import { Metadata } from 'grpc'; import { dialog } from '@dlghq/dialog-api'; import Service, { Config } from './Service'; import { TryCatchWrapper } from '../entities/utils'; class Messaging extends Service { constructor(config: Config) { super(dialog.Messaging, config); } @TryCatchWrapper fetchDialogIndex( request: dialog.RequestFetchDialogIndex, metadata?: Metadata, ): Promise { return this.service.fetchDialogIndexAsync( request, metadata, this.getCallOptions(), ); } @TryCatchWrapper loadDialogs( request: dialog.RequestLoadDialogs, metadata?: Metadata, ): Promise { return this.service.loadDialogsAsync( request, metadata, this.getCallOptions(), ); } @TryCatchWrapper sendMessage( request: dialog.RequestSendMessage, metadata?: Metadata, ): Promise { return this.service.sendMessageAsync( request, metadata, this.getCallOptions(), ); } @TryCatchWrapper updateMessage( request: dialog.RequestUpdateMessage, metadata?: Metadata, ): Promise { return this.service.updateMessageAsync( request, metadata, this.getCallOptions(), ); } @TryCatchWrapper loadHistory( request: dialog.RequestLoadHistory, metadata?: Metadata, ): Promise { return this.service.loadHistoryAsync( request, metadata, this.getCallOptions(), ); } @TryCatchWrapper readMessage( request: dialog.RequestMessageRead, metadata?: Metadata, ): Promise { return this.service.messageReadAsync( request, metadata, this.getCallOptions(), ); } } export default Messaging;