npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@juzi/wechaty-puppet-service

v1.0.96

Published

Puppet Service for Wechaty

Downloads

3,123

Readme

wechaty-puppet-service

NPM Version NPM ES Modules

Wechaty Service

Wechaty Puppet Service is gRPC for Wechaty Puppet Provider.

For example, we can cloudify the Wechaty Puppet Provider wechaty-puppet-padlocal to a Wechaty Puppet Service by running our Wechaty Puppet Service Token Gateway.

If you want to learn more about what is Wechaty Puppet and Wechaty Puppet Service, we have a blog post to explain them in details at https://wechaty.js.org/2021/01/14/wechaty-puppet-service/

Powered by Wechaty

Features

  1. Consume Wechaty Puppet Service
  2. Provide Wechaty Puppet Service

Usage

import { WechatyBuilder } from 'wechaty'

const wechaty = WechatyBuilder.build({
  puppet: 'wechaty-puppet-service',
  puppetOptions: {
    token: `${TOKEN}`
  }
})

wechaty.start()

Learn more about Wechaty Puppet Token from our official website: http://wechaty.js.org/docs/puppet-services/

Environment Variables

1 WECHATY_PUPPET_SERVICE_TOKEN

The token set to this environment variable will become the default value of puppetOptions.token

WECHATY_PUPPET_SERVICE_TOKEN=${WECHATY_PUPPET_SERVCIE_TOKEN} node bot.js

gRPC Health Checking Protocol

From version 0.37, Wechaty Puppet Service start supporting the GRPC Health Checking Protocol.

$ npm install --global wechaty-token
$ go install github.com/grpc-ecosystem/grpc-health-probe@latest

$ wechaty-token discovery uuid_12345678-1234-1234-1234-567812345678
{"host": 1.2.3.4, "port": 5678}

$ grpc-health-probe -tls -tls-no-verify -addr 1.2.3.4
status: SERVING

See:

Resources

Authentication

  1. Authentication and Security in gRPC Microservices - Jan Tattermusch, Google
  2. [gRPC #15] Implement gRPC interceptor + JWT authentication in Go

History

master v0.31

  1. ES Modules supported.
  2. gRPC Health Checking Protocol support

v0.30 (Aug 25, 2021)

  1. Implemented TLS and server-side token authorization.
  2. Refactor the gRPC client code.
  3. Add local payload cache to reduce the cost of RPC.

New environment variables

  1. WECHATY_PUPPET_SERVICE_TLS_CA_CERT: can be overwrite by options.tlsRootCert. Set Root CA Cert to verify the server or client.

For Puppet Server:

| Environment Variable | Options | Description | | -------------------- | ------- | ----------- | | WECHATY_PUPPET_SERVICE_TLS_SERVER_CERT | options.tls.serverCert | Server CA Cert (string data) | | WECHATY_PUPPET_SERVICE_TLS_SERVER_KEY | options.tls.serverKey | Server CA Key (string data) | | WECHATY_PUPPET_SERVICE_NO_TLS_INSECURE_SERVER | options.tls.disable | Set true to disable server TLS |

For Puppet Client:

| Environment Variable | Options | Description | | -------------------- | ------- | ----------- | | WECHATY_PUPPET_SERVICE_AUTHORITY | options.authority | Service discovery host, default: api.chatie.io | | WECHATY_PUPPET_SERVICE_TLS_CA_CERT | options.caCert | Certification Authority Root Cert, default is using Wechaty Community root cert | | WECHATY_PUPPET_SERVICE_TLS_SERVER_NAME | options.serverName | Server Name (mast match for SNI) | | WECHATY_PUPPET_SERVICE_NO_TLS_INSECURE_CLIENT | options.tls.disable | Set true to disable client TLS |

Changelog

main v1.0 (Oct 29, 2021)

Release v1.0 of Wechaty Puppet Service.

  1. use wechaty-token for gRPC service discovery with wechaty schema (xDS like)
  2. deprecated WECHATY_SERVICE_DISCOVERY_ENDPOINT, replaced by WECHATY_PUPPET_SERVICE_AUTHORITY. (See #156)
  3. enable TLS & Token Auth (See #124)

v0.14 (Jan 2021)

Rename from ~~wechaty-puppet-hostie~~ to wechaty-puppet-service (Issue #118)

v0.10.4 (Oct 2020)

  1. Add 'grpc.default_authority' to gRPC client option.

    See: Issue #78: gRPC server can use the authority to identify current user

v0.6 (Apr 2020)

Beta Version

  1. Reconnect to Hostie Server with RxSJ Observables

v0.3 (Feb 2020)

  1. Publish the NPM module wechaty-puppet-hostie
  2. Implemented basic hostie features with gRPC module: @chatie/grpc

v0.0.1 (Jun 2018)

Designing the puppet hostie with the following protocols:

  1. gRPC
  2. JSON RPC
  3. OpenAPI/Swagger

Maintainers

Copyright & License

  • Code & Docs © 2018-now Huan LI <[email protected]>
  • Code released under the Apache-2.0 License
  • Docs released under Creative Commons