2014/04/13 - зеркалирование блога

топ 100 блогов Леонид Каганов: блог14.04.2014

В связи с ухудшившимся сетевым климатом внес в движок дополнения, при помощи которых каждая заметка теперь будет поститься сразу в несколько аккаунтов в самых разных соцсетях. Типов аккаунтов у меня в движке пока поддерживается три.

1) Лучше всего работает протокол flat ЖЖ — постинг, обновление и удаление заметок. Со временем подумаю, как сделать подкат для больших заметок.

2) API Facebook позволяет разместить заметку (в своем ущербном формате, с одной фоточкой) и удалить заметку, но почему-то не дает ее редактировать. Вообще с этим API пришлось дико повозиться, потому что официальный API на сайте Фейсбука кривой как смертный грех — это громоздкие файлы, который непойми чем заняты, да еще сыплют бесконечными ошибками, потому что им не нравится то версия PHP, то еще что-то. Поэтому от официального API пришлось отказаться, а соорудить свой. Это работает.

3) Твиттер — работает просто, но не дает ни редактировать пост, ни удалять его.

Вконтакт и всё остальное пока не освоил, если можете помочь — пишите. Какие-то гугл-плюсы, вордпрессы, куда еще можно постить? Еще чисто теоретически мой собственный сайт умеет делать и автопостинг в ФИДО, и когда-то это вроде работало. Но я пока не решил, надо ли это, и какую себе отдельную эхоконференцию заводить ;)

В итоге я прописал себе в автопостинги такие зеркала:

http://facebook.com/lleokaganov/ До этого автопостингом в Facebook занимался какой-то внешний сервис по RSS-лента, а теперь это делает сам движок. Не удивляйтесь, если это сообщение придет в Фейсбук дважды — я пока тот сервис не отключал :)

http://lleo.livejournal.com Это мой старый ЖЖ-аккаунт, но долгие годы он принадлежал не мне, потому что я его удалил, а продлить в какой-то момент забыл. И его хранил некий добрый аноним, а когда я спросил его, нужен ли он ему, он мне его передал обратно. Поэтому теперь мой дневник копируется туда.

http://lleo-kaganov.livejournal.com Но пока аккаунт lleo был утрачен, я успел себе завести lleo-kaganov, поэтому дублируется дневник будет и туда тоже. Новому движку пофиг, сколько аккаунтов перечислить, главное, чтоб сам протокол поддерживался. Обратите внимание: аккаунт lleo-run — не мой, это автотрансляция, которой я никак не управляю.

http://lj.rossia.org/users/lleokaganov/ Ну раз уж есть поддержка протокола Flat, грех не завести аккаунт на lj.russia, там тот же протокол. Жаль, аккаунт lleo кем-то занят, но буду lleokaganov.

https://twitter.com/lleokaganov/ — это твиттер, там только сообщения о новой заметке с ссылкой.

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

UPD: Для владельцев движка

[показать спрятанное]
1. В /install надо нажать кнопку, чтобы создать новую таблицу `socialmedia` — в ней хранится информация о сделанных постах. Далее заходим из обычной админки в углу экрана в «редактор переменных» и создаем запись с именем «autopost», она у меня такая:

lj template.ljpost lleo-kaganov VJQgfhjkm123

lj template.ljpost lleo TOTjlbyVJQgfhjkm123

lj template.ljpost lleokaganov 123NEGJQgfhjkm123 http://lj.rossia.org/interface/flat

twitter template.twitter lleokaganov 3Gc8NvGgHAuZwdBcN5ul3Q y4bIcSaDEMbRx4ALLjX2n2Pd2uzMOAzEDd1BIAVAOA 142408693-xR3RaAQWAJu1wk6iRPrRDfeDUsRXdZ0WPoNEJdTp 80A6K7JeYQmOtVDsRJuYOIdxKeffMHRRnwjnMnfY2neyw

facebook template.facebook lleokaganov 641935263889395 31a2bfcacf8d887b102d6e35ee54ee7b

Это построчно перечислены все соцсети, в которые будет автоматический постинг. Формат строки — через пробел перечислены:

[название протокола] — сейчас это: lj,facebook,twiter

[название темплейта] — любое, главное, чтоб вы создали такую переменную тоже

