Catalog PyPI
Back to packageRELEASE DETAILS

0.3.7

PyPI

acore-soap-app

Azerothcore World of Warcraft Soap Remote Access Python Library.

Published1 Jul 2024
Direct dependencies8
Transitive dependenciesNot calculated

README

Version 0.3.7 documentation

.. image:: https://readthedocs.org/projects/acore-soap-app/badge/?version=latest
    :target: https://acore-soap-app.readthedocs.io/en/latest/
    :alt: Documentation Status

.. image:: https://github.com/MacHu-GWU/acore_soap_app-project/actions/workflows/main.yml/badge.svg
    :target: https://github.com/MacHu-GWU/acore_soap_app-project/actions?query=workflow:CI

.. image:: https://codecov.io/gh/MacHu-GWU/acore_soap_app-project/branch/main/graph/badge.svg
    :target: https://codecov.io/gh/MacHu-GWU/acore_soap_app-project

.. image:: https://img.shields.io/pypi/v/acore-soap-app.svg
    :target: https://pypi.python.org/pypi/acore-soap-app

.. image:: https://img.shields.io/pypi/l/acore-soap-app.svg
    :target: https://pypi.python.org/pypi/acore-soap-app

.. image:: https://img.shields.io/pypi/pyversions/acore-soap-app.svg
    :target: https://pypi.python.org/pypi/acore-soap-app

.. image:: https://img.shields.io/badge/Release_History!--None.svg?style=social
    :target: https://github.com/MacHu-GWU/acore_soap_app-project/blob/main/release-history.rst

.. image:: https://img.shields.io/badge/STAR_Me_on_GitHub!--None.svg?style=social
    :target: https://github.com/MacHu-GWU/acore_soap_app-project

.. image:: https://img.shields.io/badge/Acore_Doc--None.svg?style=social&logo=readthedocs
    :target: https://acore-doc.readthedocs.io/en/latest/

------

.. image:: https://img.shields.io/badge/Link-Document-blue.svg
    :target: https://acore-soap-app.readthedocs.io/en/latest/

.. image:: https://img.shields.io/badge/Link-API-blue.svg
    :target: https://acore-soap-app.readthedocs.io/en/latest/py-modindex.html

.. image:: https://img.shields.io/badge/Link-Install-blue.svg
    :target: `install`_

.. image:: https://img.shields.io/badge/Link-GitHub-blue.svg
    :target: https://github.com/MacHu-GWU/acore_soap_app-project

.. image:: https://img.shields.io/badge/Link-Submit_Issue-blue.svg
    :target: https://github.com/MacHu-GWU/acore_soap_app-project/issues

.. image:: https://img.shields.io/badge/Link-Request_Feature-blue.svg
    :target: https://github.com/MacHu-GWU/acore_soap_app-project/issues

.. image:: https://img.shields.io/badge/Link-Download-blue.svg
    :target: https://pypi.org/pypi/acore-soap-app#files


Welcome to ``acore_soap_app`` Documentation
==============================================================================
.. image:: https://acore-soap-app.readthedocs.io/en/latest/_static/acore_soap_app-logo.png
    :target: https://acore-soap-app.readthedocs.io/en/latest/

`azerothcore 魔兽世界服务器 <https://www.azerothcore.org/>`_ 自带一个类似于 Terminal 的交互式 Console. GM 可以在里面输入命令来创建账号, 修改密码, 封禁账号等, 例如 ``.account create $account $password``. 你如果用 GM 账号登录游戏客户端, 你也可以在游戏内聊天框输入 GM 命令, 本质是一样的.

如果你希望像操作 Rest API 一样的远程执行命令, 以上两种方法就不太实用了. 一种你需要 SSH 到服务器上才能接触到 console, 一种你需要登录游戏客户端, 而客户端是没有我们需要的变成接口的. 而这种需求对于服务器维护者来说又是实实在在的. 例如服务器可能有一个官网, 让会员用户可以在网站上点击购买物品后, 游戏服务器就自动运行一条 GM 命令将物品发送到用户游戏角色的邮箱. 在这个例子里 GM 命令的发起端是 Web 服务器, 而运维的时候 GM 命令的发起端可以是任何东西, 例如 VM, Container, Lambda Function 等. 所以我们就需要一套机制能仅让有权限的人或机器远程执行 GM 命令. 这个需求对于长期的正式运营非常重要.

``acore_soap_app`` 项目就是一个针对这个需求的完整解决方案. 它包含两个组件 **Agent** 和 **SDK**.

- **Agent**: 提供了一个部署在游戏服务器 EC2 上的命令行程序, 作为外部 API 调用的桥梁. 使得外部有权限的开发者可以通过 AWS SSM Run Command 远程调用这个命令行程序, 从而实现远程执行 GM 命令.
- **SDK**: 提供了一套远程运行服务器命令的 SDK, 并提供了很多高级功能例如批量执行, 错误处理等功能. 使得开发者可以很方便的编写出基于 GM 命令的应用程序.

在 EC2 上安装完 Agent 之后, 你可以用下面的命令测试.

.. code-block:: bash

    /home/ubuntu/git_repos/acore_soap_app-project/.venv/bin/acsoap gm ".server info"


.. _install:

Install
------------------------------------------------------------------------------
``acore_soap_app`` is released on PyPI, so all you need is to:

.. code-block:: console

    $ pip install acore-soap-app

To upgrade to latest version:

.. code-block:: console

    $ pip install --upgrade acore-soap-app

There are two installation mode, Agent mode and SDK mode.

1. If you want to install ``acore_soap_app`` as an Agent on game server, you should install it in Agent mode. The dependency in Agent mode is deterministic (very restrict), so that it gives you a stable dependency layer for production.
2. If you want to import and use some APIs in ``acore_soap_app``, you should install it in SDK mode. The dependency in SDK mode is loss.

**App Mode**:

.. code-block:: bash

    $ pip install acore-soap-app

**SDK Mode**:

.. code-block:: bash

    $ pip install acore-soap-app --no-deps
    $ pip install -r /path/to/acore_soap_app-project/loss_req/requirements.txt

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Declared dependencies 8

Native requirements
8 direct targetsNot calculated transitive count
Package / targetRequirementRelationship
acore_constants
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<4.0,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
acore_constants<1.0.0,>=0.2.1runtime
acore_server_metadata
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<4.0,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
acore_server_metadata<2.0.0,>=0.7.1runtime
aws_ssm_run_command
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<4.0,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
aws_ssm_run_command<2.0.0,>=1.0.1runtime
boto_session_manager
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<4.0,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
boto_session_manager<2.0.0,>=1.7.2runtime
fire
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<4.0,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
fire<1.0.0,>=0.5.0runtime
requests
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<4.0,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
requests<3.0.0,>=2.20.0runtime
simple_aws_ec2
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<4.0,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
simple_aws_ec2<1.0.0,>=0.8.1runtime
urllib3
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<4.0,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
urllib3<2.0.0,>=1.26.0runtime

Distribution files

2 collected
acore_soap_app-0.3.7-py3-none-any.whl

bdist_wheel · 24.17 KB · Python py3

Source file
acore_soap_app-0.3.7.tar.gz

sdist · 19.14 KB · Python source

Source file

Repository

PENDING
machu-gwu/acore_soap_app-project

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 18:21 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:dc3a10ecb801e766a332cefa1b5b3c49534574c0cefc148ce59618a5a5dd46bb

Other collected versions

View all collected versions →