You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+29-11Lines changed: 29 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -130,31 +130,27 @@ Added functionality to send initial status messages when gathering peers and sta
130
130
## [3.0.1] - 2026-01-11
131
131
132
132
### Fixed:
133
-
134
133
* lastBroadcastData
135
134
136
135
---
137
136
138
137
## [3.0.2] - 2026-01-11
139
138
140
139
### Added:
141
-
142
140
* setDataDir & getDataDir
143
141
144
142
---
145
143
146
144
## [3.0.3] - 2026-01-11
147
145
148
146
### Fixed:
149
-
150
147
* Fix getDataDir() to handle uninitialized $dataDir
151
148
152
149
---
153
150
154
151
## [3.0.4] - 2026-01-13
155
152
156
153
### Added & Fixed:
157
-
158
154
* Extracted peer filtering from broadcast execution
159
155
* Reduced unnecessary processing during broadcasts
160
156
@@ -163,7 +159,6 @@ Added functionality to send initial status messages when gathering peers and sta
163
159
## [3.0.5] - 2026-01-18
164
160
165
161
### Added & Fixed:
166
-
167
162
* Handle additional RPCErrorException cases
168
163
169
164
---
@@ -186,7 +181,6 @@ Added functionality to send initial status messages when gathering peers and sta
186
181
## [3.2.0] - 2026-06-13
187
182
188
183
### Added
189
-
190
184
- Edit last broadcast message with `editLastBroadcastForAll()`.
191
185
- Optional `broadcastId` targeting for editing or deleting the last message of a specific broadcast.
192
186
- Metadata peer loading for targeted edit/delete calls when `allUsers` is empty and `broadcastId` is provided.
@@ -198,7 +192,6 @@ Added functionality to send initial status messages when gathering peers and sta
198
192
- Internal error logging to `data/broadcast-errors.log`.
199
193
200
194
### Changed
201
-
202
195
- Safer state handling using shared state references by broadcast id.
203
196
- Safer cancel behavior: `cancel()` now marks cancellation without clearing in-flight requests.
204
197
-`progress()` now includes edit, scheduled, self-destruct, total, elapsed, and TPS fields.
@@ -207,7 +200,6 @@ Added functionality to send initial status messages when gathering peers and sta
207
200
-`deleteAllBroadcastsForAll()` now uses one progress loop instead of concurrent progress edits from workers.
208
201
209
202
### Fixed
210
-
211
203
- Pause/resume/cancel state reference issue.
212
204
- Workers not stopping after `done`.
213
205
- Unsafe watchdog behavior that could duplicate sends.
@@ -218,16 +210,42 @@ Added functionality to send initial status messages when gathering peers and sta
218
210
## [3.2.1] - 2026-06-13
219
211
220
212
### Added
221
-
222
213
- Added support for editing last broadcast messages with media loaded from `data/{adminId}/media.txt`.
223
214
- Added compatibility for passing saved media values / `botApiFileId` into `editLastBroadcastForAll()`.
224
215
225
216
### Changed
226
-
227
217
- Relaxed the `$media` parameter in `BroadcastManager::editLastBroadcastForAll()` so it is no longer limited to `?array`.
228
218
- Edit-last-broadcast flow can now reuse the same saved media format used by regular broadcast sending.
229
219
230
220
### Notes
231
-
232
221
- Passing `null` as media keeps the existing media unchanged.
233
222
- Passing a saved media value attempts to update the edited message media/caption.
223
+
224
+
---
225
+
226
+
## [3.2.2] - 2026-06-15
227
+
228
+
### Changed
229
+
* Reduced default broadcast concurrency from `20` to `10`.
230
+
* Reduced the maximum allowed concurrency limit from `50` to `30` to reduce pressure on the MadelineProto event loop during large broadcasts.
231
+
* Progress status messages are now edited every `5` seconds instead of every second.
232
+
* Progress status updates now also perform a final update when the operation reaches completion.
233
+
* Slowed down broadcast workers with a small delay between processed jobs.
234
+
* Added a delay after each media album chunk sent with `sendMultiMedia`.
235
+
* Added a delay between sequential messages sent to the same peer.
236
+
* Broadcast control buttons are now displayed in English:
237
+
*`Pause`
238
+
*`Resume`
239
+
*`Cancel`
240
+
241
+
### Fixed
242
+
* Reduced the chance of `Timeout while waiting for updates.getChannelDifference` after heavy broadcasts.
243
+
* Reduced unnecessary progress-message edit calls during active broadcasts.
244
+
* Prevented noisy logs for harmless `MESSAGE_NOT_MODIFIED` errors during progress updates.
245
+
* Improved progress update stability by ignoring unchanged status edits instead of logging them as failures.
246
+
247
+
### Notes
248
+
* This release keeps the custom BroadcastManager flow, including saved message IDs, edit-last-broadcast, delete-last-broadcast, scheduled broadcasts, and self-destruct broadcasts.
249
+
* This is a stability and load-reduction update; it does not migrate to MadelineProto's official Broadcast API.
Copy file name to clipboardExpand all lines: README.md
+12-10Lines changed: 12 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
# BroadcastManager
2
2
3
3
**High-Performance Telegram Broadcast Manager** for [MadelineProto](https://docs.madelineproto.xyz/).
4
-
Manage Telegram broadcasts efficiently: send text, media, albums, inline buttons, pin/unpin messages, delete broadcasts, edit broadcast, schedule broadcasts, run self-destruct deletion jobs, and track live progress.
4
+
Manage Telegram broadcasts efficiently: send text, media, albums, inline buttons, pin/unpin messages, delete previous broadcasts, edit the last broadcast, schedule broadcasts, run self-destruct deletion jobs, and track live progress.
0 commit comments