[имя аккаунта в этой соцсети] — на фейсбуке это может быть цифры или имя

И далее перечислены пароли или ключи доступа и прочие данные, необходимые для коннекта с этой сеткой.

Например протокол LJ требует только пароль и по умолчанию настроен на ЖЖ. Если вы хотите, например, на lj.russia, то надо после пароля указать его flat-url: http://lj.rossia.org/interface/flat

Протокол twitter требует 4 ключа, которые вы получаете при авторизации на Твиттере. Как эти ключи у Твиттера выбить, я как-то подробно писал со скриншотами, с тех пор скриншоты может чуть поменялись, но суть и названия у ключей прежние.

Протокол Facebook требует два ключа: AppID и AppSecret. Чтобы выбить их у Фейсбука, требуется поебаться, заведя там «приложение», этот процесс со скриншотами описан здесь, у меня получилось, хотя скриншоты опять малость устарели (вот, блять, неймется кому-то постоянно менять интерфейсы?).

2. Создаем темплейты заметок. Это такие шаблоны, по которым будет формироваться заметка — вдруг вы к ней захотите что-то дописать от себя специально для конкретной соцсети или как-то особо оформить?*

Для всех ЖЖ template.ljpost у меня такой:

{text}

это перепост заметки, оригинал находится на моем сайте: {url}

Ну, понятно, из него заметка делается — вместо {text} движок подставляет текст заметки, вместо {url} — адрес оригинальной заметки на моем сайте.

Темплейт template.twitter совсем лаконичный: «{Header} {url}». То есть, заголовок поста пробел ссылка, и как ссылку Твиттер сам оформит.

Темплейт для Фейсбука вообще оказался не нужен, но возможно движок потребует его создать, и тогда напишите там просто "{text}«. Очень все сложно у Фейсбука, не до темплейтов.

3. В редакторе заметки теперь под кнопкой «сохранить» есть еще две кнопки — «Social Media» (запостить заметку) и «List SM» — показать список запощенных заметок с их адресами и сделать с ними какие-то операции (например, удалить пост, если протокол позволяет). Тут, кстати, есть инструмент, которым можно поудалять сделанные записи. Автопостинг происходит быстро без ухода со страницы — аяксом они все обращаются параллельно. В будущем я сделаю, чтобы автопостинг происходил вообще сам при сохранении заметки (а если заметка уже запощена — то вносил изменения в существующие). Но пока по кнопке вручную. Про права: автопостинг не постит закрытые заметки (доступ 'admin'), а ЖЖ при постинге коректно обрабатывает доступ: открытая — значит, делает открытую, для друзей — значит, для друзей (хотя как реально различаются списки друзей на сайте и в ЖЖ — это вопрос).

4. Также есть модуль {_CROSSPOSTED:_}, который можно вставить в дизайн страницы, и он будет отображать ссылки, куда сделан автопостинг — как у меня сейчас.

Оригинал заметки находится по адресу http://lleo.me/dnevnik/2014/04/13.html, там можно оставить комментарии.

Оставить комментарий

Архив записей в блогах:
Суть насмешки понятна, просто интересно, процветающему бизнесу точно нужно вмешиваться в политику и делать это именно так? Прямая линия с президентом по ссылке:  https://www.youtube.com/watch?v=07-kOFHFChQ UPD. В первоисточнике (Уральский ТГ канал "Квартал миллионеров") этот ...
Новые этимологизмы родились из размышлений над этимологией слова Фантазия Стада диких этимологизмов Создатель мира все же не был поэтом. Белый шум для наших горожан уже стал ...
Вот такой суровый джентельменский набор предлагает пятизвездочная (!) гостиница в Орле. Как думаете, с чего начать?-) Интересная скульптура перед входом. ...
Что может заставить уехать на край света? Променять Европу на холодную Сибирь, и полностью изменить свой образ жизни? Доминик Тэс знает ответ. Несколько лет назад системный администратор из Бельгии отправился на своём мотоцикле путешествовать по России. Теперь он живёт в городе ...
Сегодня отправлен в отставку губернатор Челябинской области Михаил Юревич. «Челябинская область перевернула и закрыла самую позорную страницу своей истории (правильнее сказать - единственную позорную), связанную с захватом власти в регионе (о том, как именно это происходило, ...