Перейти к содержимому


Фото
- - - - -

Отправка сообщений посредвством drweb c командной строки


  • Please log in to reply
71 ответов в этой теме

#1 kosmonaft

kosmonaft

    Member

  • Posters
  • 113 Сообщений:

Отправлено 30 Январь 2015 - 23:40

Собственно вопрос в теме. Нужно "привязать" к сервису возможность отправлять  сообщения через drweb в домене через cmd. Это возможно? 



#2 Afalin

Afalin

    Guru

  • Dr.Web Staff
  • 5 852 Сообщений:

Отправлено 30 Январь 2015 - 23:52

Какие сообщения? Кому? Откуда?
Семь раз отрежь – один раз проверь

#3 kosmonaft

kosmonaft

    Member

  • Posters
  • 113 Сообщений:

Отправлено 31 Январь 2015 - 00:04

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



#4 Afalin

Afalin

    Guru

  • Dr.Web Staff
  • 5 852 Сообщений:

Отправлено 31 Январь 2015 - 09:17

Есть интерфейс отправки сообщений, например, через WebAPI: esuite/include/languages/en/help/xml_api/station_message.htm
Семь раз отрежь – один раз проверь

#5 kosmonaft

kosmonaft

    Member

  • Posters
  • 113 Сообщений:

Отправлено 02 Февраль 2015 - 15:20

Можно немного подробнее, я не на ты с ASP.NET. Вот,  к примеру, при отправке из браузера есть сразу бве проблемы 1)логин и пароль 2)не получается отправить на киррилице (на инглиш отрабатывает). Задаю http://192.168.0.1:9080/api/stations/send-message.ds?id=XXXXXXXXXXXXXXXXXXXXXXX&message=test&logo={base64}



#6 Kirill Polubelov

Kirill Polubelov

    Hr. Schreibikus

  • Dr.Web Staff
  • 4 362 Сообщений:

Отправлено 02 Февраль 2015 - 15:39

В веб-интерфейсе Сервера, в разделе помощи (значок ? левее кнопки "Выход") есть раздел "Руководство по Web API". Глава 2, раздел 2.2 "Работа со станциями", "Отправка сообщений станции"


Сообщение было изменено Kirill Polubelov: 02 Февраль 2015 - 15:40

(exit 0)

#7 kosmonaft

kosmonaft

    Member

  • Posters
  • 113 Сообщений:

Отправлено 02 Февраль 2015 - 15:47

ну так, у меня конечно получается, вопрос в другом, это можно в коммандную строку все завернуть а не через вэб-морду делать?



#8 chs

chs

    Member

  • Posters
  • 249 Сообщений:

Отправлено 02 Февраль 2015 - 16:23

ну так, у меня конечно получается, вопрос в другом, это можно в коммандную строку все завернуть а не через вэб-морду делать?

 

Ну как-нибудь так -

#!/usr/bin/perl

# Create a user agent object
  use LWP::UserAgent;
  my $ua = LWP::UserAgent->new;
  $ua->agent("MyApp/0.1 ");

$ua->credentials('192.168.0.1:9080', '', "Admin", 'MyPassword');

$res = $ua->get('http://192.168.0.1:9080/api/stations/send-message.ds?id=XXXXXXXXXXXXXXXXXXXXXXX&message=test&logo={base64}');



Сообщение было изменено chs: 02 Февраль 2015 - 16:26


#9 N1ke

N1ke

    Member

  • Posters
  • 374 Сообщений:

Отправлено 02 Февраль 2015 - 16:45

Ещё wget можно использовать или curl. Авторизовываться они умеют



#10 kosmonaft

kosmonaft

    Member

  • Posters
  • 113 Сообщений:

Отправлено 02 Февраль 2015 - 16:49

это нужно как *vbs  огранизовать?



#11 pig

pig

    Бредогенератор

  • Helpers
  • 10 855 Сообщений:

Отправлено 02 Февраль 2015 - 18:13

wget и curl - готовые утилиты с кучей опций. vbs понадобится разве чтобы командную строку правильно соорудить. И то при составлении скрипта.
Почтовый сервер Eserv тоже работает с Dr.Web

#12 Anton Dobkin

Anton Dobkin

    Newbie

  • Members
  • 82 Сообщений:

Отправлено 02 Февраль 2015 - 20:07

это нужно как *vbs  огранизовать?

 

обычный bat файл, в нем что-то подобное:

C:\curl -u admin:root -k https://IP:9081/api/stations/send-message.ds?id=XXX&message=Text

где admin:root логин и пароль администратора, id - UUID станции

 

Если нужно отправить всем станциям группы, то:

