Author

Topic: жаббер бот, или "мы любим btcex.com" (Read 3848 times)

sr. member
Activity: 294
Merit: 250
я не ламер, я java-прогаммер :-)
Педлагаю сократить кириллические аббрев. валют дела до трех знаков:
дол, руб, евр, иен, яд, вмз, вмр, все, мтг, и т.д.

Сделал немного более общий случай.

Теперь список команд выглядит так:

Quote
Список доступных команд:
HELP это сообщение
USD курс долларов США
RUB курс российских рублей
EUR курс евро
JPY курс японской иены
YAD курс Яндекс.Денег
WMZ курс WebMoney USD
WMR курс WebMoney рублей
ALL курс всех вышеперечисленных валют
MTGOX курс с mtgox.com
!USD список ордеров на покупку-продажу США
!RUB список ордеров на покупку-продажу российских рублей
!EUR список ордеров на покупку-продажу евро
!JPY список ордеров на покупку-продажу японской иены
!YAD список ордеров на покупку-продажу Яндекс.Денег
!WMZ список ордеров на покупку-продажу WebMoney USD
!WMR список ордеров на покупку-продажу WebMoney рублей
ALIAS список алиасов (псевдонимов) для команд
EXPECT <текст> <время в целых часах> (пример - expect курс будет buy 60.6 4). EXPECT без параметров выведет текущие прогнозы
Если вам этого мало - пишите на https://www.bitcoin.org/smf/index.php?topic=4256.0

Cоответственно, команда ALIAS выдаст обещанный список псевдонимов:

Quote
ПОМОЩЬ HELP
БАКСЫ USD
ДОЛЛАРЫ USD
РУБЛИ RUB
ЕВРО EUR
ИЕНЫ JPY
ЯД YAD
ВМЗ WMZ
ВМР WMR
ВСЕ ALL
МТГОКС MTGOX
!БАКСЫ !USD
!ДОЛЛАРЫ !USD
!РУБЛИ !RUB
!ЕВРО !EUR
!ИЕНЫ !JPY
!ЯД !YAD
!ВМЗ !WMZ
!ВМР !WMR
ПСЕВДОНИМЫ ALIAS
Можно вводить первые несколько символов, будет выбрано первое подходящее соответствие. Большие, маленькие буквы - все равно.

И это правда - можно вводить и
помо
по
До
бА
!ба

ну и так далее. То есть в ряде случаев даже однобуквенные сокращения получаются.
sr. member
Activity: 294
Merit: 250
я не ламер, я java-прогаммер :-)
По спискам - этого  более чем достаточно.
Заранее спасибо за работу

Отлично, тогда поставлю себе в ближайшие планы :-)
newbie
Activity: 13
Merit: 0
По спискам - этого  более чем достаточно.
Заранее спасибо за работу
sr. member
Activity: 294
Merit: 250
я не ламер, я java-прогаммер :-)
2Manjago,
Прошу прощенья, отвлекался.
Педлагаю сократить кириллические аббрев. валют дела до трех знаков:
дол, руб, евр, иен, яд, вмз, вмр, все, мтг, и т.д.

Хорошо, будет время - сделаем!

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

Да вроде бы проблем особых я не вижу. В первый раз бот отдает все и запоминает, что отдал пользователю с данным ником.
В следующие разы бот отдает только то, что добавилось.
Ну и отдельной командой можно затребовать все.
И отдельной командой можно затребовать сделки в диапазоне дат.

Как-то вот так.
newbie
Activity: 13
Merit: 0
2Manjago,
Прошу прощенья, отвлекался.
Педлагаю сократить кириллические аббрев. валют дела до трех знаков:
дол, руб, евр, иен, яд, вмз, вмр, все, мтг, и т.д.

Прошу "евр" не путать с "евреями" ))

Далее из закрытого топика, по поводу списка биржевых операций - я за обоими рогами, но хотелось бы, чтобы это была рассылка по инициативе бота т.е. подписка.  Иначе мне непонятно как при повторных запросах к боту избежать повторов в списке операций и в общем за какой период бот будет отдавать список?   
 
sr. member
Activity: 294
Merit: 250
я не ламер, я java-прогаммер :-)
2Manjago
Спасибо, очень удобно. А можно  чтобы команды и в кириллице работали тоже, например !WMZ и !ВМЗ и тд. Это не фанатизма ради, а чтобы раскладку не переключать каждый раз  т.к. в соседних табах в большинстве случаев русский чат и соотвессно все окно мессенжера удобнее держать в кириллице постоянно.

Угу, пометил в блокнотик! Сделаю, но сначала предлагаю утрясти русскоязычные алиасы. Так хорошо?

