Примеры: СМС-извещения о состоянии Советника - страница 3

 
vedroid:

to: komposter

Подскажите, могу ли я чем-то быть полезен, для улучшения логики утилиты?

Конечно!

В идеале было бы написание некоего API для работы с гугл-календарем. Т.е. просто отдельные функции (jar-файлы) для каждого действия: залогиниться, найти нужное событие, добавить событие, удалить событие, и т.д.

А если проще, то просто исправить логику текущей реализации:

  • не удалять реанимационное сообщение, если оно не отправилось;
  • и удалять все события, если есть событие "стоп".

С mode=1 я не эксперементировал, может и там что-то всплывет.

А так - идея замечательная.


Если будет API, можно будет реализовать все что угодно ;)

 

Дмитрий, хочу поинтересоваться - будете ли вы что-то доделывать, или можно начинать разбираться самому?

 
komposter:

Дмитрий, хочу поинтересоваться - будете ли вы что-то доделывать, или можно начинать разбираться самому?

В настоящее время вожусь с ММ. Поэтому в ближайщее время заниматься не буду.
 

Спасибо за 3-ю версию программы, но до ее использования дело не дошло...


Несколько часов назад получил СМС-ки о потере связи у обоих серверов (хотя связь была и есть), сейчас проверил календарь вручную - события с тех пор не обновлялись.

Запустил TerminalWatcher из командной строки и вот что увидел:


Вручную календарь тоже не редактируется, пишет:

Не удается сохранить мероприятие

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

Примечание. Возможно, это происходит из-за установленного приложения от сторонних производителей, которое взаимодействует с Календарем Google, например из-за приложения для синхронизации.


Обновления шли для 2-х событий (2 сервера) с периодичностью 5 минут, в том числе на выходные. И проработало это все чуть больше недели...


Вывод:

- надо делать обновление событий более редкими (раз в 30 минут, раз в час?) и разносить разные события по разным аккаунтам гугл;

- либо придумывать что-то новое.


Жаль, а решение было красивое...

 

SMS-извещение об обрыве связи делаю так:

- две VPS-ки;

- каждая VPS шлет с определенным временным шагом уведомление на другую VPS, что с ней все в порядке;

- Если через определенное время на одном из VPS не было уведомления от другой VPS, отправляется SMS с информацией о проблеме.

Вероятность того, что оба VPS (разные провайдеры) одновременно лишатся связи, близка к нулю.

 
mql4com:

SMS-извещение об обрыве связи делаю так

Это чисто для информации, или не жалко готовым кодом поделиться? ;)


mql4com:Вероятность того, что оба VPS (разные провайдеры) одновременно лишатся связи, близка к нулю.

У меня провайдер один (сервера физически стоят в одной стойке), но можно использовать дом. компьютер как 3-й сервер.

 

Кодом делиться не буду, т.к. вы сами сделаете за час не хуже. Расскажу один из вариантов реализации:

- открываете один безлимитный демо-счет;

- ставите обрезанный терминал (чтобы ресурсы экономить) на оба VPS, настраивая на открытый демо-счет;

- запускаете на терминалах по зацикленному скрипту, который делает соответствующие модификации (что угодно) нужного отложенника;

- на основании результатов отслежевания (не)совершенных модификаций тем же скриптом принимаете решение об отправке SMS.

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

Также есть более простой вариант обнаружить обрыв связи на VPS:

- с каждого VPS пингуете другой. Пинг не прошел - SMS.

Сами SMS отправляю запуском вот такого (не реклама) URL-файла: http://api.clickatell.com/http/sendmsg?user=xxxxx&password=xxxxx&api_id=xxxxx&to=448311234567
&text=Meet+me+at+home


Использовал такую отправку на телефоны разных стран по всему Миру, доставка в течение секунд.

Альтернативные способы отправки можно посмотреть здесь.

 
mql4com:

Кодом делиться не буду, т.к. вы сами сделаете за час не хуже. Расскажу один из вариантов реализации

Вариант взаимного контроля мне не подходит (сервера у одного провайдера), но мысли по реализации появились.

Спасибо за информацию.

 

Добрый день.

to: komposter

Хочу вынести на обсуждение вопрос по модификации:

"удалять все события, если есть событие "стоп""


Обработка события "стоп" необходима в случае жуткой рассинхронизации времени серверов гугла и дц - чтобы остановить поток/цепочку смс-ок от вашего сервера.

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

 
vedroid:

Обработка события "стоп" необходима в случае жуткой рассинхронизации времени серверов гугла и дц - чтобы остановить поток/цепочку смс-ок от вашего сервера.

Ну, я понимаю назначение этой "кнопки" именно в полной остановке.

Зачем мне получать СМС после того, как я ее "нажал"?


Оно, конечно, не критично (я же уже залез в гугл), но и удобного ничего нет.

Причина обращения: