LINUX.ORG.RU

Zhabogram 0.1 — Транспорт из Telegram в Jabber

 , ,


6

3

Zhabogram — транспорт (мост, шлюз) из сети Jabber (XMPP) в сеть Telegram, написанный на Ruby, преемник tg4xmpp.
Данный релиз посвящается команде Telegram, которая решила, что третьи лица имеют право затрагивать историю переписки, находящуюся на моих устройствах.

  • Зависимости:

    • Ruby >= 1.9
    • ruby-sqlite3 >= 1.3
    • xmpp4r == 0.5.6
    • tdlib-ruby == 2.0 и скомпилированная tdlib == 1.3
  • Возможности:

    • Авторизация в Telegram
    • Синхронизация списка чатов с ростером
    • Отправка и приём сообщений, в т.ч. в группах и супергруппах
    • Сохранение сессий, автоматическое восстановление и завершение сессии Telegram при входе и выходе из Jabber
    • Приём и сохранение файлов (поддерживаются документы, фото, аудио и стикеры)

Фичреквесты и баг-репорты принимаются.

>>> Mercurial-репозиторий

★★★★☆

Проверено: Shaman007 ()
Последнее исправление: Shaman007 (всего исправлений: 1)
Ответ на: комментарий от devalone

Читать умеешь?

Delete any message on both ends in any private chat, anytime

И, да, я только что для теста удалил сообщение в чате с бывшей женой. Её сообщение.

Nill
()
Ответ на: комментарий от annerleen

если больше половины населения за чертой бедности?

А в других странах нет бедности? К чему эти передёргивания?

В РФ может люди и не богатые, но никто на улице не ворует в открытую, как это происходит в крупных европейских городах вроде Берлина, Милана и прочих. Из чего разумно следует, что что-то в ваших размышлениях не то.

anonymous
()
Ответ на: комментарий от devalone

Для моего собеседника _моё_ сообщение — это чужое.

annerleen ★★★★☆
() автор топика

- 51 seconds ago 2019-04-08 18:28:26

[FIX] fixed bug with creating new session 
[NEW] added reply possibility with >msgid
[NEW] added delivery reports (will make all messages in chat read when sending message to this chat)
annerleen ★★★★☆
() автор топика
Ответ на: комментарий от annerleen

Он закрыт чуть не в тот же день с резолюцией «так и должно (не) работать». Я не знаю, что делают в дебиане и арче (мне самому интересно), но в обсуждении баг-репорта возмущаются именно мантейнеры (других дистров), что с такой политикой они не могут добавить ничего в репозитории.

odin_ago
()
Ответ на: комментарий от Nill

Подозреваю, что работает не у всех, учитывая ответы в баг репорте (не «у меня всё равботает», а «не работает, так надо»).

odin_ago
()
Ответ на: комментарий от AVL2

Бэкап при том, что именно не нарушая «общих правил», «в идеальном мире», удаление всё равно не работает. А раз так, то совершенно непонятно, к чему весь этот (абстрактный) пафос об «идеальном мире» и, что гораздо более важно, к чему вся эта (вполне конкретная, приводящая в частности к фактической не опенсорсности официального бинарника) борьба с неофициальными клинетами с помощью API_ID.

odin_ago
()
Ответ на: комментарий от Nill

Как ты посмел? Моё мнение для тебя уже совсем не важно? Нам не быть вместе... Я подаю на развод!

anonymous
()
Ответ на: комментарий от Pravorskyi

храняться

А начал вполне неплохо.

Для меня приемлемым было бы отсылание запроса на подтверждение удаления, а собеседник уже выбирает — соглашаться или нет. То есть, для удаления сообщения с чужого устройства должно быть согласие владельца устройства.

Если тебе важны твои логи - бекапь их. Если не бекапишь - ССЗБ.

Deleted
()
Ответ на: комментарий от odin_ago

Может быть люди неудачно брали код из гита и ленились потом через день взять свежий. Для меня было принципиально проверить, что выложенный код собирается и работает, я это проверил и убедился.

Nill
()
Ответ на: комментарий от odin_ago

Блин, да нет борьбы с неофициальными клиентами, она тебе мерещится. Пиши себе клиент, вон авторы Plus Messenger пишут и не рассказывают баек про борьбу с неофициальными клиентами.

Nill
()
Ответ на: комментарий от annerleen

гы, просто кто-то чужие циферки примеряет к РФ

им и невдомёк, что в половине стран ЕС люди ещё живут только потому, что их дети/мужья/жёны работают в Англии или Германии

anonymous
()
Ответ на: комментарий от Nill

Чат он один на двоих. В нем пишут двое. И эти двое могут удалять сообщения. Логично, не?

Логично это если удалить можно с обоюдного согласия.

anonymous
()

Данный релиз посвящается команде Telegram, которая решила, что третьи лица имеют право затрагивать историю переписки, находящуюся на моих устройствах.

А просто не пользоваться не катит?

