Wechaty Puppet Provider for providing/consuming the Wechaty Puppet Service
APACHE-2.0 License
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/
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/
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
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:
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 |
Release v1.0 of Wechaty Puppet Service.
wechaty
schema (xDS like)WECHATY_SERVICE_DISCOVERY_ENDPOINT
,WECHATY_PUPPET_SERVICE_AUTHORITY
.Rename from wechaty-puppet-hostie to wechaty-puppet-service
(Issue #118)
See: Issue #78: gRPC server can use the authority to identify current user
Beta Version
Designing the puppet hostie with the following protocols: