NetTelegramBotApi, 楼宇电报机 C# 客户端库

分享于 

7分钟阅读

GitHub

  繁體 雙語
C# client library for building Telegram bot
  • 源代码名称:NetTelegramBotApi
  • 源代码网址:http://www.github.com/justdmitry/NetTelegramBotApi
  • NetTelegramBotApi源代码文档
  • NetTelegramBotApi源代码下载
  • Git URL:
    git://www.github.com/justdmitry/NetTelegramBotApi.git
    Git Clone代码到本地:
    git clone http://www.github.com/justdmitry/NetTelegramBotApi
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/justdmitry/NetTelegramBotApi
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    NetTelegramBotApi

    构建电报bot的C# 客户端库( https://core.telegram.org/bots/api )

    包含强类型请求和响应类,以及发送请求和接收结果的传输类。

    NuGet

    用法

    
    var bot = new TelegramBot(accessToken);
    
    
    var me = await bot.MakeRequestAsync(new GetMe());
    
    
    if (me!= null)
    
    
    {
    
    
     Console.WriteLine("Me: {0} (@{1})", me.FirstName, me.Username);
    
    
    }
    
    
    
    

    有关更多示例,请参见 TelegramBotDemo 项目。

    版本历史

    4.0.0---大更新

    Telegram更新到 v2.3 (,21,2016 )。 消息编辑,游戏- 除了内联模式 ( 请参见下面) 以外,所有内容都应该工作在

    中断更改 ( 与 3.8.1相比):

    • 如果从服务器接收到非正常响应,MakeRequestAsync 现在抛出 BotRequestException
    • Contact 类型上的拼写错误: PhoneNumberPhoneNumbet
    • ReplyKeyboardHide 中重命名为 ReplyKeyboardRemove ( 当它在API中被重命名)?
    • API 2.3中的重大更改:
    • 参数 EditMessageSetGameScore 中替换为 DisableEditMessage
    • ReplyKeyboardRemove: HideKeyboard 重命名为 RemoveKeyboard

    内联模式

    内置模式插件需要创建大量新类。 如果你想帮忙,请做公关。

    3.8.1--. NET 核心 RTM,netstandard1.3

    • 升级到. NET 内核 1.0.0和 netstandard1.3

    3.7.509 26-- API更新,代理支持

    • Telegram定义为 2015年08月29日的更改( 发布 #19):
    • 添加了在 SetWebhook 中上传证书的支持
    • Telegram定义为 September的更改( issue ) 已经实现( 发行 #20): )
    • 为简单的标记添加了 ParseMode 字段( 有关详细信息,请参见 FAQ
    • Telegram定义为 2015年09月18日的更改( 发布 #21):
    • 机器人现在可以下载用户发送的文件和媒体,使用 GetFile 请求和 File 对象( 运行演示项目并向他发送一张图片) !
    • 添加了代理支持:
    • 创建bot时使用 WebProxy 属性( 请参见问题 #22 示例)

    3.6.509 25-- 升级为 vNext

    项目转换为 Visual Studio 2015和新项目类型( xproj )。

    NuGet软件包现在面向多个运行时: net45dnx45dnx50dnxcore50

    新的演示控制台应用程序在 dnx451 运行时添加了( TelegramBotDemo-vNext ) 测试。 旧的演示应用('经典'控制台项目) 也可用,但注意 ! 现在它从nuget获取软件包 ! (。因为旧样式csproj不能直接引用新的. xproj 程序集)。

    3.5.508 18-- API更改'15 2015'

    Telegram定义为 2015年08月15日的更改( 发布 #13).

    所有实际更改已经在 3.5.50816 中实现,只有部分 documenation/注释在这个版本中被更新。

    3.5.508 16-- API更改

    • Telegram定义为 2015年07月的更改( 发布 #7):
    • Video 对象中删除了 Caption 字段,并将它的添加到 Message 对象。
    • CaptionDuration 可选的字段已经添加到 SendVideo 请求中。
    • Contact 对象中的UserId 类型改变 ( 在API文档中是字符串- 错误)
    • 更改,而不是 [yet?] 在 Telegram changlog中公布:
    • PerformerTitle 可选字段已经添加到 Audio 对象中
    • DurationPerformerTitle 可选的字段已经添加到 SendAudio 请求中
    • 添加了对象 Voice ( 到 Message 类)
    • 已经添加 SendVoice 请求

    3.4.508 15-- Webhooks支持,错误修正

    通过webhooks进行工作的改进:

    • 添加了 SetWebhook 请求( 问题 #3)
    • 将 webhook POST json值转换为 Update 对象的DeserializeUpdate 方法

    修正 #6 在名称中发送非拉丁字符的文件。

    3.3.507 01-- DateTimeOffset而不是长

    Message 属性 DateForwardDate 现在是 DateTimeOffset ( 转换为本地时间)。

    3.2.506 28---发送文件

    发送文件( SendPhotoSendVideo 等)的方法。

    3.1.506 27-- 使用 HttpClient

    切换到 HttpClient ( 而不是 HttpRequest ):

    • 不再依赖 System.Web
    • MakeRequest 方法现在只是异步的,使用 .Result 或者 .Wait() 进行同步调用

    2.1.506 26---请求层次结构

    重新构造到新的请求模型- 基 RequestBase 类和一个( 一个异步) MakeRequest 方法。

    主版本增加到" 2",补丁版本设置为当前日期。

    1.0.1---初始版本

    响应类层次结构( Types ),第一个请求。 作品 !