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.
tailchat/server/services/debug.service.ts

37 lines
851 B
TypeScript

import { TcService, TcPureContext } from 'tailchat-server-sdk';
import { sleep } from '../lib/utils';
export default class TestService extends TcService {
get serviceName(): string {
return 'debug';
}
onInit(): void {
this.registerAction('hello', this.echo, {
params: {
name: [{ type: 'string', optional: true }],
},
});
this.registerAction('sleep', this.sleep, {
params: {
second: 'number',
},
});
}
// Action
echo(ctx: TcPureContext<{ name: string }>): string {
console.log(ctx.meta);
return `Hello ${
ctx.params.name ?? ctx.meta.t('匿名用户')
}, \nHere is your meta info: ${JSON.stringify(ctx.meta, null, 2)}`;
}
// Action
async sleep(ctx: TcPureContext<{ second: number }>) {
await sleep(ctx.params.second * 1000);
return true;
}
}