rboot
es un marco de chatbot simple y eficiente escrito en golang
, que es fácil de expandir. Puede funcionar en diferentes servicios de chat y puede implementar聊天
,工作助手
,服务监控
,警报触发
y otras funciones a través de scripts extendidos.
golangv1.13 v1.13+
$ go get github.com/ghaoo/ rboot
$ cd $GOPATH /github.com/ghaoo/ rboot /robot
$ go build
$ ./robot
El adaptador de mensajes se utiliza para monitorear los mensajes entrantes y salientes. A través del adaptador de mensajes, los mensajes del cliente de chat se pueden enviar al robot después de ser procesados por el script, el mensaje devuelto se envía al cliente.
rboot
proporciona una implementación simple de命令行cli
微信网页版
企业微信
adaptador倍洽
empresarial WeChat钉钉
.
Plugin
no proporciona muchos complementos listos para usar, excepto un complemento help
, y los demás deben ser desarrollados por los desarrolladores de acuerdo con sus propias necesidades.
uso del complemento de ayuda :
!help <plugin>
: Ver información de ayuda del complemento. Cuando el comando no incluye un nombre de complemento, se enumerará toda la información de ayuda del complemento. Con un nombre de complemento, solo la información de ayuda para este complemento. en aparecerá en la lista.
Hay casos de complementos simples en la carpeta
robot/plugins
. Los desarrolladores pueden ver el método de escritura del complemento.
Plugin
no solo puede usar golang para escribir complementos, sino también usar complementos de script para ejecutar comandos del sistema o archivos de complementos escritos en lenguajes de script.
El complemento de script es un Plugin
que se utiliza para analizar lenguajes de script. Es una extensión del complemento rboot . Ejecute comandos o scripts del sistema a través de archivos de configuración yaml
.
Debido a que los complementos de script se crean en
Plugin
, cada script se registrará enPlugin
, así que asegúrese de que los nombres de los complementos no se superpongan; de lo contrario, el complemento registrado primero puede ser reemplazado por el complemento registrado más tarde.
PLUGIN_DIR
: la carpeta donde se almacena el archivo de configuración del complemento de script. Si no está configurado, el valor predeterminado es scripts
Podemos crear un complemento de secuencia de comandos creando un archivo yaml
y configurar el complemento de secuencia de comandos a través de las opciones de configuración en el archivo. Por ejemplo, creamos un archivo hello.yml
con el siguiente contenido:
name : hello
version : 0.1.0
ruleset :
hello : " ^hello "
usage :
hi : echo hello world and 你好
description : 脚本插件示例
command :
-
cmd :
- echo hi
- echo hello world
-
dir : plugins
cmd :
- echo 你好
Este complemento utiliza el comando del sistema echo
. Lo que significa es: cuando ingresamos "hola", el script devolverá tres mensajes: hi
, hello world
y你好
.
El significado de cada campo en la configuración:
Configuración | debe | significado |
---|---|---|
nombre | Sí | Nombre del complemento |
conjunto de reglas | Sí | conjunto de reglas |
versión | No | Versión del complemento |
uso | No | Uso de complementos |
descripción | No | Introducción al complemento |
dominio | Sí | Conjunto de comandos de complemento |
--- | --- | --- |
directorio | No | Carpeta de ejecución de comandos |
cmd | Sí | Comandos de complemento |
command
puede configurar múltiples conjuntos de comandos y el orden de ejecución es de arriba a abajo.
cmd
se puede configurar con múltiples comandos y el orden de ejecución es de arriba a abajo.
Los complementos de secuencias de comandos admiten系统命令
y脚本语言
. El modo de comando del sistema es como hello.yml
arriba. Simplemente complete la carpeta y el comando del sistema en el archivo. Cuando emita el comando, el robot lo ejecutará en secuencia de arriba a abajo.
El lenguaje de secuencias de comandos es un método de ejecución basado en el modo de comando del sistema. Podemos usar comandos del sistema para llamar a secuencias de comandos del lenguaje para ejecutar secuencias de comandos más complejas. Por ejemplo, usamos Python para generar "hola robot".
Nuestro script en Python es el siguiente:
#!/usr/bin/env python
print ( "Hello, robot! i am a python script" )
Nuestro archivo de configuración es el siguiente:
name : pyscript
version : 0.1.0
ruleset :
py : " ^hello python "
usage :
py : execute python script
description : python插件示例
command :
dir : script
cmd :
- ./hello.py
Cuando ingresamos hello python
, el robot llamará al script hello.py
, y el script generará "¡Hola, robot! Soy un script de Python" y nos lo mostrará a través del robot.
Confirme si
目录分隔符
coincide con la configuración actual del sistema en diferentes sistemas operativos. Úselo enwindows
use
/
enunix
Este proyecto utiliza la licencia de código abierto del MIT y las instrucciones completas de licencia se pueden encontrar en el archivo LICENCIA.