UNPKG

wechaty-grpc

Version:
83 lines 3.26 kB
"use strict"; // import { Metadata } from '@grpc/grpc-js' // import { CallMetadataGenerator } from '@grpc/grpc-js/build/src/call-credentials' Object.defineProperty(exports, "__esModule", { value: true }); exports.testStream = exports.testDing = exports.testAlias = void 0; const mod_js_1 = require("../src/mod.js"); const promisify_js_1 = require("./promisify.js"); async function testAlias(client) { const request = new mod_js_1.puppet.ContactAliasRequest(); const contactAlias = (0, promisify_js_1.promisify)(client.contactAlias.bind(client)); { const response = await contactAlias(request); const alias = response.getAlias(); console.info('returned alias:', alias); } console.info('##############'); { request.setAlias('test alias'); const response = await contactAlias(request); const returnAliasWrapper = response.getAlias(); if (returnAliasWrapper) { console.info('returned alias:', returnAliasWrapper); throw new Error('should not has alas return'); } console.info('ok'); } } exports.testAlias = testAlias; async function testDing(client) { const ding = (0, promisify_js_1.promisify)(client.ding.bind(client)); const dingRequest = new mod_js_1.puppet.DingRequest(); dingRequest.setData('dingdong'); try { // const metadata = new Metadata() // metadata.set('grpc.default_authority', 'puppet_token') await ding(dingRequest /* metadata */); } catch (e) { console.error(e); } } exports.testDing = testDing; function testStream(client) { // event(request: wechaty_puppet_event_pb.EventRequest, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<wechaty_puppet_event_pb.EventRequest>; const eventStream = client.event(new mod_js_1.puppet.EventRequest()); eventStream .on('data', (chunk) => { // console.info('EventType:', EventType) // console.info('type:', chunk.getType(), EventType[chunk.getType()], EventType[23]) console.info('payload:', chunk.getPayload()); // console.info('eventStream.on(data):', chunk) }) .on('end', () => { console.info('eventStream.on(end)'); }); } exports.testStream = testStream; async function main() { // const metadata = new grpc.Metadata() // metadata.add('authorization', 'Bearer ' + 'access_token') // const generateMetadata: CallMetadataGenerator = (_params, callback) => { console.info('generateMetadata'); callback(null, metadata) } // const authCred = grpc.credentials.createFromMetadataGenerator(generateMetadata) // const sslCred = grpc.credentials.createSsl() // const creds = grpc.credentials.combineChannelCredentials( // sslCred, // authCred, // ) const creds = mod_js_1.grpc.credentials.createInsecure(); const client = new mod_js_1.puppet.PuppetClient('localhost:8788', creds, { 'grpc.default_authority': 'puppet_token', }); testStream(client); setInterval(() => testDing(client), 1000); // await testAlias(client) return 0; } main() // .then(process.exit) .catch(e => { console.error(e); process.exit(1); }); //# sourceMappingURL=client.js.map