增加stream插件消息处理逻辑和example

This commit is contained in:
weiming wu 2023-08-10 14:36:57 +08:00
parent 42205fc514
commit 1fa7561795
1 changed files with 6 additions and 5 deletions

View File

@ -29,8 +29,8 @@ func OnChatBotMessageReceived(ctx context.Context, data *chatbot.BotCallbackData
} }
// 简单的插件处理实现 // 简单的插件处理实现
func OnPluginRequestReceived(ctx context.Context, message *plugin.DingTalkPluginMessage) (interface{}, error) { func OnPluginMessageReceived(ctx context.Context, message *plugin.DingTalkPluginMessage) (interface{}, error) {
if message.AbilityKey == "echo" { if message.AbilityKey == "echo" { //可以根据message中的PluginId、PluginVersion、AbilityKey路由到具体一个能力
echoRequest := &EchoRequest{} echoRequest := &EchoRequest{}
err := message.ParseData(echoRequest) err := message.ParseData(echoRequest)
if err != nil { if err != nil {
@ -70,14 +70,15 @@ func main() {
logger.SetLogger(logger.NewStdTestLogger()) logger.SetLogger(logger.NewStdTestLogger())
cli := client.NewStreamClient(client.WithAppCredential(client.NewAppCredentialConfig(clientId, clientSecret))) //cli := client.NewStreamClient(client.WithAppCredential(client.NewAppCredentialConfig(clientId, clientSecret)))
cli := client.NewStreamClient(client.WithAppCredential(client.NewAppCredentialConfig("dingfplahibzeqzfudlz", "If8TqLjRXpUuq8vPUdQ4042qRYTaCXaXldYZOJUq8xnCiwrhDYAz5YHxS7l2oPoC")))
//注册事件类型的处理函数 //注册事件类型的处理函数
cli.RegisterAllEventRouter(OnEventReceived) cli.RegisterAllEventRouter(OnEventReceived)
//注册callback类型的处理函数 //注册callback类型的处理函数
cli.RegisterChatBotCallbackRouter(OnChatBotMessageReceived) cli.RegisterChatBotCallbackRouter(OnChatBotMessageReceived)
//注册插件的处理函数
cli.RegisterPluginCallbackRouter(OnPluginMessageReceived)
cli.RegisterPluginCallbackRouter(OnPluginRequestReceived)
err := cli.Start(context.Background()) err := cli.Start(context.Background())
if err != nil { if err != nil {
panic(err) panic(err)