C:\curl -u admin:root -k https://IP:9081/api/groups/send-message.ds?id=XXX&message=Text

где id - UUID группы. Например, для отправки сообщения на все станции сети, в качестве значения аргумента id,  передайте UUID группы Everyone.

 

В ответ вам вернется XML документ, со списком станций и статусом отправки на станцию сообщения. При необходимости можете его распарсить или сохранить куда

 

Скачать curl для windows можно тут: http://curl.haxx.se/dlwiz/?type=bin (wizard)

 

 

 

2)не получается отправить на киррилице

 

Сообщение должно быть в кодировке UTF-8


Сообщение было изменено Anton Dobkin: 02 Февраль 2015 - 20:07


#13 pig

pig

    Бредогенератор

  • Helpers
  • 10 855 Сообщений:

Отправлено 02 Февраль 2015 - 20:50

2)не получается отправить на киррилице

 
Сообщение должно быть в кодировке UTF-8

И дополнительно завёрнуто в URLEncode (это когда всё, что не латиница и не цифры, кодируется в HEX-последовательности вида %20).
Почтовый сервер Eserv тоже работает с Dr.Web

#14 basid

basid

    Guru

  • Posters
  • 4 479 Сообщений:

Отправлено 03 Февраль 2015 - 15:55

И дополнительно завёрнуто в URLEncode (это когда всё, что не латиница и не цифры, кодируется в HEX-последовательности вида %20).

Это wget самостоятельно сделает. cURL, вероятно, тоже.



#15 Konstantin Yudin

Konstantin Yudin

    Смотрящий

  • Dr.Web Staff
  • 19 552 Сообщений:

Отправлено 03 Февраль 2015 - 18:23

удобно фишинг рассылку делать, с картинками, линками :)
With best regards, Konstantin Yudin
Doctor Web, Ltd.

#16 kosmonaft

kosmonaft

    Member

  • Posters
  • 113 Сообщений:

Отправлено 03 Февраль 2015 - 19:20

Я чувствую что где-то рядом. Рспаковал curl на С:\, система 2012R2 x64 

Вот пытаюсь с коммандной строки выполнить:

c:\Curl\bin>curl -u admi:pass -k http://192.168.0.1:9080/api/stations/send-mes
sage.ds?id=f05a3c78-d21d-b211-xxxxxxxxxxxxxxx&message=0413041E0412041D041E
<?xml version="1.0" encoding="UTF-8"?>
<drweb-es-api operation="" api_version="4.0.1" timestamp="1422980182" server="19
2.168.0.1" srv_version="10.00.0.201412090" status="false">
    <error>
                <errno>11</errno>
                <message>Necessary parameters are not specified in your request:
 `message'</message>
    </error>
</drweb-es-api>
"message" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
 
 
Где я ложаю?


#17 Konstantin Yudin

Konstantin Yudin

    Смотрящий

  • Dr.Web Staff
  • 19 552 Сообщений:

Отправлено 03 Февраль 2015 - 20:06

Кавычки
With best regards, Konstantin Yudin
Doctor Web, Ltd.

#18 kosmonaft

kosmonaft

    Member

  • Posters
  • 113 Сообщений:

Отправлено 03 Февраль 2015 - 22:27

Конечно! Все просто шикарно! и даже на кириллице. Мне отчет о доставке собственно не треба, пытался добавить атрибут curl.exe - s (silent) но нужно чуть более детально почитать синтакс, хотя  это уже режим перфекциониста :) . Всем спасибо!



#19 kosmonaft

kosmonaft

    Member

  • Posters
  • 113 Сообщений:

Отправлено 04 Февраль 2015 - 11:01

Уважаемые кодеры, все опробовано непосредственно из коммандной строки и рабает. Однако, когда я все заворачиываю в *bat то message виден в прямом (URLEcode) виде. 

Ткните последний раз.



#20 rivaldo89

rivaldo89

    Newbie

  • Posters
  • 13 Сообщений:

Отправлено 20 Октябрь 2016 - 13:53

Здравствуйте, использую команду в батнике для посыла сообщений

CD C:\curl
curl -u login:pass -k "http://localhost:9080/api/3.0/stations/send-message.ds?id=xxxxxxxxxxx&message=Проверка"

сообщение доставляется, но вот слово "Проверка" приходит в виде ???????, т.е. русские символы не проходят. Английские всё хорошо, вместо русских - знаки вопроса. Пробовал устанавливать и кодировки в батнике chcp1251, 65001... , без результата. Пробовал на разных ПК.

Подскажите как можно выгладить это?

Спасибо




Читают тему: 0

0 пользователей, 0 гостей, 0 скрытых