Quote
HELP помощь
USD баксы
RUB рубли
EUR евро
JPY иены
YAD яд
WMZ вмз
WMR вмр
ALL все
MTGOX мтгокс
!USD !баксы
!RUB !рубли
!EUR !евро
!JPY !иены
!YAD !яд
!WMZ !вмз
!WMR !вмр
EXPECT !прогноз
newbie
Activity: 13
Merit: 0
2Manjago
Спасибо, очень удобно. А можно  чтобы команды и в кириллице работали тоже, например !WMZ и !ВМЗ и тд. Это не фанатизма ради, а чтобы раскладку не переключать каждый раз  т.к. в соседних табах в большинстве случаев русский чат и соотвессно все окно мессенжера удобнее держать в кириллице постоянно.
sr. member
Activity: 294
Merit: 250
я не ламер, я java-прогаммер :-)
Блеск! Cheesy А так и задумано, чтоб все буквы были заглавными? Undecided

Пофиксил сейчас, теперь регистр букв сохраняется. Заодно задал максимальную длину для сообщения - 300 символов.
sr. member
Activity: 294
Merit: 250
я не ламер, я java-прогаммер :-)
Блеск! Cheesy А так и задумано, чтоб все буквы были заглавными? Undecided

Ага, заглавность букофф пофикшу на следующих выходных :-)

LZ
legendary
Activity: 1722
Merit: 1072
P2P Cryptocurrency
Блеск! Cheesy А так и задумано, чтоб все буквы были заглавными? Undecided
sr. member
Activity: 294
Merit: 250
я не ламер, я java-прогаммер :-)
По результатам обсуждения в конференции [email protected] сделана "хотелка" для lzsaver-а - команда expect

Quote
23.03.2011 14:58:36 [[email protected]/Meebo] предлагаю сделать для бота секретную команду
23.03.2011 14:58:55 [[email protected]/Meebo] например.. LZ
23.03.2011 14:59:08 [[email protected]/Meebo] и чтоб она возвращала мое "мнение" по поводу курса
23.03.2011 14:59:11 [[email protected]/Meebo] например:
23.03.2011 14:59:30 [Manjago] Например?
23.03.2011 14:59:35 [[email protected]/Meebo] или
23.03.2011 14:59:49 [[email protected]/Meebo] DOWN 0.80
23.03.2011 15:00:11 [[email protected]/Meebo] и чтоб эта инфа сбрасывалась в течении 4-8 часов, если не поступила новая инфа
23.03.2011 15:00:14 [[email protected]/Meebo] Smiley
23.03.2011 15:01:17 [[email protected]/Meebo] вопрос только как мне вбивать инфу.. может просто отправлять боту?
23.03.2011 15:01:21 [[email protected]/Meebo] Smiley
23.03.2011 15:01:30 [Manjago] Ага, разумеется - только так, отправлять боту.
23.03.2011 15:01:40 [Manjago] <Ключевое слово> текст
23.03.2011 15:01:46 [[email protected]/Meebo] точно
23.03.2011 15:01:59 [Zoth] Можно вообще сделать команду типа expect [what]
23.03.2011 15:02:15 [Manjago] Причем не в привате конференции, а в "настоящем" привате (в конференции он не увидит настоящий Jid)
23.03.2011 15:02:50 [Zoth] По команде expect 0.85 4, например, устанавливать мнение текущего пользователя на 4 часа.
23.03.2011 15:03:05 [Zoth] Просто по команде expect выводить табличку с мненийми.
23.03.2011 15:03:13 [[email protected]/Meebo] мне нравится
23.03.2011 15:03:21 [Manjago] Ага, мне тоже! Дома запилю!

Соответственно, команда существует в двух вариантах:

1) expect <какой-нибудь текст> <целое число - это часы>

При этом некий текст (на самом деле - это мнение) на некоторое число часов запоминается.
Если в конце текста не будет целого числа, то считаем, что это мнение действительно один час.

2) expect
без параметров. При этом будут показаны актуальные мнения в формате
<автор> <время, до которого действует> <мнение>

Первый вариант этой команды можно подать только в "настоящем" привате (то есть не из конференции)
Второй вариант этой команды можно подать и из "настоящего" привата, и из привата конференции.

У каждого пользователя может быть только одно мнение. Соответственно, команда
expect 0

как легко догадаться, удалит ваше мнение
sr. member
Activity: 294
Merit: 250
я не ламер, я java-прогаммер :-)
Какой у него сейчас адрес [email protected], или какой то другой.
Что то попробовал подключиться, не сработало.

Ага, правильно. Работает, только что он мне выдал

Quote
*** 2011-03-16
[20:33:33] *** botcoin - Доступен
[20:33:39] all
[20:33:40] WebMoney RUB: bid=27.0000, ask=27.8000
Japanese yen: bid=None, ask=None
Russian ruble: bid=27.0011, ask=28.5000
Yandex Money: bid=27.5000, ask=32.4000
WebMoney USD: bid=0.6220, ask=0.9300
Euro: bid=0.7000, ask=0.7200
US dollar: bid=0.9100, ask=0.9200

Еще к нему же можно постучаться из привата конференции [email protected]
sr. member
Activity: 280
Merit: 250
Какой у него сейчас адрес [email protected], или какой то другой.
Что то попробовал подключиться, не сработало.
sr. member
Activity: 294
Merit: 250
я не ламер, я java-прогаммер :-)
Бот немного обновился (может еще показывать ордеры, может показать все курсы разом).

