宗族冲突的电报频道监视。

clashogram的Python项目详细描述


ClashogramBuild StatusBuild statusPypi status

宗族冲突的电报频道监视。

NOTE: Clash of Clans API data is always 10 minutes behind the game events. This is not a bug in this program.

clashogram监视你氏族的术士并发布以下消息 发送到电报频道的消息:

  1. 准备工作开始(有部族和玩家信息)
  2. 战争开始了
  3. 新攻击(含详细信息)
  4. 争夺

Requirements

要运行程序,您需要使用Python3.3或更高版本你也会 需要pip来安装python依赖项此外,使用 virtualenv制造 安装要容易得多,否则你必须安装所有的东西 全系统。在Linux上,您需要在 具有管理员帐户的windows

Installation

来自PYPI:

pip install clashogram

来自github:

git clone https://github.com/mehdisadeghi/clashogram.git
cd clashogram
install -r requirements.txt flit
flit install --symlink

Usage

要使用该程序,请执行以下操作:

  1. 在上打开宗族冲突开发者帐户 https://developer.clashofclans.com/
  2. 使用以下网站查找外部IP地址 this
  3. 转到你的coc开发者页面,为ip创建一个api令牌 你刚找到的号码
  4. 使用botfather创建一个电报机器人并复制其令牌。
  5. 创建一个新的电报组并添加刚才创建为 该组的管理员

现在您可以运行以下命令:

pip install clashogram
clashogram.py --coc-token <COC_API_TOKEN> --clan-tag <CLAN_TAG> --bot-token <TELEGRAM_BOT_TOKEN> --channel-name <TELEGRAM_CHANNEL_NAME> --forever

如果不想在频道中更新攻击,请将静音攻击添加到上述命令中。

为了使消息在不同的区域设置中,请执行以下操作 然后运行程序:

export LANGUAGE=<LANGUAGE_CODE>
e.g.
export LANGUAGE=fa

或者一步完成:

LANGUAGE=fa clashogram.py --coc-token <COC_API_TOKEN> --clan-tag <CLAN_TAG> --bot-token <TELEGRAM_BOT_TOKEN> --channel-name <TELEGRAM_CHANNEL_NAME>

Setting Language on Windows

在运行程序之前,请确保在windows上运行set LANGUAGE=<your_lang_code_here>

Run as a service

使用Clashogram最简单的方法是让它在后台运行 使用byobuGNU Screen。另一个解决办法是 安装系统D单元:

[Unit]
Description=Clashogram Daemon
After=network.target

[Service]
WorkingDirectory=/path/to/clashogram/
EnvironmentFile=/path/to/env/file
ExecStart=/path/to/python /path/to/clashogram.py
Restart=on-failure
User=someuser

[Install]
WantedBy=multi-user.target

在Internet上搜索有关在您的 操作系统。

Contribution (PRs welcome!)

电报通知与程序的其余部分隔离。你 可以用任何其他邮件来替换它 在别的地方。

分叉并克隆存储库并发送PR。确保测试通过 事先:

python -m unittest discover

或者使用py.test

pip install pytest
py.test tests.py

I18N

要添加或更新新的语言目录,请执行以下操作:

pip install babel # Install the babel i18n tool first.
pybable init -i clashogram/locales/messages.pot -d clashogram/locales -l <LANGUAGE_CODE>
pybable update -i clashogram/locales/messages.pot -d clashogram/locales -l <LANGUAGE_CODE>

例如:

pybable init -i clashogram/locales/messages.pot -d clashogram/locales -l fa
pybable update -i clashogram/locales/messages.pot -d clashogram/locales -l fa

如果添加了新消息,请提取它们并重新编译:

pybabel extract clashogram/ -o clashogram/locales/messages.pot --project Clashogram --version 0.6.0
pybabel update -i clashogram/locales/messages.pot -d clashogram/locales
pybabel compile -d clashogram/locales

有关国际化的更多信息,请参见 Babel

Credits

感谢Ali Ayatollahi和来自伊朗部落(Tag_yvl0c8uy)的其他成员的初步想法和测试。

License

麻省理工学院

Russian Translations

多亏了光照派的帖木儿,你可以用俄语阅读这份文件。谢谢蒂穆尔! this document in Russian

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何从旧的ArrayList<ArrayList<Integer>>创建新的ArrayList而不更改旧的?   java JBoss 7 |从随机线程写入jndi   java如何在数据库中有空值的JPA实体中迭代联接列   java Android应用程序在setContentView上崩溃   java如何在表单中预先填充文本字段,其中包含数据库中的信息。jsp?   来自R.raw的java Android文件阅读器。文件   如何将多个WAR(或Java Web应用程序,特别是使用Spring MVC)嵌入到一个承载另一个WAR的网页中?   java动态更新Jlist   gwt分页大结果集Java的最佳方式是什么   JavaCDI:为什么我的瞬态字段被序列化?   使用JAXB更新java XML模板文件   java getGraphics()返回空值   扩展javax的java类。ws。rs.core。无法将应用程序强制转换为Servlet   java方法可能无法在异常时关闭流   公共类的表达式的java非法开始   java年轻一代GC在EXT根扫描上花费了太多时间   使用CXF和具有未发布元数据的WSDL的java