anonymous
()
Ответ на: комментарий от odin_ago

Вынужден признать, что вот сегодня не собралось на Ubuntu 18.04 Есть проблема. Разберусь в чем дело и соберу, теперь уже дело принципа.

Nill
()

А удаление сообщения с чужого устройства происходит через синхронизацию истории с сервера?

anonymous
()
Ответ на: комментарий от annerleen

Неофициальные клиенты Telegram должны пройти негласную «цензуру», если у него больше N пользователей.
К примеру, как раз-таки упоминалось то, что обязательно нужно реагировать на «UpdateDeletedMessage».

Для телеграмма открытое API, можем сделать свои открытые независимые клиенты, говорили они... ну-ну... только про анальную EULA забыли.

anonymous
()
Ответ на: комментарий от annerleen

Это их интеллектуальная антибот-система. Иногда банит прям сразу после регистрации.

gadfly ★★
()
Ответ на: комментарий от AVL2

Что ты несёшь? Насильно вкалывать собеседнику амнезиак после разговора — это типа нормально?

anonymous
()
Ответ на: комментарий от Nill

При этом почти все они есть в Телеграме

Вот из-за таких дятлов, как ты, которые при наличии у собеседника и Telegram, и Jabber, предпочитают писать в Telegram — и создаётся впечатление, что «вымерли». Как наличие у кого-то аккаунтов в стапицта мессенджерах закапывает Jabber, поясни?

anonymous
()
Ответ на: комментарий от Deleted

Если важны логи, то игнорировать неконтролируемое удаление сообщений из этих самих логов — глупо.

Бэкапы важны, это даже не обсуждается. Но с неконтролируемым удалением сообщений собеседником мы легко можем получить несогласованные (неконсистентные) данные. Особенно, если бэкап не делается при каждом получении или отправке сообщения.

ТС решил эту проблему транспортом.

Pravorskyi ★★★
()
Ответ на: комментарий от Nill

Откуда в IRC удаление сообщений? Он же простой, как валенок, тупо строки по сокетам ходят. Из логов, что ли? А толку, если копия уже отложилась на куче баунсеров?

anonymous
()
Ответ на: комментарий от Nill

А другие имеют право послать тебя на три буквы вместе с твоим манямирком. Ты ж в Европе живёшь, а не в СССР.

anonymous
()
Ответ на: комментарий от anonymous

им давно пора закрыть API для third-party

И пользователи разбегутся на более свободные штуки типа той же шматрицы, ибо оно станет ничем не лучше проприетарной каки типа Viber/Whatsapp. Ну разве что бесплатными стикерами, кек. Но конкуренты эту фишку быстро перехватят. Секретные чаты уже только ленивый не сделал, даже в покрывшийся мхом Skype завезли.

anonymous
()
Ответ на: комментарий от odin_ago

Что значит «запихнуть»? Пакеты для дебиана собирают сторонние мейнтейнеры. Мейнтейнер есть, лицензия распространять позволяет, DFSG соответствует — пакет в репах есть; что-то отпадает — пакета нет, вот и весь сказ. Сами разработчики могут у себя на сайте .deb-пакет выложить или репозиторий поднять, это их дело, мейнтейнеры Debian тут ни при чём; в официальных репозиториях есть только то, что мейнтейнеры опакетили сами.

И как у тебя необходимость запрашивать id соотносится с «невозможностью собрать из исходников»? Об этом в инструкции в сборке написано, вообще-то. Ты из тех дятлов, кто не читает инструкций и тупо делает для любого кода на автомате ./configure; make; sudo make install, а потом бежит плакаться, что ни фига не работает, потому что разработчики, говноеды эдакие, обмазываются всякими autotools, cmake и прочим хипсторским ненужно?

anonymous
()
Ответ на: комментарий от annerleen

огромный сосуд с бесплатными SIM-картами

Мне три горсти SIM-карт, пожалуйста; на огороде посажу, вдруг дерево с айфонами вырастет.

anonymous
()
Ответ на: комментарий от odin_ago

опенсорсности
бинарника

Ещё один наркоман.

anonymous
()
Ответ на: комментарий от anonymous

Да. Это клуб и в нем свои правила. Не нравятся правила - не ходи в клуб. Есть вазап, вайбер и еще тыщща других клубов.

Эти правила позволяют выстроить определенные отношения и практики общения. Это важно.

AVL2 ★★★★★
()
Ответ на: комментарий от AVL2

Я распоряжаюсь своими данными на своём компьютере, как хочу. И программами тоже. Это моё право, и мне плевать на договоры и соглашения, если они нарушают мою свободу.

Будет решение суда - удалю данные. Без него - идите лесом, хочу и буду пользоваться транспортами или пофикшенными клиентами.

anonymous8 ★★
()

А есть что-то для наоборот? Чтобы читать xmpp в телеге?

А то у меня джаббер давно уже сдох, но полтора живых контакта там осталось

