зеркало из
https://github.com/glebtv/telegram-bot.git
synced 2026-09-03 17:55:52 +03:00
Сравнить коммиты
2 Коммитов
| Автор | SHA1 | Дата | |
|---|---|---|---|
|
|
88178113d7 | ||
|
|
1a2ac0dd83 |
@@ -1,3 +1,8 @@
|
|||||||
|
# 0.10.1
|
||||||
|
|
||||||
|
- Support `(edited_)channel_post` updates.
|
||||||
|
- New methods from 2.3, 2.3.1 API updates.
|
||||||
|
|
||||||
# 0.10.0
|
# 0.10.0
|
||||||
|
|
||||||
- Integration helpers for RSpec.
|
- Integration helpers for RSpec.
|
||||||
|
|||||||
2
Gemfile
2
Gemfile
@@ -13,7 +13,7 @@ group :development do
|
|||||||
gem 'pry', '~> 0.10.1'
|
gem 'pry', '~> 0.10.1'
|
||||||
gem 'pry-byebug', '~> 3.2.0'
|
gem 'pry-byebug', '~> 3.2.0'
|
||||||
|
|
||||||
gem 'telegram-bot-types', '~> 0.2.0'
|
gem 'telegram-bot-types', '~> 0.3.0'
|
||||||
|
|
||||||
gem 'rspec', '~> 3.5.0'
|
gem 'rspec', '~> 3.5.0'
|
||||||
gem 'rspec-its', '~> 1.1.0'
|
gem 'rspec-its', '~> 1.1.0'
|
||||||
|
|||||||
@@ -24,6 +24,9 @@ Here is sample [telegram_bot_app](https://github.com/telegram-bot-rb/telegram_bo
|
|||||||
with session, keyboards and inline queries.
|
with session, keyboards and inline queries.
|
||||||
Run it on your local machine in 1 minute!
|
Run it on your local machine in 1 minute!
|
||||||
|
|
||||||
|
And here is [app teamplate](https://github.com/telegram-bot-rb/rails_template)
|
||||||
|
to generate clean app in seconds.
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
Add this line to your application's Gemfile:
|
Add this line to your application's Gemfile:
|
||||||
|
|||||||
@@ -60,30 +60,28 @@ module Telegram
|
|||||||
raise Error, err_msg
|
raise Error, err_msg
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Splited to the sections similar to API docs.
|
||||||
%w(
|
%w(
|
||||||
|
deleteWebhook
|
||||||
|
getUpdates
|
||||||
|
getWebhookInfo
|
||||||
|
setWebhook
|
||||||
|
|
||||||
answerCallbackQuery
|
answerCallbackQuery
|
||||||
answerInlineQuery
|
|
||||||
editMessageCaption
|
|
||||||
editMessageReplyMarkup
|
|
||||||
editMessageText
|
|
||||||
forwardMessage
|
forwardMessage
|
||||||
getChat
|
getChat
|
||||||
getChatAdministrators
|
getChatAdministrators
|
||||||
getChatMember
|
getChatMember
|
||||||
getChatMembersCount
|
getChatMembersCount
|
||||||
getFile
|
getFile
|
||||||
getGameHighScores
|
|
||||||
getMe
|
getMe
|
||||||
getUpdates
|
|
||||||
getUserProfilePhotos
|
getUserProfilePhotos
|
||||||
getWebhookInfo
|
|
||||||
kickChatMember
|
kickChatMember
|
||||||
leaveChat
|
leaveChat
|
||||||
sendAudio
|
sendAudio
|
||||||
sendChatAction
|
sendChatAction
|
||||||
sendContact
|
sendContact
|
||||||
sendDocument
|
sendDocument
|
||||||
sendGame
|
|
||||||
sendLocation
|
sendLocation
|
||||||
sendMessage
|
sendMessage
|
||||||
sendPhoto
|
sendPhoto
|
||||||
@@ -91,9 +89,17 @@ module Telegram
|
|||||||
sendVenue
|
sendVenue
|
||||||
sendVideo
|
sendVideo
|
||||||
sendVoice
|
sendVoice
|
||||||
setGameScore
|
|
||||||
setWebhook
|
|
||||||
unbanChatMember
|
unbanChatMember
|
||||||
|
|
||||||
|
editMessageCaption
|
||||||
|
editMessageReplyMarkup
|
||||||
|
editMessageText
|
||||||
|
|
||||||
|
answerInlineQuery
|
||||||
|
|
||||||
|
getGameHighScores
|
||||||
|
sendGame
|
||||||
|
setGameScore
|
||||||
).each do |method|
|
).each do |method|
|
||||||
define_method(method.underscore) { |*args| request(method, *args) }
|
define_method(method.underscore) { |*args| request(method, *args) }
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -139,9 +139,9 @@ module Telegram
|
|||||||
# Helper for asserting message is sent. Note that options are checked
|
# Helper for asserting message is sent. Note that options are checked
|
||||||
# with `hash_including`. For strict checks use #make_telegram_request.
|
# with `hash_including`. For strict checks use #make_telegram_request.
|
||||||
def send_telegram_message(bot, text = nil, options = {})
|
def send_telegram_message(bot, text = nil, options = {})
|
||||||
|
description = "send telegram message #{text.inspect}"
|
||||||
text = a_string_matching(text) if text.is_a?(Regexp)
|
text = a_string_matching(text) if text.is_a?(Regexp)
|
||||||
options = options.merge(text: text) if text
|
options = options.merge(text: text) if text
|
||||||
description = "send telegram message #{text.inspect}"
|
|
||||||
MakeTelegramRequest.new(bot, :sendMessage, description: description).
|
MakeTelegramRequest.new(bot, :sendMessage, description: description).
|
||||||
with(hash_including(options))
|
with(hash_including(options))
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -80,10 +80,12 @@ module Telegram
|
|||||||
|
|
||||||
PAYLOAD_TYPES = %w(
|
PAYLOAD_TYPES = %w(
|
||||||
message
|
message
|
||||||
|
edited_message
|
||||||
|
channel_post
|
||||||
|
edited_channel_post
|
||||||
inline_query
|
inline_query
|
||||||
chosen_inline_result
|
chosen_inline_result
|
||||||
callback_query
|
callback_query
|
||||||
edited_message
|
|
||||||
).freeze
|
).freeze
|
||||||
CMD_REGEX = %r{\A/([a-z\d_]{,31})(@(\S+))?(\s|$)}i
|
CMD_REGEX = %r{\A/([a-z\d_]{,31})(@(\S+))?(\s|$)}i
|
||||||
CONFLICT_CMD_REGEX = Regexp.new("^(#{PAYLOAD_TYPES.join('|')}|\\d)")
|
CONFLICT_CMD_REGEX = Regexp.new("^(#{PAYLOAD_TYPES.join('|')}|\\d)")
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
module Telegram
|
module Telegram
|
||||||
module Bot
|
module Bot
|
||||||
VERSION = '0.10.0'.freeze
|
VERSION = '0.10.1'.freeze
|
||||||
|
|
||||||
def self.gem_version
|
def self.gem_version
|
||||||
Gem::Version.new VERSION
|
Gem::Version.new VERSION
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user