2017-05-26 95 views
0

即时通讯开发应用程序C#.net WinForm其中包括telegram_bot :)。 telegram bot api offers getUpdates和webhook ...因为我的机器人应该对消息做出响应,所以我需要一种方法,让应用程序可以区分上次未响应的更新。电报bot c#webhook和winform getupdates

getupdates是轮询方法,并给出所有更新....我试图使用无限循环在json结果机器人上它似乎令人毛骨悚然,挂起。

网络挂接是我需要的,它总是通知我关于新产品的更新和应用程序可以很容易地分辨出新的更新和可以响应.... 我的应用程序是WinForm的没有网络和网络挂接需求的方法网址:(...

你能帮助我克服这个问题......谢谢

+0

您需要为您的应用程序建立一种通信方法来与服务器进行通信。一种可能的方法是通过站立一个'HttpListener',这样服务器就可以到达你的应用程序(Webhook)的一个注册实例,但我认为你的应用程序可以从听起来不太可能的服务器访问。更现代的方法是使用'SignalR'来建立从客户端到服务器的通信通道。有关示例,请参阅https://code.msdn.microsoft.com/windowsdesktop/Using-SignalR-in-WinForms-f1ec847b。 –

+0

以上评论是解决方案。我做了一个webHost使用WEBHOOK API来处理我的电报bot(电报服务器=> webhost),然后我使用signalR将通知转发给我的桌面客户端APP(webhost => Desktop APP)........... .....谢谢@Roberto Hernandez –

回答

-1

来自@Roberto Hernandez =>的解决方案您需要为您的应用程序建立与服务器通信的通信方法。一种可能的方式是通过站立一个HttpListener,以便服务器可以访问应用程序的已注册实例(Webhook),但是我认为你的应用程序可以从服务器访问,而这听起来不太可能。更现代的方法是使用SignalR等技术来建立从客户端到服务器的通信通道。有关示例,请参阅code.msdn.microsoft.com/windowsdesktop/...。

0

我大约两年前有同样的问题,当电报首先介绍了机器人的API。我能解决它与服务基础架构。首先我创建了web api项目,并处理或传入博t简单的Web钩子请求。然后我创建了另一个服务,如:

  1. 发送消息给所有用户。
  2. 给用户发信息用手机号码

终于我创建了一个胜利的形式,以消耗我的服务。我希望这也能解决你的问题。

+0

谢谢.....这给了我一个好主意来处理我的机器人反应 –