Quote
Список доступных команд:
HELP это сообщение
USD курс долларов США
RUB курс российских рублей
EUR курс евро
JPY курс японской иены
YAD курс Яндекс.Денег
WMZ курс WebMoney USD
WMR курс WebMoney рублей
ALL курс всех вышеперечисленных валют
!USD список ордеров на покупку-продажу США
!RUB список ордеров на покупку-продажу российских рублей
!EUR список ордеров на покупку-продажу евро
!JPY список ордеров на покупку-продажу японской иены
!YAD список ордеров на покупку-продажу Яндекс.Денег
!WMZ список ордеров на покупку-продажу WebMoney USD
!WMR список ордеров на покупку-продажу WebMoney рублей

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

Updated: по просьбам трудящихся - добавлена команда
Quote
MTGOX курс с mtgox.com
sr. member
Activity: 294
Merit: 250
я не ламер, я java-прогаммер :-)
В конференцию [email protected] боту позволил входить без капчи.

На сегодняшний день пока не наблюдал его там, однако.

Не стреляйте в пианиста программиста - он гонит код, как умеет  Smiley

Сейчас вроде есть - room nick tihobot botcoin. Ведет себя прилично - в чат ничего не пишет, все общение - в привате!
sr. member
Activity: 868
Merit: 251
В конференцию [email protected] боту позволил входить без капчи.

На сегодняшний день пока не наблюдал его там, однако.
LZ
legendary
Activity: 1722
Merit: 1072
P2P Cryptocurrency
Мне тоже. Smiley
sr. member
Activity: 868
Merit: 251
Нравится.
sr. member
Activity: 294
Merit: 250
я не ламер, я java-прогаммер :-)
Просто текущее имячко довольно-таки сложно диктовать по телефону. Укоротить бы его. Smiley

[email protected] - хорошее имячко? Я пока на него бота не "перевесил" - сначала давай с именем разберемся :-)
LZ
legendary
Activity: 1722
Merit: 1072
P2P Cryptocurrency
Просто текущее имячко довольно-таки сложно диктовать по телефону. Укоротить бы его. Smiley
legendary
Activity: 1386
Merit: 1000
Мне пока в голову пришло две идеи:

3) Если встретишь в чате слова "деньги", "валюта", "доллар", "рубль", то выводи рекламу биткоинов с отсылкой на сайт bitocoin.org
sr. member
Activity: 294
Merit: 250
я не ламер, я java-прогаммер :-)
Мне нравится. А можно его на jabber.ru посадить и имя запоминающееся придумать? Было бы здорово!

Имя можно придумать, но мне было бы удобнее (по моим причинам), чтобы он жил на gmail.com.

Но ведь все равно, где он живет? Приконнектившись через jabber.ru - можно добавить в ростер контакт ктото@gmail.com - я это неоднократно проделывал :-)

Гораздо интереснее, что бы ему можно еще делать.
Мне пока в голову пришло две идеи:
1) сказать боту "следи за ордером номер такой-то, и когда он исчезнет - пошли мне сообщение
2) покажи мне список ордеров, но исключи суммы меньше N биткойнов (потому что меня, если честно, суммы в 0.05 биткойна на бирже задалбывают - они как бы курс формируют, но на самом деле - нет, потому что их объем смехотворен)
LZ
legendary
Activity: 1722
Merit: 1072
P2P Cryptocurrency
Мне нравится. А можно его на jabber.ru посадить и имя запоминающееся придумать? Было бы здорово!
sr. member
Activity: 294
Merit: 250
я не ламер, я java-прогаммер :-)
У меня в хозяйстве завалялся не слишком загруженный жаббер-бот. Раз уж у нас тут такое интересное бета-тестирование идет - я, пожалуй, могу приспособить его для чего-нибудь такого околобиткойнового.

На форуме как-то пробегали хотелки насчет "долго грузиЦЦа сайт" и "сделайте нам красивое табличко".
Ага, в гугльталке (или в любимом жаббер-клиенте типа миранды или пси) добавляете персонажа returning.officer.828(собачко)gmail.com
Насколько я помню, gmail.com дружит с jabber.ru, так что пользователи жаббер.ру этого персонажа увидят. Посылаете боту сообщение - дальше он намекнет, какие именно команды он будет понимать.

Кто экспериментировать не хочет - может послать ему слово YAD  Smiley

Пока что бот возвращает откровенно-небрежно-демонстрационное сообщение - bid и ask валюты, полученный через замечательное АПИ любимой биржи.

А у меня - вопрос к уважаемым участникам сообщества: в каком-то виде жаббер-бот кому-то нужен? Есть ли какие-нибудь идеи, чему бы его стоило научить? Например, можно его научить следить за ордером номер ххх, и если он исчезнет - то посылать по жабберу сообщение (вроде бы на форуме пробегала какая-то похожая хотелка).

Ограничения понятно какие - бот асилит то, что умеет API у btcex.com.
Jump to: