当前位置: 首页 > 编程语言 > C#

MicrosoftTeams中私人消息的传入WebhookShare

时间:2023-04-10 11:10:42 C#

MicrosoftTeams中私人消息的传入Webhook.但是,我想使用我的传入webhook从我的应用程序向用户发送JSON消息(如私人消息),就像Slack允许的那样。据我所知,MSFT团队无法做到这一点:https://dev.outlook.com/Connectors/Reference但也许您知道任何解决方法或类似的方法来修复它。提前致谢:)[已编辑]通过C#应用程序向MSFT团队发布消息的代码://使用简单字符串发布消息publicvoidPostMessage(stringtext,stringtitle){Payloadpayload=newPayload(){Title=titleText=测试};PostMessage(有效载荷);}//使用Payload对象发布消息publicasyncvoidPostMessage(Payloadpayload){stringpayloadJson=JsonConvert.SerializeObject(payload);varcontent=newStringContent(payloadJson);content.Headers.ContentType=newMediaTypeHeaderValue("application/json");varclient=newHttpClient();uri=newUri(GeneralConstants.TeamsURI);awaitclient.PostAsync(uri,content);最好的方法是创建一个Bot并实现它以公开一个Webhook端点,您的应用程序或服务可以将其发布到该端点,然后bot发布这些消息以与用户聊天。首先,根据机器人收到的传入活动,捕获成功发布到用户机器人对话所需的信息。varcallBackInfo=newCallbackInfo(){ConversationId=activity.Conversation.Id,ServiceUrl=activity.ServiceUrl};然后将callBackInfo打包成一个令牌,稍后将用作webhook的参数。vartoken=Convert.ToBase64String(Encoding.Default.GetBytes(JsonConvert.SerializeObject(callBackInfo)));varwebhookUrl=host+"/v1/hook/"+token;最后,实现webhook处理程序来解压缩callBackInfo:varjsonString=Encoding.Default.GetString(Convert.FromBase64String(token));varcallbackInfo=JsonConvert.DeserializeObject(jsonString);并将机器人的对话发布给用户:ConnectorClientconnector=newConnectorClient(newUri(callbackInfo.ServiceUrl));varnewMessage=Activity.CreateMessageActivity();newMessage.Type=ActivityTypes.Message;newMessage.Conversation=newConversationAccount(id:callbackInfo.ConversationId);newMessage.TextFormat="xml";newMessage.Text=message.Text;等待连接器。对话。SendToConversationAsync(newMessage作为活动);查看我关于此主题的博客文章。如果您以前从未编写过MicrosoftTeams机器人,请在此处查看我的另一篇博文,其中包含分步说明。以上就是C#学习教程的全部内容:MicrosoftTeams私信传??入Webhook。如果对大家有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: