Editing Neutron

From JaWiki (Jabber/XMPP wiki)
Jump to: navigation, search

Warning: The database has been locked for maintenance, so you will not be able to save your edits right now. You may wish to copy and paste your text into a text file and save it for later.

The administrator who locked it offered this explanation: MediaWiki upgrading

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
 
{{Bot
 
{{Bot
|             name = Neutron <!-- название -->
+
|           name=Neutron
|            logo = <!-- логотип -->
+
|            url=http://ejabberd.jabber.ru/neutron
<!--      Общая информация          -->
+
|       language=[[Python]]
|              url = [http://ejabberd.jabber.ru/neutron ejabberd.jabber.ru/neutron] <!-- адрес -->
+
|         library=[[xmpppy]]
|         language = {{Lang|b|Python}} <!-- язык -->
+
|         license=[[GPL]]
|         library = {{Lib|xmpppy}} <!-- jabber-библиотека -->
+
|           i18n=нет
|         license = {{GPL}} <!-- лицензия -->
+
|           disco=нет
|        developer = [http://mikemintz.com/ Майк&nbsp;Минтц (Mike&nbsp;Mintz)] <!-- разработчик -->
+
|         plugins=да
<!--        Характеристики  -->
+
|           adhoc=нет
|             i18n = нет <!-- мультиязычность -->
+
}}[[Category:Python]][[Category:Python_Bot]][[Category:xmpppy]][[Category:GPL]]
|           disco = нет <!-- информация в диско -->
+
Хороший бот на Python, умеющий опросы, rss-фиды, и много интересных вещей. Бот очень удобен для быстрого создания других ботов с нужной функциональностью. Можно достаточно легко расширить возможности плагинами.  
|           adhoc = нет <!-- Ad-Hoc команды -->
+
|         plugins = да <!-- расширяется ли он плагинами -->
+
}}
+
'''Neutron''' - бот на [[Python]], умеющий проводить опросы, показывать [[RSS]]-фиды, а также ряд других действий. Удобен для быстрого создания других ботов с нужной функциональностью. Функциональность может быть легко расширена плагинами.  
+
  
 
== Разделение прав ==
 
== Разделение прав ==
В управлении ботом принят следующий метод разделения прав. Каждая команда имеет свой минимальный уровень доступа для запуска команды. Это число от 0 до 100. [[JID]] владельца получает уровень доступа 100, неизвестные JID-ы получают уровень доступа 0. Владелец может выставить любой уровень доступа для JID-а с помощью команды <tt>!set_access</tt>, он запоминается и будет сохраняться после перезапуска бота.
+
В боте принят следующий метод разделения прав. Каждая команда имеет свой минимальный уровень доступа для запуска команды. Это число от 0 до 100. JID владельца получает уровень доступа 100, неизвестные JID-ы получают уровень доступа 0. Владелец может выставить любой уровень доступа для JID-а с помощью команды !set_access, он запоминтся и будет сохранятся через перезапуски.
 +
 
 +
Минимальный уровень доступа команд меняется через редактирование кода плагинов
 +
 
 +
Команда !commands использует установленный уровень доступа для JID-а и не показывает команды, которые пользователь не сможет запустить.  
  
Минимальный уровень доступа команд меняется через редактирование кода плагинов.
 
  
Команда <tt>!commands</tt> использует установленный уровень доступа для JID-а и не показывает команды, которые пользователь не сможет запустить.
 
  
 
== Плагины ==
 
== Плагины ==
Располaгаются в каталоге <tt>plugins</tt>. Каждый файл это отдельный плагин. Чтобы запретить подгрузку какого-нибудь плагина, нужно изменить в нём первую строчку, она является индикатором, что его можно подгружать.
+
Распологаются в каталоге plugins. Каждый файл, это отдельный плагин. Чтобы запретить подгрузку какого-нибудь плагина, нужно изменить в нем первую строчку, она является индикатором, что его можно подгружать.  
  
 
=== Официальные ===
 
=== Официальные ===
Плагины <tt>access_plugin.py</tt>, <tt>admin.py</tt>, <tt>help_plugin.py</tt> обеспечивают минимальную функциональность (права, администрирование, справка). Без плагина <tt>presence_plugin.py</tt> не будет работать подписка. Остальные плагины можно удалять по необходимости.
+
Плагины access_plugin.py, admin.py, help_plugin.py обеспечивают минимальную функциональность (права, администрирование, справка). Без плагина presence_plugin.py не будет работать подписка. Остальные плагины можно удалять по необходимости.  
  
{| class="standard"
+
{| class="standard" border="1" cellspacing="0"
 
! Имя файла || Использует<br/>Интернет || Описание  
 
! Имя файла || Использует<br/>Интернет || Описание  
 
|-
 
|-
Line 38: Line 36:
 
| babel_plugin.py || да || Переводчик между языками. Использует внешние ресурсы для перевода.
 
| babel_plugin.py || да || Переводчик между языками. Использует внешние ресурсы для перевода.
 
|-
 
|-
| chat_plugin.py || нет || Простой чат с пользователем, если он обращается к боту, но не передает команду. По умолчанию выключен.
+
| chat_plugin.py || нет || Простой чат с пользователем, если он обращается к боту но не передает команду. По-умолчанию выключен.
 
|-  
 
|-  
 
| dict_plugin.py || да || Дает определение слову используя www.dict.org
 
| dict_plugin.py || да || Дает определение слову используя www.dict.org
 
|-  
 
|-  
| dns_plugin.py || да || Запрос в DNS
+
| dns_plugin.py || да || Запрос в [[ru:DNS|DNS]]
 
|-
 
|-
| domain_plugin.py || да || Запрос в базу данных WHOIS
+
| domain_plugin.py || да || Запрос в базу данных [[ru:Whois|Whois]]
 
|-
 
|-
 
| eliza_plugin.py || нет || Чат-бот Элиза  
 
| eliza_plugin.py || нет || Чат-бот Элиза  
Line 52: Line 50:
 
| freshmeat_plugin.py || да || Информация о программе на freshmeat.net
 
| freshmeat_plugin.py || да || Информация о программе на freshmeat.net
 
|-
 
|-
| google_plugin.py  || да || Поиск слова, [[XEP]]-а и проверка орфографии через google.com
+
| google_plugin.py  || да || Поиск слова, JEP-а и проверка орфографии через google.com
 
|-
 
|-
 
| help_plugin.py || нет || Справка по командам
 
| help_plugin.py || нет || Справка по командам
Line 68: Line 66:
 
| rss_plugin.py || да || Работа с RSS-фидами
 
| rss_plugin.py || да || Работа с RSS-фидами
 
|-
 
|-
| sg_plugin.py || нет || Собирает статистику с Jabber-серверов по протоколу определенному в [http://www.xmpp.org/extensions/xep-0039.html XEP-0039]
+
| sg_plugin.py || нет || Собирает статистику с jabber-серверов по протоколу определенному в [http://www.xmpp.org/extensions/xep-0039.html XEP-0039]
 
|-
 
|-
 
| stock_plugin.py || да || Информация об акциях с finance.yahoo.com
 
| stock_plugin.py || да || Информация об акциях с finance.yahoo.com
Line 74: Line 72:
 
| temperature_plugin.py || нет || Конвертирует температуру между шкалой Цельсия и шкалой Фаренгейта
 
| temperature_plugin.py || нет || Конвертирует температуру между шкалой Цельсия и шкалой Фаренгейта
 
|-
 
|-
| time_plugin.py || нет || Возвращает текущее время на компьютере, на котором запущен бот
+
| time_plugin.py || нет || Возвращает текущее время на компьютере на котором запущен бот
 
|-
 
|-
| userinfo_plugin.py || нет || Возвращает [[vCard]] пользователя и ответы на различные [[iq|iq-запросы]]
+
| userinfo_plugin.py || нет || Возвращает vcard пользователя и ответы на различные IQ-запросы
 
|-
 
|-
 
| vote_plugin.py || нет || Голосование
 
| vote_plugin.py || нет || Голосование
Line 86: Line 84:
 
Каждая команда зависит от своего плагина, удаление плагина соответственно удаляет команду. Чтобы удалить избранную команду, не удаляя плагин целиком, откройте файл с плагином, найдите в конце строчку, которая её регистрирует в боте и закомментируйте её или повысьте минимальный уровень доступа до 100.  
 
Каждая команда зависит от своего плагина, удаление плагина соответственно удаляет команду. Чтобы удалить избранную команду, не удаляя плагин целиком, откройте файл с плагином, найдите в конце строчку, которая её регистрирует в боте и закомментируйте её или повысьте минимальный уровень доступа до 100.  
  
{| class="standard"
+
{| class="standard" border="1" cellspacing="0"
 
! Команда || Уровень доступа || Плагин || Описание  
 
! Команда || Уровень доступа || Плагин || Описание  
 
|-
 
|-
Line 105: Line 103:
 
| !say <message> || 100 || admin_plugin.py.py || Послать сообщение в текущий чат/конференцию
 
| !say <message> || 100 || admin_plugin.py.py || Послать сообщение в текущий чат/конференцию
 
|-
 
|-
| !restart || 100 || admin_plugin.py.py || Перезапуск
+
| !restart || 100 || admin_plugin.py.py || Перезапуск
 
|-
 
|-
| !exit || 100 || admin_plugin.py.py || Выход
+
| !exit || 100 || admin_plugin.py.py || Выход
 
|-
 
|-
| !babel <from> <to> <phrase> || 0 || babel_plugin.py.py || Перевод используя Altavista BabelFish
+
| !babel <from> <to> <phrase> || 0 || babel_plugin.py.py || Перевод используя Altavist BabelFish
 
|-
 
|-
 
| !translate <from> <to> <phrase> || 0 || babel_plugin.py.py || Перевод используя Translate.ru
 
| !translate <from> <to> <phrase> || 0 || babel_plugin.py.py || Перевод используя Translate.ru
Line 119: Line 117:
 
| !define <word> || 0 || dict_plugin.py || Дает определение слову используя www.dict.org
 
| !define <word> || 0 || dict_plugin.py || Дает определение слову используя www.dict.org
 
|-
 
|-
| !dns <host/IP> || 0 || dns_plugin.py || Отправляет запрос на DNS-сервер и возвращает результат.
+
| !dns <host/IP> || 0 || dns_plugin.py || Отправляет запрос на DNS сервер и возвращает результат.
 
|-  
 
|-  
| !domain <domain> || 0 || domain_plugin.py || Отправляет запрос в базу данных WHOIS и возвращает результат.
+
| !domain <domain> || 0 || domain_plugin.py || Отправляет запрос в базу данных Whois и возвращает результат.
 
|-
 
|-
 
| !element <code> || 0 || fact_plugin.py || Дает расшифровку коду химического элемента
 
| !element <code> || 0 || fact_plugin.py || Дает расшифровку коду химического элемента
Line 127: Line 125:
 
| !tld <location/TLD> || 0 || fact_plugin.py ||Возвращает код страны или страну соответствующую коду
 
| !tld <location/TLD> || 0 || fact_plugin.py ||Возвращает код страны или страну соответствующую коду
 
|}
 
|}
{{todo|список сделан не до конца}}
+
 
 
== Зависимости ==
 
== Зависимости ==
* Интерпретатор языка [[Python]]
+
* [[Python]]
* Библиотека [[xmpppy]]
+
* [[xmpppy]]
  
 
== Ответвления ==
 
== Ответвления ==
 
На основе этого бота было сделано:  
 
На основе этого бота было сделано:  
 
* [[FtpSpider]] &mdash; бот, который сообщает об изменениях на FTP сервере.
 
* [[FtpSpider]] &mdash; бот, который сообщает об изменениях на FTP сервере.

Please note that all contributions to JaWiki (Jabber/XMPP wiki) may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see JaWiki (Jabber/XMPP wiki):Copyrights for details). Do not submit copyrighted work without permission!

Cancel | Editing help (opens in new window)