MCPcopy
hub / github.com/tsrpc/tsrpc / sendMsg

Method sendMsg

src/client/ws/WsClient.ts:266–288  ·  view source on GitHub ↗
(msgName: T, msg: ServiceType['msg'][T])

Source from the content-addressed store, hash-verified

264 }
265
266 sendMsg<T extends keyof ServiceType['msg']>(msgName: T, msg: ServiceType['msg'][T]): SuperPromise<void, TsrpcError> {
267 this.logger.log('[SendMsg]', msgName, msg);
268
269 if (!this._ws) {
270 throw new Error('Not connected')
271 }
272
273 // GetService
274 let service = this.serviceMap.msgName2Service[msgName as string];
275 if (!service) {
276 throw new Error('Invalid msg name: ' + msgName)
277 }
278
279 // Encode
280 let buf = TransportDataUtil.encodeMsg(this.tsbuffer, service, msg);
281
282 // Send Data
283 return new SuperPromise<void, TsrpcError>((rs, rj) => {
284 this._ws!.send(buf, e => {
285 e ? rj(e) : rs();
286 })
287 })
288 }
289}
290
291const defaultClientOptions: WsClientOptions<any> = {

Callers 3

ws.tsFile · 0.45
http.test.tsFile · 0.45
ws.test.tsFile · 0.45

Calls 2

encodeMsgMethod · 0.80
logMethod · 0.65

Tested by

no test coverage detected