Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] отправка сообщений в jabber из cmd или bat

Ответить
Настройки темы
CMD/BAT - [решено] отправка сообщений в jabber из cmd или bat

Пользователь


Сообщения: 53
Благодарности: 3

Профиль | Отправить PM | Цитировать


Требуется отправлять сообщения из коммандной строки Windows на jabber (по протоколу XMPP)
В линуксе полно решений, и perl-скрипты и SendXMPP, а вот для Win32/Win64 подобного нет.
Перерыл кучу форумов, но не нашел даже аналогов

хотелось бы отправлять сообщения запуская программу с параметрами:
progr.exe %SERV %JID %PAS %RES %MESS
где
SERV - адрес jabber сервера
JID - логин отправителя, например: user@jabber.ru
PAS - пароль
RES - получатель, например: user1@jabber.ru
MESS - собственно само сообщение

в результат работы можно только отчет об ошибке подключения к серверу или несуществующего адреса получателя

____________________________
итог: если есть что-либо подобное под windows, подскажите , хотябы направление поиска
заранее благодарен

Отправлено: 11:53, 11-01-2012

 

Новый участник


Сообщения: 10
Благодарности: 0

Профиль | Отправить PM | Цитировать


Камрады, тема на хабре была удалена, и теперь не понятно где раздобыть то что там было.

Отправлено: 14:10, 23-07-2013 | #11



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

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата ameelien:
Камрады, тема на хабре была удалена, »
Создание EXE файла из ruby скрипта при помощи ocra на примере утилиты командной строки, посылающей XMPP (Jabber) уведомления / Хабрахабр

Цитата ameelien:
и теперь не понятно где раздобыть то что там было. »
Достаём потерянные статьи из сетевых хранилищ / Хабрахабр
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:39, 23-07-2013 | #12


Старожил


Сообщения: 415
Благодарности: 257

Профиль | Отправить PM | Цитировать


ameelien, как и обещал, выкладываю для вас то, что использую сейчас сам. Это откомпилированный в exe широко известный perl-скрипт sendxmpp. Никаких зависимостей или наличия перла не требует, всё включено в сам бинарник. Я делал его под x64, но если очень нужно, могу на виртуалке под x86 сделать. Проверено на Win7 и Win 2008 r2.
Простейший пример использования:
Код: Выделить весь код
Echo This is simple test message|sendxmpp -t -s "Test message" -u "login" -p "password" -j "jabber.ru" applejack@neko.im
Обратите внимание, адресатов может быть сколько угодно, просто перечислите их в конце. Более подробно прочитать про синтаксис sendxmpp можно здесь.
Скачать (x64) (3,9 мб)

UPD: По просьбе пользователя RadinOFF добавил версию под 32-битную систему.
Скачать (x86) (3,2 мб)

Последний раз редактировалось Anonymоus, 16-07-2014 в 20:15. Причина: исправлены ссылки

Это сообщение посчитали полезным следующие участники:

Отправлено: 10:03, 24-07-2013 | #13


Новый участник


Сообщения: 10
Благодарности: 0

Профиль | Отправить PM | Цитировать


Действительно пашет. Правда понимает только UTF-8.

Отправлено: 13:03, 24-07-2013 | #14


Новый участник


Сообщения: 10
Благодарности: 0

Профиль | Отправить PM | Цитировать


PS: Для тех кто не в курсе по ключам к этой утилите - под катом есть основные и дополнительные:
читать дальше »

--no-tls-verify
--tls-ca-path

-f,--file <file> use <file> configuration file instead of ~/.sendxmpprc
-u,--username <user> use <user> instead of the one in the configuration file
-p,--password <password> use <password> instead of the one in the configuration file
-j,--jserver <server> use jabber server <server> instead of the one in the configuration file. Note that you can add :<port> to use a non-default port, ie. -j myjabber.org:1234
-r,--resource <res> use resource <res> for the sender [default: 'sendxmpp']; when sending to a chatroom, this determines the 'alias'
-t,--tls connect securely, using TLS
-c,--chatroom send the message to a chatroom
-s,--subject <subject> set the subject for the message to <subject> [default: '']; when sending to a chatroom, this will set the subject for the chatroom
-m,--message <message> read the message from <message> (a file) instead of stdin
-i,--interactive work in interactive mode, reading lines from stdin and sending the one-at-time
-v,--verbose give verbose output about what is happening
-h,--help,--usage show a 'Usage' message
-d,--debug show debugging info while running. WARNING: This will include passwords etc. so be careful with the output!

По ссылкам подробнее все.
http://pwet.fr/man/linux/commandes/sendxmpp
http://sendxmpp.hostname.sk/

---------------------------------------------------------------------------------------------



