Skip to content

Commit 721571e

Browse files
authored
Merge pull request #303 from intellinside/master
Telegram Bot API v6.3 support added
2 parents b990780 + 67013c8 commit 721571e

27 files changed

+485
-35
lines changed

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
[![codecov](https://codecov.io/gh/pengrad/java-telegram-bot-api/branch/master/graph/badge.svg)](https://codecov.io/gh/pengrad/java-telegram-bot-api)
66

77
Java library for interacting with [Telegram Bot API](https://core.telegram.org/bots/api)
8-
- Full support of all Bot API 6.2 methods
8+
- Full support of all Bot API 6.3 methods
99
- Telegram [Passport](https://core.telegram.org/passport) and Decryption API
1010
- Bot [Payments](https://core.telegram.org/bots/payments)
1111
- [Gaming Platform](https://telegram.org/blog/games)
@@ -14,14 +14,14 @@ Java library for interacting with [Telegram Bot API](https://core.telegram.org/b
1414

1515
Gradle:
1616
```groovy
17-
implementation 'com.github.pengrad:java-telegram-bot-api:6.2.0'
17+
implementation 'com.github.pengrad:java-telegram-bot-api:6.3.0'
1818
```
1919
Maven:
2020
```xml
2121
<dependency>
2222
<groupId>com.github.pengrad</groupId>
2323
<artifactId>java-telegram-bot-api</artifactId>
24-
<version>6.2.0</version>
24+
<version>6.3.0</version>
2525
</dependency>
2626
```
2727
[JAR with all dependencies on release page](https://github.com/pengrad/java-telegram-bot-api/releases)

README_RU.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
[![codecov](https://codecov.io/gh/pengrad/java-telegram-bot-api/branch/master/graph/badge.svg)](https://codecov.io/gh/pengrad/java-telegram-bot-api)
55

66
Java библиотека, созданная для работы с [Telegram Bot API](https://core.telegram.org/bots/api)
7-
- Полная поддержка всех методов BOT API 6.2
7+
- Полная поддержка всех методов BOT API 6.3
88
- Поддержка Telegram [паспорта](https://core.telegram.org/passport) и дешифровки (Decryption API);
99
- Поддержка [платежей](https://core.telegram.org/bots/payments);
1010
- [Игровая платформа](https://telegram.org/blog/games).
@@ -13,14 +13,14 @@ Java библиотека, созданная для работы с [Telegram B
1313

1414
Gradle:
1515
```groovy
16-
implementation 'com.github.pengrad:java-telegram-bot-api:6.2.0'
16+
implementation 'com.github.pengrad:java-telegram-bot-api:6.3.0'
1717
```
1818
Maven:
1919
```xml
2020
<dependency>
2121
<groupId>com.github.pengrad</groupId>
2222
<artifactId>java-telegram-bot-api</artifactId>
23-
<version>6.2.0</version>
23+
<version>6.3.0</version>
2424
</dependency>
2525
```
2626
Также JAR со всеми зависимостями можно найти [в релизах](https://github.com/pengrad/java-telegram-bot-api/releases).

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
GROUP=com.github.pengrad
2-
VERSION_NAME=6.2.0
2+
VERSION_NAME=6.3.0
33

44
POM_DESCRIPTION=Java API for Telegram Bot API
55
POM_URL=https://github.com/pengrad/java-telegram-bot-api/

library/src/main/java/com/pengrad/telegrambot/model/Chat.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.google.gson.annotations.SerializedName;
44

55
import java.io.Serializable;
6+
import java.util.Arrays;
67
import java.util.Objects;
78

89
/**
@@ -29,7 +30,10 @@ public enum Type {
2930
private String first_name;
3031
private String last_name;
3132

33+
private Boolean is_forum;
3234
private ChatPhoto photo;
35+
private String[] active_usernames;
36+
private String emoji_status_custom_emoji_id;
3337
private String bio;
3438
private Boolean has_private_forwards;
3539
private Boolean has_restricted_voice_and_video_messages;
@@ -67,6 +71,10 @@ public String username() {
6771
return username;
6872
}
6973

74+
public Boolean isForum() {
75+
return is_forum != null && is_forum;
76+
}
77+
7078
public String title() {
7179
return title;
7280
}
@@ -75,6 +83,14 @@ public ChatPhoto photo() {
7583
return photo;
7684
}
7785

86+
public String[] getActiveUsernames() {
87+
return active_usernames;
88+
}
89+
90+
public String getEmojiStatusCustomEmojiId() {
91+
return emoji_status_custom_emoji_id;
92+
}
93+
7894
public String bio() {
7995
return bio;
8096
}
@@ -148,9 +164,12 @@ public boolean equals(Object o) {
148164
type == chat.type &&
149165
Objects.equals(first_name, chat.first_name) &&
150166
Objects.equals(last_name, chat.last_name) &&
167+
Objects.equals(is_forum, chat.is_forum) &&
151168
Objects.equals(username, chat.username) &&
152169
Objects.equals(title, chat.title) &&
153170
Objects.equals(photo, chat.photo) &&
171+
Arrays.equals(active_usernames, chat.active_usernames) &&
172+
Objects.equals(emoji_status_custom_emoji_id, chat.emoji_status_custom_emoji_id) &&
154173
Objects.equals(bio, chat.bio) &&
155174
Objects.equals(has_private_forwards, chat.has_private_forwards) &&
156175
Objects.equals(has_restricted_voice_and_video_messages, chat.has_restricted_voice_and_video_messages) &&
@@ -181,9 +200,12 @@ public String toString() {
181200
", type=" + type +
182201
", first_name='" + first_name + '\'' +
183202
", last_name='" + last_name + '\'' +
203+
", is_forum=" + is_forum +
184204
", username='" + username + '\'' +
185205
", title='" + title + '\'' +
186206
", photo=" + photo +
207+
", active_usernames=" + Arrays.toString(active_usernames) +
208+
", emoji_status_custom_emoji_id='" + emoji_status_custom_emoji_id + '\'' +
187209
", bio='" + bio + '\'' +
188210
", has_private_forwards=" + has_private_forwards +
189211
", has_restricted_voice_and_video_messages=" + has_restricted_voice_and_video_messages +

library/src/main/java/com/pengrad/telegrambot/model/ChatAdministratorRights.java

Lines changed: 37 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ public class ChatAdministratorRights implements Serializable {
2222
private Boolean can_post_messages;
2323
private Boolean can_edit_messages;
2424
private Boolean can_pin_messages;
25+
private Boolean can_manage_topics;
2526

2627
public Boolean isAnonymous() {
2728
return is_anonymous;
@@ -67,11 +68,15 @@ public Boolean canPinMessages() {
6768
return can_pin_messages;
6869
}
6970

71+
public Boolean canManageTopics() {
72+
return can_manage_topics;
73+
}
74+
7075
public ChatAdministratorRights canManageChat(boolean canManageChat) {
7176
this.can_manage_chat = canManageChat;
7277
return this;
7378
}
74-
79+
7580
public ChatAdministratorRights canDeleteMessages(boolean canDeleteMessages) {
7681
this.can_delete_messages = canDeleteMessages;
7782
return this;
@@ -117,17 +122,45 @@ public ChatAdministratorRights canPinMessages(boolean canPinMessages) {
117122
return this;
118123
}
119124

125+
public ChatAdministratorRights canManageTopics(boolean canManageTopics) {
126+
this.can_manage_topics = canManageTopics;
127+
return this;
128+
}
129+
120130
@Override
121131
public boolean equals(Object o) {
122132
if (this == o) return true;
123133
if (o == null || getClass() != o.getClass()) return false;
124134
ChatAdministratorRights that = (ChatAdministratorRights) o;
125-
return Objects.equals(is_anonymous, that.is_anonymous) && Objects.equals(can_manage_chat, that.can_manage_chat) && Objects.equals(can_delete_messages, that.can_delete_messages) && Objects.equals(can_manage_video_chats, that.can_manage_video_chats) && Objects.equals(can_restrict_members, that.can_restrict_members) && Objects.equals(can_promote_members, that.can_promote_members) && Objects.equals(can_change_info, that.can_change_info) && Objects.equals(can_invite_users, that.can_invite_users) && Objects.equals(can_post_messages, that.can_post_messages) && Objects.equals(can_edit_messages, that.can_edit_messages) && Objects.equals(can_pin_messages, that.can_pin_messages);
135+
136+
return Objects.equals(is_anonymous, that.is_anonymous) &&
137+
Objects.equals(can_manage_chat, that.can_manage_chat) &&
138+
Objects.equals(can_delete_messages, that.can_delete_messages) &&
139+
Objects.equals(can_manage_video_chats, that.can_manage_video_chats) &&
140+
Objects.equals(can_restrict_members, that.can_restrict_members) &&
141+
Objects.equals(can_promote_members, that.can_promote_members) &&
142+
Objects.equals(can_change_info, that.can_change_info) &&
143+
Objects.equals(can_invite_users, that.can_invite_users) &&
144+
Objects.equals(can_post_messages, that.can_post_messages) &&
145+
Objects.equals(can_edit_messages, that.can_edit_messages) &&
146+
Objects.equals(can_pin_messages, that.can_pin_messages) &&
147+
Objects.equals(can_manage_topics, that.can_manage_topics);
126148
}
127149

128150
@Override
129151
public int hashCode() {
130-
return Objects.hash(is_anonymous, can_manage_chat, can_delete_messages, can_manage_video_chats, can_restrict_members, can_promote_members, can_change_info, can_invite_users, can_post_messages, can_edit_messages, can_pin_messages);
152+
return Objects.hash(is_anonymous,
153+
can_manage_chat,
154+
can_delete_messages,
155+
can_manage_video_chats,
156+
can_restrict_members,
157+
can_promote_members,
158+
can_change_info,
159+
can_invite_users,
160+
can_post_messages,
161+
can_edit_messages,
162+
can_pin_messages,
163+
can_manage_topics);
131164
}
132165

133166
@Override
@@ -144,6 +177,7 @@ public String toString() {
144177
", can_post_messages=" + can_post_messages +
145178
", can_edit_messages=" + can_edit_messages +
146179
", can_pin_messages=" + can_pin_messages +
180+
", can_manage_topics=" + can_manage_topics +
147181
'}';
148182
}
149183

library/src/main/java/com/pengrad/telegrambot/model/ChatMember.java

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ public enum Status {
3131
private Boolean can_change_info;
3232
private Boolean can_invite_users;
3333
private Boolean can_pin_messages;
34+
private Boolean can_manage_topics;
3435
private Boolean is_member;
3536
private Boolean can_send_messages;
3637
private Boolean can_send_media_messages;
@@ -109,6 +110,10 @@ public Boolean canPinMessages() {
109110
return can_pin_messages;
110111
}
111112

113+
public Boolean canManageTopics() {
114+
return can_manage_topics;
115+
}
116+
112117
public Boolean isMember() {
113118
return is_member;
114119
}
@@ -154,6 +159,7 @@ public boolean equals(Object o) {
154159
Objects.equals(can_change_info, that.can_change_info) &&
155160
Objects.equals(can_invite_users, that.can_invite_users) &&
156161
Objects.equals(can_pin_messages, that.can_pin_messages) &&
162+
Objects.equals(can_manage_topics, that.can_manage_topics) &&
157163
Objects.equals(is_member, that.is_member) &&
158164
Objects.equals(can_send_messages, that.can_send_messages) &&
159165
Objects.equals(can_send_media_messages, that.can_send_media_messages) &&
@@ -164,7 +170,29 @@ public boolean equals(Object o) {
164170

165171
@Override
166172
public int hashCode() {
167-
return Objects.hash(user, status, custom_title, is_anonymous, until_date, can_be_edited, can_manage_chat, can_post_messages, can_edit_messages, can_delete_messages, can_manage_video_chats, can_restrict_members, can_promote_members, can_change_info, can_invite_users, can_pin_messages, is_member, can_send_messages, can_send_media_messages, can_send_polls, can_send_other_messages, can_add_web_page_previews);
173+
return Objects.hash(user,
174+
status,
175+
custom_title,
176+
is_anonymous,
177+
until_date,
178+
can_be_edited,
179+
can_manage_chat,
180+
can_post_messages,
181+
can_edit_messages,
182+
can_delete_messages,
183+
can_manage_video_chats,
184+
can_restrict_members,
185+
can_promote_members,
186+
can_change_info,
187+
can_invite_users,
188+
can_pin_messages,
189+
can_manage_topics,
190+
is_member,
191+
can_send_messages,
192+
can_send_media_messages,
193+
can_send_polls,
194+
can_send_other_messages,
195+
can_add_web_page_previews);
168196
}
169197

170198
@Override
@@ -186,6 +214,7 @@ public String toString() {
186214
", can_change_info=" + can_change_info +
187215
", can_invite_users=" + can_invite_users +
188216
", can_pin_messages=" + can_pin_messages +
217+
", can_manage_topics=" + can_manage_topics +
189218
", is_member=" + is_member +
190219
", can_send_messages=" + can_send_messages +
191220
", can_send_media_messages=" + can_send_media_messages +

library/src/main/java/com/pengrad/telegrambot/model/ChatPermissions.java

Lines changed: 30 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.pengrad.telegrambot.model;
22

33
import java.io.Serializable;
4+
import java.util.Objects;
45

56
/**
67
* Stas Parshin
@@ -17,6 +18,7 @@ public class ChatPermissions implements Serializable {
1718
private Boolean can_change_info;
1819
private Boolean can_invite_users;
1920
private Boolean can_pin_messages;
21+
private Boolean can_manage_topics;
2022

2123
public Boolean canSendMessages() {
2224
return can_send_messages;
@@ -50,6 +52,10 @@ public Boolean canPinMessages() {
5052
return can_pin_messages;
5153
}
5254

55+
public Boolean canManageTopics() {
56+
return can_manage_topics;
57+
}
58+
5359
public ChatPermissions canSendMessages(boolean canSendMessages) {
5460
can_send_messages = canSendMessages;
5561
return this;
@@ -90,40 +96,40 @@ public ChatPermissions canPinMessages(boolean canPinMessages) {
9096
return this;
9197
}
9298

99+
public ChatPermissions canManageTopics(boolean canManageTopics) {
100+
this.can_manage_topics = canManageTopics;
101+
return this;
102+
}
103+
93104
@Override
94105
public boolean equals(Object o) {
95106
if (this == o) return true;
96107
if (o == null || getClass() != o.getClass()) return false;
97108

98109
ChatPermissions that = (ChatPermissions) o;
99110

100-
if (can_send_messages != null ? !can_send_messages.equals(that.can_send_messages) : that.can_send_messages != null)
101-
return false;
102-
if (can_send_media_messages != null ? !can_send_media_messages.equals(that.can_send_media_messages) : that.can_send_media_messages != null)
103-
return false;
104-
if (can_send_polls != null ? !can_send_polls.equals(that.can_send_polls) : that.can_send_polls != null) return false;
105-
if (can_send_other_messages != null ? !can_send_other_messages.equals(that.can_send_other_messages) : that.can_send_other_messages != null)
106-
return false;
107-
if (can_add_web_page_previews != null ? !can_add_web_page_previews.equals(that.can_add_web_page_previews) : that.can_add_web_page_previews != null)
108-
return false;
109-
if (can_change_info != null ? !can_change_info.equals(that.can_change_info) : that.can_change_info != null)
110-
return false;
111-
if (can_invite_users != null ? !can_invite_users.equals(that.can_invite_users) : that.can_invite_users != null)
112-
return false;
113-
return can_pin_messages != null ? can_pin_messages.equals(that.can_pin_messages) : that.can_pin_messages == null;
111+
return Objects.equals(can_send_messages, that.can_send_messages) &&
112+
Objects.equals(can_send_media_messages, that.can_send_media_messages) &&
113+
Objects.equals(can_send_polls, that.can_send_polls) &&
114+
Objects.equals(can_send_other_messages, that.can_send_other_messages) &&
115+
Objects.equals(can_add_web_page_previews, that.can_add_web_page_previews) &&
116+
Objects.equals(can_change_info, that.can_change_info) &&
117+
Objects.equals(can_invite_users, that.can_invite_users) &&
118+
Objects.equals(can_pin_messages, that.can_pin_messages) &&
119+
Objects.equals(can_manage_topics, that.can_manage_topics);
114120
}
115121

116122
@Override
117123
public int hashCode() {
118-
int result = can_send_messages != null ? can_send_messages.hashCode() : 0;
119-
result = 31 * result + (can_send_media_messages != null ? can_send_media_messages.hashCode() : 0);
120-
result = 31 * result + (can_send_polls != null ? can_send_polls.hashCode() : 0);
121-
result = 31 * result + (can_send_other_messages != null ? can_send_other_messages.hashCode() : 0);
122-
result = 31 * result + (can_add_web_page_previews != null ? can_add_web_page_previews.hashCode() : 0);
123-
result = 31 * result + (can_change_info != null ? can_change_info.hashCode() : 0);
124-
result = 31 * result + (can_invite_users != null ? can_invite_users.hashCode() : 0);
125-
result = 31 * result + (can_pin_messages != null ? can_pin_messages.hashCode() : 0);
126-
return result;
124+
return Objects.hash(can_send_messages,
125+
can_send_media_messages,
126+
can_send_polls,
127+
can_send_other_messages,
128+
can_add_web_page_previews,
129+
can_change_info,
130+
can_invite_users,
131+
can_pin_messages,
132+
can_manage_topics);
127133
}
128134

129135
@Override
@@ -137,6 +143,7 @@ public String toString() {
137143
", can_change_info=" + can_change_info +
138144
", can_invite_users=" + can_invite_users +
139145
", can_pin_messages=" + can_pin_messages +
146+
", can_manage_topics=" + can_manage_topics +
140147
'}';
141148
}
142149
}

0 commit comments

Comments
 (0)