Ponte de serviço de aplicação de matriz Wechat (微信)
Matrix é uma rede aberta para comunicação segura e descentralizada, que pode ser usada de forma semelhante ao Pidgin no seu telefone.
O Pidgin tenta reunir todos os seus amigos em um só lugar no Linux, independentemente do IM que eles usam. Com o Matrix você pode ter seu cliente telefônico conectado ao seu servidor privado, que pode ser altamente personalizado. Matrix não usa o protocolo XMPP, ele usa uma API REST para facilitar a extensão.
O elemento cliente [Matrix] é um aplicativo de bate-papo universal seguro inteiramente sob seu controle. Suporta desktop (Windows, Mac e Linux) e celular (Android e iOS)
matrix-appservice-wechaty
matrix-appservice-wechaty
é um WeChat (微信) Matrix AppService para conectar seus grupos WeChat às salas Matrix.
Foi oficialmente listado na página [Matrix] Bridge para Wechaty.
De acordo com os tipos de ponte, o Matrix Wechaty Bot implementa uma ponte simples de marionetes com salas de portal porque queremos trazer todas as conversas do WeChat para o Matrix e permitir que o usuário do Matrix controle sua conta no Wechat.
sudo npm install -g matrix-appservice-wechaty
matrix-appservcie-wechaty
é tudo que você precisa.
config.yaml
Copie config/config.sample.yaml para config.yaml
e atualize-o para corresponder à sua configuração.
domain
precisa mudar para o seu nome de domínio, que deve apontar para o seu servidor doméstico.homeserverUrl
precisa mudar para o URL do seu servidor doméstico, com o número da porta incluído.registration
precisa mudar para o nome do arquivo yaml de registro (veja a próxima parte para saber como gerá-lo)wechaty-registration.yaml
Depois de configurarmos o config.yaml
, podemos gerar o arquivo wechaty-registration.yaml
para registrar o appservice no servidor doméstico:
export APP_SERVICE_ENDPOINT= ' http://localhost:8788 '
matrix-appservice-wechaty
--config config.yaml
--url " $APP_SERVICE_ENDPOINT "
--generate-registration
Nota: A URL APP_SERVICE_ENDPIOINT
é usada pelo servidor inicial para se comunicar com o appservice, neste exemplo é: http://localhost:8788
. Se você tiver outros serviços de aplicativos ou outros requisitos, escolha um nome de host e uma porta apropriados.
Edite seu arquivo homeserver.yaml
e atualize a entrada app_service_config_files
com o caminho para o arquivo wechaty-registration.yaml
.
app_service_config_files: ["/data/wechaty-registration.yaml"]
Você precisará reiniciar o servidor sinapse.
Para usuários do Docker:
export SYNAPSE_CONTAINER_ID= $( docker ps | grep synapse | awk ' {print $1} ' )
docker restart $SYNAPSE_CONTAINER_ID
Ou se você não estiver usando o docker:
synctl restart
Lembre-se de reiniciá-lo sempre que o arquivo de registro for atualizado.
Vamos iniciar a ponte matrix-appservice-wechaty
, com a porta especificada em wechaty-registration.yaml
( 8788
no exemplo acima)
export WECHATY_PUPPET=wechaty-puppet-padplus
export WECHATY_PUPPET_PADPLUS_TOKEN=xxxxxxxxxxxxxxxxxxxxx
matrix-appservice-wechaty
--config config.yaml
--file wechaty-registration.yaml
Nota: Wechaty é uma estrutura muito poderosa que oferece suporte aos protocolos Web, iPad, Win32, Mac e iOS do WeChat. Saiba mais sobre os protocolos WeChaty em nosso Diretório Wechaty Puppet e você pode solicitar um token para usar wechaty-puppet-padplus em nosso Programa de Suporte para Desenvolvedores
A ponte deve começar a funcionar logo em seguida.
O caminho atual ( $(pwd)
) deve ter o arquivo wechaty-registration.yaml
e o arquivo config.yaml
. Dados adicionais relacionados à ponte serão armazenados aqui.
wechaty-registration.yaml
id : wechaty
hs_token : 4f2763d5cc6e931967ec89efdde1123772945184b4cbe99e8fa9538122015e92
as_token : c27815bdd699d2eaefb499c83f99ce1a7983a9688811269fbcc17b632b0b250e
namespaces :
users :
- exclusive : true
regex : ' @wechaty_.* '
aliases :
- exclusive : true
regex : ' #wechaty_.* '
rooms : []
url : matrix.chatie.io:8788
sender_localpart : wechaty
rate_limited : false
protocols :
- wechaty
config.yaml
domain : chatie.io
homeserverUrl : https://matrix.chatie.io
registration : wechaty-registration.yaml
Publicamos uma imagem docker wechaty/matrix-appservice para sua conveniência.
Você pode usar o docker para executar a ponte matricial-appservice-wechaty adicionando as seguintes configurações ao seu docker-compose.yml
matrix-appservice-wechaty :
container_name : matrix-appservice-wechaty
image : wechaty/matrix-appservice
volumes :
- ./bridges/matrix-appservice-wechaty:/data
networks :
- default
environment :
- WECHATY_PUPPET_PADPLUS_TOKEN=puppet_padplus_<token>
- WECHATY_PUPPET=wechaty-puppet-padplus
command : ["--config", "/data/config.yaml", "--file", "/data/wechaty-registration.yaml", "--port", "8788"]
@wechaty:your.domain.ltd
)!login
(três vezes... wip... )wechaty
enviará a você um código QR para digitalização no WeChat.Depois de escanear o QR Code e confirmá-lo no seu telefone, tudo será configurado automaticamente pelo bot wechaty.
!login
Basta executar o comando de gerenciamento !logout
.
Seguindo o guia de @spantaleev, você pode configurar seu servidor matricial em apenas dezenas de minutos.
Etapas detalhadas para configurar o servidor Matrix em https://github.com/spantaleev/matrix-docker-ansible-deploy/blob/master/docs/README.md
Essa semana tive uma ótima conversa com o sócio do YC Eric @ericmigi, que é um empreendedor serial e também um geek com tecnologia. Ele usa muito o Matrix e quase integrou todo o mensageiro da instância ao seu Matrix.
Porém, a matriz ainda não suporta Wechat. Portanto, gostaríamos de introduzir uma ponte matricial-wechat para implementar o protocolo Wechat e preencher a lacuna entre Matrix e Wechat.
@ericmigi fornece alguns links que nos ajudarão a dar o pontapé inicial, espero que possamos fazer um POC viável em breve, e qualquer contribuição será bem-vinda.
- instalação do servidor doméstico em 1 hora
- exemplos de pontes de marionetes
-Huan, abril de 2019
@tulir tem experiências muito ricas na construção de pontes matriciais, como:
- Uma ponte híbrida de fantoches/relaybot Matrix-Telegram
- Uma ponte de marionetes Matrix-WhatsApp
-Huan, maio de 2019
Concluído Exibir apelido e avatar do usuário no grupo #66 e Suportar mensagens de imagem e arquivo #86.
Concluído # 13: [TypeScript] Adicione sistema de digitação a matrix-js-sdk
e matrix-appservice-bridge
.
!login
, !logout
com mensagem de ajudamatrix-appservice-wechaty
falando com o bot @wechaty:your.domain
@wechaty
, ele lhe enviará o código QR de login do Wechat. Digitalize para fazer login no WechatNão assumo nenhuma responsabilidade se a Tencent banir seu IP, conta ou mesmo seus dados no sistema deles. Eles nunca deram suporte oficial a clientes personalizados.
- Isenção de responsabilidade baseada em: Matrix-appservice-discord
A comunidade Wechaty configurou o serviço Matrix (#94) cujo servidor é patrocinado por @ericmigi, que é o fundador do Beeper, parceiro do Y Combinator. Ele também fundou a Pebble Technology (YC W11), que foi adquirida pela Fitbit em 2016.
Saiba mais sobre o Beeper do Beeper traz o iMessage para o Android - Chega de bolhas verdes, saída da LG, Android 12, Oneplus e Oppo
[Matriz] Administrador do servidor: