wxserver
ver v0.3.4
Servidor de envío de mensajes WeChat empresarial de solo encabezado C ++
ws::Server server;
server.load_config( " config.czh " );
server.add_msg_handle(
[&server]( const ws::Request &req, ws::Message &res)
{
res. set_content (ws::MsgType::text, " hello, world " );
});
server.run();
Agregar una función de devolución de llamada cuando se recibe un mensaje
[&server]( const ws::Request &req, ws::Message &res){}
user_id
La identificación del remitente del mensaje.content
. set_user(user_id)
Especifique el usuario al que responder; el valor predeterminado es el remitente del mensaje
set_content(MsgType, data)
Especificar el contenido de la respuesta del mensaje
Tipo de mensaje | información |
---|---|
texto | texto |
reducción | subconjunto de rebajas |
imagen | Imagen (ruta) |
archivo | archivo (ruta) |
server.add_msg_handle(
[&server]( const ws::Request &req, ws::Message &res)
{
std::thread (
[req, &server]()
{
// do something
res. set_content (ws::MsgType::text, ret);
}). detach ();
});
server.send_message({ws::MsgType::text, " hello " , " caozhanhao " });
server.send_message({ws::MsgType::file, " LICENSE " , " caozhanhao " });
server.send_message({ws::MsgType::image, " example.jpg " , " caozhanhao " });
server.send_message({ws::MsgType::markdown, " `hello world` " , " caozhanhao " });
// ... 同set_content
Server (std::string host, int port_, int agent_id, const std::string& token, const std::string encoding_aes_key,
const std::string corp_id, const std::string corp_secret,
bool enable_console_logger, const std::string& logging_path = " " )
ws::Server server;
server.load_config( " config.czh " );
// or
// auto config = ws::parse_config("config.czh");
// server.load_config(config);
servidor | información |
---|---|
anfitrión | Dirección corriente |
puerto | puerto en funcionamiento |
enable_console_logger | Salida de la consola de registro, falso no genera |
ruta_de_registro | Archivo de registro, nulo no se genera en el archivo |
weixin | información |
---|---|
ID del agente | Ubicado en minegocio/xxx/AgentId |
CorpID | Ubicado en Mi empresa/Información comercial/ID de empresa |
CorpSecret | Ubicado en Gestión de aplicaciones/xxx/Secreto |
Token y codificaciónAESKey | Ubicado en Administración de aplicaciones/xxx/Función/Configuración Recibir API/ |
Nota: Los siguientes son los archivos de configuración necesarios en el ejemplo, no necesarios para wxserver
bot | información |
---|---|
bot | "hugging_face" o "chatgpt" |
apoderado | Dirección de proxy HTTP, configurada como nula si no es necesaria |
puerto_proxy | Puerto proxy HTTP, establecido en nulo si no es necesario |
abrazando_la cara | información |
---|---|
modelo | Se requiere conversación, como ingen51/DialoGPT-medium-GPT4 |
simbólico | Token de cara de abrazo |
abierto | información |
---|---|
modelo | Como "gpt-3.5-turbo" |
simbólico | token de OpenAI |
g++ examples/src/main.cpp -I examples/src -I include -I thirdparty -I thirdparty/json/include -I thirdparty/libczh/include -lssl -lcrypto -lpthread -O2 -std=c++2a -o wxserver-linux
g++ examples/src/main.cpp -I examples/src -I " C:Program FilesOpenSSL-Win64include " -I include -I thirdparty -I thirdparty/json/include -I thirdparty/libczh/include -L " C:Program FilesOpenSSL-Win64lib " -lssl -lcrypto -l ws2_32 -l crypt32 -lpthread -O2 -std=c++2a -o wxserver-windows.exe