Deephaven麦克风输入插件
项目描述
deephaven-plugin-microphone
这是一个由 deephaven-plugin 模板生成的Deephaven Python插件。
具体来说,这个插件是一个双向小部件插件,可以在客户端和服务器上发送和接收消息。插件开箱即用,展示了基本的插件结构,可以作为构建更复杂插件的起点。
插件结构
在 src
目录中包含插件的Python和JavaScript代码。在 src
目录中,deephaven_plugin_microphone 目录包含Python代码,而 js
目录包含JavaScript代码。
Python文件具有以下结构:deephaven_plugin_microphone_object.py
定义了一个可以发送消息到客户端的简单Python类。deephaven_plugin_microphone_type.py
定义了插件的Python类型(用于注册)和简单的消息流。js_plugin.py
定义了用于设置插件JavaScript侧的Python类。register.py
将插件注册到Deephaven。
JavaScript文件具有以下结构:DeephavenPluginMicrophonePlugin.ts
将插件注册到Deephaven。DeephavenPluginMicrophoneView.tsx
定义了插件面板和消息处理。
此外,test
目录包含插件的Python测试。这展示了如何在使用测试时使用嵌入式Deephaven服务器。建议使用 tox
运行测试,并包含在项目中的 tox.ini
文件。
构建插件
要构建插件,您需要安装 npm
和 python
,以及Python的 build
包。强烈推荐安装 nvm
,并在项目中包含 .nvmrc
文件。可以使用以下命令创建python venv并安装推荐的包:
cd deephaven-plugin-microphone
python -m venv .venv
source .venv/bin/activate
pip install --upgrade -r requirements.txt
从 src/js
目录构建JavaScript插件
cd src/js
nvm install
npm install
npm run build
然后,从顶级目录构建Python插件
cd ../..
python -m build --wheel
构建的轮文件将位于dist
目录。
如果您修改了JavaScript代码,在重新构建轮文件之前,请先删除build
和dist
目录。
rm -rf build dist
安装插件
可以使用pip install <wheel file>
将插件安装到Deephaven实例中。在构建插件后,轮文件将存储在dist
目录中。具体如何操作取决于您如何运行Deephaven。如果使用上面创建的venv,可以使用以下命令创建插件和服务器:
pip install deephaven-server
pip install dist/deephaven_plugin_microphone-0.0.1.dev0-py3-none-any.whl
deephaven server
有关更多信息,请参阅插件文档。
使用插件
一旦Deephaven服务器运行,插件就可以使用了。
from deephaven_plugin_microphone import DeephavenPluginMicrophoneObject
obj = DeephavenPluginMicrophoneObject()
应该会出现一个面板。您现在可以使用该对象向客户端发送消息。
obj.send_message("Hello, world!")
面板还可以通过使用输入字段将消息发送回Python客户端。
分发插件
要分发插件,您可以上传轮文件到软件包仓库,例如PyPI。可以在setup.cfg
文件中更新插件的版本。
PyPI有一个单独的测试实例。首先在TestPyPI上创建账户。然后,从账户管理获取API令牌,将“范围”设置为“整个账户”。
要将文件上传到测试实例,请使用以下命令:
python -m pip install --upgrade twine
python -m twine upload --repository testpypi dist/*
现在,您可以从测试实例安装插件。需要额外的索引来查找依赖项。
pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.ac.cn/simple/ deephaven_plugin_microphone
对于生产版本,在PyPI上创建账户。然后,从账户管理获取API令牌,将“范围”设置为“整个账户”。
要将文件上传到生产实例,请使用以下命令。注意,默认情况下--repository
是生产实例,因此可以省略:
python -m pip install --upgrade twine
python -m twine upload dist/*
现在,您可以从生产实例安装插件。
pip install deephaven-plugin-microphone
有关更多信息,请参阅Python打包文档。
项目详情
deephaven_plugin_microphone-0.0.1.dev0-py3-none-any.whl的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 34a99ed80f13048e60bb6e72df316e59f5d150ba8df902899a5f759505c372dc |
|
MD5 | bcadf3b12392287907626e7da170925b |
|
BLAKE2b-256 | 302eacebf88a4e7664dd36419d20167adb5207cdc211b9b68e2eb858ac22daac |