Commit graph

62 commits

Author SHA1 Message Date
annelin a46ea168c6 Process status update after subscription handling 2020-09-26 10:55:25 +03:00
annelin 474e59b4d8 Now also sending resource to prevent some clients unwanted behaviour 2020-09-20 14:03:02 +03:00
annelin 2c3ab0aceb Add disco query responder 2020-09-19 08:24:44 +03:00
annelin 9c171116e7 Release 2.7
- Fixed start/close secret chat
- Fixed status update for users who blacklisted you or was online long time ago
2020-09-16 06:52:08 +03:00
annelin f372e513ef Release 2.6.3
- Replies fix
2020-05-19 17:42:27 +03:00
annelin dc8539e53c Release 2.6.1
- Fixed receiving messages that containts replies to some content.
- Small fixes
2020-05-15 16:32:06 +03:00
annelin a825b5b7b5 Release v2.6 (maria without juana edition ♥)
- Now downloading files synchroniusly (otherwise files sometimes disappears, thank you Durov, verni stenu)
2020-05-14 20:24:52 +03:00
annelin db590fd27f Status caching 2020-04-22 22:50:38 +03:00
annelin a39c2887cc Authorization fix 2020-04-12 21:47:21 +03:00
annelin c3197cd000 Release 2.4
[NEW] command /link to retrieve chat invite link
[NEW] commands /mute, /unmute, /ban, /unban, /promote to manage chats
[NEW] command /leave! to leave group as owner
[FIX] tested and fixed some chat commands
2020-03-09 19:56:13 +02:00
annelin edfae83b8f Version 2.3 / izvinite git nasral 2020-03-09 14:06:26 +02:00
annelin c60a6eeb84 Merge branch 'master' of https://git.narayana.im/narayana/zhabogram 2020-03-09 14:03:43 +02:00
annelin 970a3ab924 removed some debug information 2020-03-09 14:01:21 +02:00
annelin 29f4cfc552 Version 2.3
[UPD] now it works with tdlib-ruby 2.2 (tdlib 1.6)
[UPD] now /s (edit) replaces your whole message (/s new message)
[!] removed /history command (as it does not work)
[!] some groupchat stuff still untested, use at your own risk
2020-03-09 13:56:52 +02:00
Pavel R 8ed5710c13 Merge branch 'master' of mike/zhabogram into master 2020-03-09 09:06:57 +02:00
annelin cb62c63771 Version 2.2.8
[FIX] Better support on multiple Jabber resources
[FIX] Fixed unavailable presences from your contacts while shutdown process
[NEW] Config option `keeponline` to always keep Telegram session online (..and rely on XMPP offline messages)
2020-03-09 09:04:24 +02:00
Mike_Went 5babcb35a8 [fix] strel ochka 2020-03-09 03:05:36 +02:00
annelin 5014133cc0 Bump version to 2.1
[FIX] correct presence handling when we have several priorities
2020-03-09 02:55:50 +02:00
annelin 82aa27558b [FIX] Subscription after logging in 2020-01-05 07:22:52 +02:00
annelin 6d282eb2f6 fixed /help command to gateway 2019-08-31 07:58:30 +03:00
annelin d1f58a02dc Notification on errors while sending message
Fixed Location messages
Updated config example
Updated README
2019-08-24 14:19:15 +03:00
Пашенька 9689bda5f9 [!] Changed config format — tdlib config moved to :tdlib section
[FIX] Small fixes in probing stored sessions
2019-08-21 15:43:07 +03:00
annelin 4dfd278a39 Release 2.0.0
! Backward compatibility with old sessions file (sessions.db) is broken due to planned config variables in future. New format is:
 :sessions
   jid@server
     :login: '1234567890'

— Huge code refactoring and readability improvement
— Removed XMPP features jabber:iq:register (will now try to log in after subscription request) and jabber:iq:gateway (since it does not working on foreign servers?)
— Reworked application logic — now code in `xmppcomponent.rb` only used to XMPP jobs and `telegramclient.rb` aims Telegram.
  Because of that, commands like /login /code /password are moved out to `telegramclient.rb` and now are parts of internal command to gateway (chat id 0)
— Reworked /chat and /gateway command list — please, just send /help to gateway or any active chat.
— Improved stability (I hope so...)
— Any other small (and not only) unlisted and forgotten changes..
2019-08-08 13:51:33 +03:00
annelin eca1bfcb8f [+] now asking subscription only after explicit request (/add) or after incoming message, I hope it will help 2019-07-14 10:39:36 +03:00
annelin 193dff330f [!] temporary disabled timezone detection to prevent crash after incorrect data in tz requet
[!] trying to fix fetching files without filenames/extensions..
2019-07-14 10:23:48 +03:00
annelin 7a2f85e0fe hey I'm just added OTR support ☺ 2019-06-20 19:29:06 +03:00
annelin 3f78178d60 [f] fixed avatars broadcast 2019-06-20 16:44:38 +03:00
annelin c9fb9297fe temporarily disabled presence queue pool -- will see how it works now 2019-06-18 08:31:06 +03:00
annelin c2ff64b0bd Release 1.3.2
[FIX] fixed status-update function
[FIX] trying to decrease memory leaks by using chats and message database
2019-06-13 13:12:59 +03:00
annelin da2de42645 Release 1.2
[!] Using YAML serilaization instead of sqlite3. You may convert your SQLite db to YAML format using this:
    (echo "---"; sqlite3 users.db 'select jid,login from users'|sed "s/|/: \'/g;s/$/\'/g") > users.dat

[FIX] Fixed repllies
[UPD] Sending presence probe after disconnect received — maybe there are another XMPP resource? ☺
[UPD] When XMPP user goes online if Telegram session already established -- resync statuses with Telegram network to get all contacts online immediately
2019-06-11 16:24:44 +03:00
annelin d4863a50b0 Release v1.2
Added support of Voice Notes
Small fixes in messages formatting
Minor code cleaning
Fixed error on /info command
Added /reconnect command
[-] Removed /history command as it does not work, use /search count as it provides same fuctionality :(
2019-06-01 01:35:03 +03:00
annelin b160e6f2ff Release 1.1
Now reading messages instant (if we're online), otherwise we will got duplicate updates.
Code optimizations and simplifications.
Added missing dependency (fileutils)
2019-05-31 14:30:25 +03:00
annelin 711534b909 Added missing files 2019-05-22 13:41:43 +03:00
annelin b1a9979be2 [FIX] Fixed delayed presences while running in multiple-account mode 2019-05-09 14:50:54 +03:00
annelin dc615f977c Release 1.0.
[NEW] implemented XEP-0030 (Service Discovery) — you can now see transport in service discovery
[NEW] implemented XEP-0077 (In-Band Registration) — now you can also start session from GUI Jabber client
[NEW] implemented XEP-0100 iq:jabber:gateway — you can now add Telegram contact from your GUI Jabber client
[NEW] implemented presence cache. now sending presences once a minute to prevent presence flooding
[FIX] fixed online presence after establishing telegram session and offline after disposing session
[FIX] won't use tdlib message database anymore, implemented our own messages cache
[FIX] show "chat created" message correctly
[FIX] fixed /info command
[FIX] fixed closing secret chats
[UPD] now you can start secret chat directly by sending /secret to contact
[UPD] /debug renamed to /info, now shows active sesions, removed memory profiling as it does not helps
[UPD] removed main loop (but still shutting down correctly) — use systemd etc. to restart transport correctly
2019-05-07 22:22:26 +03:00
annelin d83c24da76 Release 1.0-beta4
[UPD] Slightly changed logging behaviour, now only message events will appear in Logger::INFO level
2019-05-05 04:09:08 +03:00
annelin 3545c692e1 Release v1.0-beta3
[FIX] Correct behaviour of /connect and /disconnect commands that also affects Jabber presences
2019-05-05 01:42:59 +03:00
annelin 0625b5c3d4 Release 1.0-beta2
[FIX] Fixed /connect command
[ADD] Added session counter (active/total) in /debug command
2019-05-05 00:21:59 +03:00
annelin 88c7eb09da Release 1.0-beta1. Some more tests and here we go..
Warning! It is beta software and it has not been tested thoroughly.

[UPD] Code restructurization. Removed unneccessary XMPPSession class.
[UPD] Recuded memory consumption.
[UPD] Seems like memory leaks fixed too, need test a bit longer
[UPD] Now running in forever-loop, use double Ctrl+C to quit
[ADD] Admin commands /sessions, /debug and /restart
[ADD] New config parameters: xmpp->debug to print XML stream and xmpp->admins[] to give access to above mentioned /commands
[ADD] We can now use memory profiler to get detailed memory usage information: run application with --profiler key (and also gem install memprof2) (yes, fucking leaks...)
[FIX] Fixed secret chat closing (I hope so...)
2019-05-04 23:17:29 +03:00
annelin 269dfce55b Removed force GC.start because it doesn't help us. 2019-05-04 05:40:46 +03:00
annelin 61a42e63b4 Release 0.9
[UPD] Now gracefully closes all Telegram and XMPP connections when SIGINT received.

I do not fucking know how to deal with memory leaks in Ruby. I tried literally everything.
Unloading TD class, forcing garbage collection, et cetera — nothing helps, it just runs a gig in two days.

So, now we have to kill -INT our transport every... six hours, for example, and monitor/reconnect (for example with systemd).
Fuck ruby & tdlib. Hate.
2019-05-04 05:40:02 +03:00
annelin dc7af59673 Release 0.8.3
[FIX] fixed sending messages to unavailable chat
[FIX] some fixes in /members command
[UPD] better formatting of /help message
[ADD] add /info id command to get user/chat info by its id
2019-04-16 17:07:15 +03:00
annelin 3f0fcba27b Release 0.8.2
[ADD] /members command to show current chat members
2019-04-16 16:24:03 +03:00
annelin 3fe34d6c1a Release 0.8.1
[UPD] renamed config param xmpp:secret to xmpp:password according to ejabberd config name
[UPD] updated README.md and config example
2019-04-16 09:22:59 +03:00
annelin 7a0845ad39 Added README.md & license 2019-04-16 07:53:31 +03:00
annelin 8808fafeff Release v0.8
[ADD] added /setname, /setusername, /setbio, /setpassword commands (see /help)
2019-04-16 07:00:09 +03:00
annelin 2987d8f3a5 Release 0.7
[FIX] now trying to revive stream if any exception occured
[FIX] fixed >quotes without messages ID
[UPD] using unicode symbols to compact msg prefix
[UPD] logging slightly modified
[UPD] added garbage collection after each incoming message
2019-04-16 06:45:56 +03:00
annelin 1ae35f501d Release 0.6.1
[FIX] fixed messages echo when xmpp session goes offline
[UPD] do not sync all telegram statuses immediately because it leads to stream error
[UPD] now using messages and files database again to reduce thousands of requests
2019-04-15 08:03:40 +03:00
annelin d20414617a Release 0.6
[NEW] broadcasting vcard photo update
[NEW] new commands: /secret, /group, /supergroup, /channel, /search, /history (send /help to any contact)
[UPD] improved formatting
2019-04-14 17:41:40 +03:00
annelin a799c1244b Release 0.5
[NEW] Now using local Jabber timezone
2019-04-14 05:56:29 +03:00