overmind88 ★★★★★
()
Ответ на: комментарий от anonymous

Клуб не закрытый. Обычный открытый клуб. И все равно в нем есть свои правила. Не хочешь, не присоединяйся.

Если договорились, что сообщения по запросу удаляются, значит удаляются.

AVL2 ★★★★★
()
Ответ на: комментарий от anonymous8

Ну, собственно, речь и идет о том, что тебе не место в телеге. И всем неофициальным клиентам, получается, тоже.

Любой онлайн игрок тоже так может сказать. Мой компьютер, хочу и читерю. Но их банят и правильно делают...

AVL2 ★★★★★
()
Ответ на: комментарий от Pravorskyi

Для меня приемлемым было бы отсылание запроса на подтверждение удаления, а собеседник уже выбирает — соглашаться или нет. То есть, для удаления сообщения с чужого устройства должно быть согласие владельца устройства.

Мне почему-то представилась ситуация когда двое переписываются о чем-то незаконном, потом одного загребают, а второй срочно подчищает разговоры. Вполне жизненная ситуация так-то, и сразу такая возможность видится в другом свете.

Loki13 ★★★★★
()
Ответ на: комментарий от Loki13

разговаривают о чём-то незаконном
в Telegram

lol

annerleen ★★★★☆
() автор топика
Ответ на: комментарий от anonymous

Что значит «запихнуть»?

«Запихнуть» - значит сказать «вот есть такой пакет, (опционально: я один из его авторов/принадлежу к узкому кругу разработчиков и отвечаю за распространение), хочу чтобы он был в официальных репозиториях дебиана, чтобы пользователи дебиана имели возможность его поставить самыми стандартными средствами, (опционально: и я же буду его мантейнить).

Мне админы дебиана/репозиотрия отвечают либо „ok, вот ты и будешь это мантейнить“, либо „no way, написано криго, глючит и тормозит, а может и систему порушить/и это ты называешь свободной лицензией? иди отсюда в non-free, а лучше сразу в винду“.

необходимость запрашивать id
Об этом в инструкции в сборке написано, вообще-то.

Я не имел в виду, что собирать нужно обязательно с помощью

./configure; make; sudo make install

Я хочу сказать, что если необходимость запрашивать id для сборки действительно имеет место, то какими бы командами я не компилировал ровно то, что скачалось, что бы я ни делал только с тем кодом, который получил, подписавшись за это под GPL, я рабочий клиент не получу (хуже того, не знаю, что админы телеграма делают на самом деле, но вполне возможно, что получу фактически вредоносную программу, банящую любого, кто введёт в неё логин/пароль).

А если я запрошу api_id и приму условия, на которых он выдаётся (не сообщать никому, фактически NDA), и вставлю этот api_id в код, то получу пусть и рабочую программу, но к GPL не имеющую никакого отношения уже, её вообще распространять нельзя.

Вопрос остаётся: как и в каком виде (с каким, откуда взявшимся и на каких условиях доступным api_id) это могло попасть в дебиан?

odin_ago
()
Ответ на: комментарий от odin_ago

(с каким, откуда взявшимся и на каких условиях доступным api_id)

Из исходников Telegram на Github.

https://github.com/telegramdesktop/tdesktop/blob/bec39d89e19670eb436dc794a8f2...

upd: а не, прошу прощения, у дебиановцев какой-то свой API ID.

annerleen ★★★★☆
() автор топика
Последнее исправление: annerleen (всего исправлений: 1)
Ответ на: комментарий от odin_ago

Напрямую по инструкции с гитхаба. Цель убедится, что собирается. Пока не было времени разобраться, но обязательно это сделаю

Nill
()
Ответ на: комментарий от odin_ago

Вопрос остаётся: как и в каком виде (с каким, откуда взявшимся и на каких условиях доступным api_id) это могло попасть в дебиан?

Ты можешь получить свой тут. А, вообще, в исходниках tdesktop есть пара api_id/api_hash, я когда в прошлый раз для теста собирал их использовал(сейчас получил свои)

Nill
()
Ответ на: комментарий от Nill

Ещё раз. Могу, но только под подписку о неразглашении. После чего код (куда я этот api_id вставлю) теряет GPL-совместимость. Сомневаюсь, что дебиановцы его в таких условиях добавили к себе в репозиторий (если, конечно, они получили api_id на тех же условиях, что и простые смертные). Впрочем, если телеграм после таких художеств выпрут из дебиана, я уже только рад буду.

odin_ago
()
Ответ на: комментарий от annerleen

Он просто врет, либо он на зарплате, либо просто в своей ненависти к удобным инструментам обезумел

Nill
()
Ответ на: комментарий от annerleen

А никто и не говорил, что требование не разглашать есть именно на core.telegram.org . Оно есть (как сказано, в частности, в багрепорте, на который уже была ссылка) на my.telegram.org , в момент когда эти api_id и api_hash собственно выдаются.

odin_ago
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.