По теме:
Я не могу победить его снова.
Я использую яндекс почта для домена. ( https://pdd.yandex.ru/ )
Пишу команду:
echo blabla | sendxmpp.exe -u "admin@2xxx.ru" -p "werwerwe23" -j "xmpp.yandex.ru:5222" bla-bla@jabber.ru

и получаю отбой...

Сould not connect to 'xmpp.yandex.ru' on port 5222:
или
Сould not connect to 'domain-xmpp.ya.ru' on port 5222:

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



http://help.yandex.ru/pdd/chat.xml



Вот лог отладки:
читать дальше »


XML::Stream: new: hostname = (Windows)
XML::Stream: SetCallBacks: tag(node) func(CODE(0x3ed38))
XMPP::Conn: xmppCallbackInit: start
XMPP::Conn: SetCallBacks: tag(message) func(CODE(0x3ed58))
XMPP::Conn: SetCallBacks: tag(presence) func(CODE(0x3edb288))
XMPP::Conn: SetCallBacks: tag(iq) func(CODE(0x3edbd10))
XMPP::Conn: SetPresenceCallBacks: type(subscribe) func(CODE(0x3ed70))
XMPP::Conn: SetPresenceCallBacks: type(subscribed) func(CODE(0x3e378))
XMPP::Conn: SetPresenceCallBacks: type(unsubscribe) func(CODE(0x3e150))
XMPP::Conn: SetPresenceCallBacks: type(unsubscribed) func(CODE(0x3edb390))
XMPP::Conn: SetDirectXPathCallBacks: xpath(/[@xmlns="urn:ietf:params:xml:ns:xmpp-tls"]) func(CODE(0x3ed28))
XMPP::Conn: SetDirectXPathCallBacks: xpath(/[@xmlns="urn:ietf:params:xml:ns:xmpp-sasl"]) func(CODE(0x3ed80))
XMPP::Conn: xmppCallbackInit: stop
sendxmpp: ssl_verify: 0
sendxmpp: tls_ca_path:
XMPP::Conn: Connect: host(xmpp.yandex.ru:5222) namespace(jabber:client)
XMPP::Conn: Connect: timeout(10)
XML::Stream: Connect: type(tcpip)
XML::Stream: Connect: Got a connection
XML::Stream: Send: (<?xml version='1.0'?><stream:stream version='1.0' xmlns:stream='http://etherx.jabber.org/streams' xm
lns='jabber:client' to='xmpp.yandex.ru' from='same' xml:lang='en' >)
XML::Stream: Read: buff(<?xml version='1.0'?><stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org
/streams' id='7593108' from='ya.ru' xml:lang='en'><stream:error><host-unknown xmlns='urn:ietf:params:xml:ns:xmpp-strea
ms'/></stream:error></stream:stream>)
XML::Stream: _handle_root: sid(newconnection) sax(XML::Stream::Parser=HASH(0x3edccc0)) tag(stream:stream) att( xmlns:str
eam http://etherx.jabber.org/streams xmlns jabber:client from ya.ru id 7593108 xml:lang en )
XML::Stream: Node: _handle_element: sid(newconnection) sax(XML::Stream::Parser=HASH(0x3edccc0)) tag(stream:error) att( )

XML::Stream: Node: _handle_element: check( -1 )
XML::Stream: Node: _handle_element: sid(newconnection) sax(XML::Stream::Parser=HASH(0x3edccc0)) tag(host-unknown) att( x
mlns urn:ietf:params:xml:ns:xmpp-streams )
XML::Stream: Node: _handle_element: check( 0 )
XML::Stream: Node: _handle_close: sid(newconnection) sax(XML::Stream::Parser=HASH(0x3edccc0)) tag(host-unknown)
XML::Stream: Node: _handle_close: check( 1 )
XML::Stream: Node: _handle_close: check2( 0 )
XML::Stream: Node: _handle_close: sid(newconnection) sax(XML::Stream::Parser=HASH(0x3edccc0)) tag(stream:error)
XML::Stream: Node: _handle_close: check( 0 )
XML::Stream: Node: _handle_close: check2( -1 )
XML::Stream: Node: _handle_close: sid(newconnection) sax(XML::Stream::Parser=HASH(0x3edccc0)) tag(stream:stream)
XML::Stream: Node: _handle_close: check( -1 )
XML::Stream: Node: _handle_close: rootTag(stream:stream) tag(stream:stream)
Could not connect to 'xmpp.yandex.ru' on port 5222:

Последний раз редактировалось ameelien, 24-07-2013 в 16:58.


Отправлено: 15:07, 24-07-2013 | #15


Аватара для stano4nik

Новый участник


Сообщения: 6
Благодарности: 2

Профиль | Отправить PM | Цитировать


ameelien, победили проблему?

Отправлено: 20:49, 04-09-2016 | #16

mwz mwz вне форума

Аватара для mwz

Ушел из жизни


Сообщения: 8595
Благодарности: 2127

Профиль | Сайт | Отправить PM | Цитировать


stano4nik,
Имя пользователя: ameelien
Последняя активность: 10-09-2014 18:06

-------
Mikhail Zhilin


Отправлено: 23:04, 04-09-2016 | #17



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] отправка сообщений в jabber из cmd или bat

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интернет - [решено] отправка сообщений в jabber из cmd или bat RedX Программное обеспечение Windows 1 18-01-2012 08:54
2007 - [решено] Настройка почты через bat (cmd или скрипт) zai Microsoft Office (Word, Excel, Outlook и т.д.) 1 25-11-2011 17:32
Разное - [решено] перезагрузка из .bat или .cmd San_dr Программирование и базы данных 7 03-08-2011 01:58
CMD/BAT - дайте код cmd или bat (см. внутри) Влад!!!!!! Хочу все знать 2 17-06-2011 16:59
Автоматический запуск cmd или bat файла из autorun.inf Altmer Автоматическая установка Windows 2000/XP/2003 2 24-02-2008 14:52




 
Переход