wechaty-grpc
    TypeScript icon, indicating that this package has built-in type declarations

    0.20.19 • Public • Published

    Wechaty GRPC

    Node.js NPM PyPI Maven PHP Go

    Wechaty gRPC

    NPM Version PyPI Version Java Version PHP Version

    node Python 3.7 Go Version

    gRPC for Wechaty Puppet Service

    USAGE

    Node.js

    wechaty-grpc@NPM

    Maintainer:

    • @huan - Huan LI (李卓桓)

    Python

    chatie-grpc@PyPI

    Maintainer:

    Go

    github.com/wechaty/go-grpc

    Maintainer:

    Java

    https://mvnrepository.com/artifact/io.github.wechaty/grpc

    Maven:

    <dependency>
        <groupId>io.github.wechaty</groupId>
        <version>0.11.25</version>
        <artifactId>grpc</artifactId>
    </dependency>

    Gradle:

    compile 'io.github.wechaty:grpc:0.11.25'

    Maintainer:

    PHP

    github.com/wechaty/php-grpc

    Maintainer:

    Csharp

    Wechaty.Grpc @ Nuget

    Maintainer:

    DEVELOPMENT

    Debug

    Build

    ./scripts/install-protoc.sh
    npm install

    https://github.com/google/protobuf/releases/latest

    Generate Stubs

    npm run generate

    1. JS for Protocol Buffer

    protoc \
      --js_out="import_style=commonjs,binary:${OUT_DIR}"

    https://github.com/google/protobuf/releases/latest

    2. JS for gRPC Stubs

    protoc \
      --plugin="protoc-gen-grpc=`which grpc_tools_node_protoc_plugin`" \
      --grpc_out="${OUT_DIR}"

    https://www.npmjs.com/package/grpc-tools

    3. TypeScript Typing Definations for Protocol Buffer & gRPC Stubs

    protoc \
      --plugin="protoc-gen-grpc=node_modules/grpc_tools_node_protoc_ts/bin/protoc-gen-ts" \
      --grpc_out="${OUT_DIR}"

    https://github.com/agreatfool/grpc_tools_node_protoc_ts

    4. JS & TS for gRPC Web

    protoc \
      --plugin="protoc-gen-ts=node_modules/ts-protoc-gen/bin/protoc-gen-ts" \
      --ts_out="service=true:${OUT_DIR}"

    https://github.com/improbable-eng/ts-protoc-gen

    OpenAPI

    Thanks for the ecosystem of gRPC, we can generate OpenAPI Specification from our gRPC proto definitions automatically.

    We are using gRPC to JSON proxy generator following the gRPC HTTP spec as the OpenAPI Specification generator (protoc-gen-openapiv2), and using Like grpc-gateway, but written in node and dynamic project to serve a HTTP RESTful API to gRPC proxy.

    gRPC Gateway

    Image credit: grpc-gateway

    Learn more about the RESTful API service for Wechaty from Wechaty OpenAPI.

    gRPC Web

    RESOURCES

    Documentation

    Links

    Protocol Buffer

    gRPC Web

    TypeScript Generator

    Zoo Keeper

    STUN

    TCP hole punching

    Reverse Engineering

    Python Stub

    CSharp grpc

    HISTORY

    master

    v0.20 (Feb 21, 2021)

    1. Rename NPM module name from @chatie/grpc to wechaty-grpc
    2. Add OpenAPI annotations & generators for supporting https://github.com/wechaty/openapi
    3. Code clean.

    v0.18 (Oct 15, 2020)

    • Add new MessageFileStream and MessageImageStream to replace the MessageFile and MessageImage method to avoid blocking nodejs event loop when sending large files (#88) by @windmemory
    • Add new MessageSendFileStream to replace the MessageSendFile method to avoid blocking nodejs event loop when sending large files (#89) by @windmemory

    v0.17 (Aug 5, 2020)

    v0.13 (Apr 19, 2020)

    v0.11 (Apr 10, 2020)

    • Add Go Support (#50 by @dchaofei)
    • Publish Go Module at <github.com/wechaty/go-grpc>

    v0.6 (Feb 2020)

    • Align gRPC Services with Wechaty Puppet Abstraction
    • Add Unit Tests

    v0.2 (Jul 2018)

    • Automatic Generating gRPC Stubs
    • Publish to NPM

    v0.0.1 (May 2018)

    Initial commiit

    MAINTAINER

    Huan LI (李卓桓), Google Developer Expert in Machine Learning (ML GDE), zixia@zixia.net

    Profile of Huan LI (李卓桓) on StackOverflow

    COPYRIGHT & LICENSE

    • Code & Docs © 2018-now Huan LI <zixia@zixia.net>
    • Code released under the Apache-2.0 License
    • Docs released under Creative Commons

    Install

    npm i wechaty-grpc

    DownloadsWeekly Downloads

    715

    Version

    0.20.19

    License

    Apache-2.0

    Unpacked Size

    1.71 MB

    Total Files

    228

    Last publish

    Collaborators

    • zixia