yobot插件,Steam雷达,可自动播报玩家的Steam游戏状态和DOTA2图文战报

Overview

Steam_watcher

这是 prcbot/yobot 的自定义插件,可自动播报玩家的Steam游戏状态和DOTA2图文战报

都有些什么功能?

本插件可以在用户绑定后自动推送Steam游戏状态的更新和 Dota2 图文战报,以及提供一些手动查询功能

指令列表

atbot 表示需要@BOT

atsb 表示@某人

xxx yyy 等表示自定义参数

[] 方括号表示参数可以省略

Steam

负责Steam相关的功能

指令 说明
Steam帮助 查看帮助
订阅Steam 在本群开启Steam内容的推送
取消订阅Steam 在本群关闭Steam内容的推送
绑定Steam 好友代码 绑定Steam账号,一人一号
可直接覆盖绑定
解除绑定Steam 解除绑定Steam账号
xxx在干嘛 查询xxx的Steam游戏状态
查询xxx的天梯段位
查询xxx的常用英雄
查询xxx的英雄池

Whois

负责区分各个群的各位群友

指令0 说明
atbot 我是xxx 为自己增加一个别名xxx1
atbot 请叫我xxx 为自己增加一个别名xxx并设为默认2
atbot 我不是xxx 删除自己的别名xxx
atbot yyyxxx yyy增加一个别名xxx3
xxx是谁? 查询xxx的别名
xxx是不是yyy 比对xxxyyy的默认别名
查询群友 查询群内所有拥有别名的群友的默认别名

0 简单地说,涉及修改的指令需要 atbot,而查询的指令不需要

1, 2 一个人可以拥有多个别名,其中第一个是默认别名

3 yyy可以是atsb

使用方法

事前准备

Steam APIKEY

获取 Steam APIKEY

Steam APIKEY 的权限与其所属账号挂钩,要看到被观察者的游戏状态,需要满足以下两个条件之一

  • 被观察者的 Steam 隐私设置中游戏详情设置为 公开 ,且好友与聊天状态设置为在线
  • APIKEY 账号与被观察者为好友,被观察者的 Steam 隐私设置中游戏详情设置为 仅限好友 ,且好友与聊天状态设置为在线

条件不满足时,从 API 获取到的被观察者的游戏状态为空,即没在玩游戏

Linux

0. yobot 源码版

本插件基于 yobot 运行,所以首先需要 部署 yobot 源码版go-cqhttp,并保持两者同时运行

1. 下载本项目

# 在 ybplugins 目录下克隆本项目
cd yobot/src/client/ybplugins
git clone https://github.com/SonodaHanami/Steam_watcher

2. 安装依赖

cd Steam_watcher
pip3 install -r requirements.txt --user
# 国内可加上参数 -i https://pypi.tuna.tsinghua.edu.cn/simple

3. 导入

将 Steam_watcher 导入 yobot ,请参考 这个例子 修改 yobot.py

4. 填写配置文件

启动 yobot ,第一次启动 Steam_watcher 后会在 Steam_watcher 文件夹下自动生成 config.json,修改它

{
    "ADMIN": "123456789",   // 填写管理员的QQ号
    "BOT": "987654321",     // 填写BOT的QQ号
    "STEAM_APIKEY": ""      // 填写 Steam APIKEY
}

5. 应该可以了

重新启动 yobot ,开始使用

Windows

0. yobot 源码版

本插件基于 yobot 运行,所以首先需要 部署 yobot 源码版go-cqhttp,并保持两者同时运行

1. 下载本项目

推荐使用 Github Desktopyobot/src/client/ybplugins 目录下克隆本项目,后续更新可直接pull

下载源码(不推荐) 下载 https://github.com/SonodaHanami/Steam_watcher/archive/refs/heads/master.zip ,将整个 Steam_watcher 文件夹解压到 yobot/src/client/ybplugins 目录下

完成本步骤后,项目目录结构应该如下所示(仅列出本文档相关的关键文件/文件夹示意)

yobot
  └─src
      └─client
          ├─yobot.py
          └─ybplugins
              └─Steam_watcher
                  └─steam.py

2. 安装依赖

进入 Steam_watcher 文件夹,在空白处Shift+右键,点击“在此处打开 PowerShell 窗口”(或者命令提示符)

pip3 install -r requirements.txt --user
# 国内可加上参数 -i https://pypi.tuna.tsinghua.edu.cn/simple

3. 导入

将 Steam_watcher 导入 yobot ,请参考 这个例子 修改 yobot.py

4. 填写配置文件

启动 yobot ,第一次启动 Steam_watcher 后会在 Steam_watcher 文件夹下自动生成 config.json,修改它

{
    "ADMIN": "123456789",   // 填写管理员的QQ号
    "BOT": "987654321",     // 填写BOT的QQ号
    "STEAM_APIKEY": ""      // 填写 Steam APIKEY
}

5. 应该可以了

重新启动 yobot ,开始使用

开始使用

1. 订阅Steam

在群内发送“订阅Steam”,开启Steam内容的推送

2. 成为群友

在群内发送“atbot 我是xxx”,为自己添加一个别名

为什么需要这样做? 这样做的目的是隔离。因为bot可以加入多个群,同一个人也可以同时在不同的的群里,但是同一个人的推送不一定要发到所有群
bot仅向每个群里发送绑定了Steam的群友的推送。
举个例子:
有A和B两个群,两个群里都有枫哥、甲哥、翔哥和bot,枫哥、甲哥和翔哥各自都绑定了Steam
A群的群友有枫哥和甲哥
B群的群友有枫哥和翔哥
则bot会向A群发送枫哥和甲哥的推送,向B群发送枫哥和翔哥的推送
或者说,枫哥的推送会被bot发送到A和B两个群,甲哥的推送只会被bot发送到A群,翔哥的推送只会被bot发送到B群

3. 绑定Steam

在群内发送“绑定Steam 好友代码”,绑定自己的Steam号

4. 试一下

在群内发送“xxx是谁?”,bot将回复xxx的别名

在群内发送“查询群友”,bot将回复该群的群友列表

在群内发送“xxx在干嘛”,bot将回复xxx的Steam游戏状态

Owner
羽波
羽波
Technical Test - Python Programmer Grupo Nexxera

Technical Test Nexxera Group Teste Técnico - Grupo de Programadores Python Nexxera 📍 Prepare-se para usar a API Nossa API de transações de contas dig

Raul dos Santos Moraes 1 Mar 16, 2022
Basic query to access Traindex API

traindex-api-query Basic query to access Traindex API Please make sure to provide your Traindex API key to the line 8 in the script file. There are tw

Foretheta 1 Nov 11, 2021
Hassium Server Manager For Python

Hassium Server Manager This is meant to be a tool for mostly internal use. I decided that I would make it open souce in case anyone wanted to use it.

0 Nov 24, 2022
Minimal Python client for the Iris API, built on top of Authlib and httpx.

🕸️ Iris Python Client Minimal Python client for the Iris API, built on top of Authlib and httpx. Installation pip install dioptra-iris-client Usage f

Dioptra 1 Jan 28, 2022
This is Source Code of PdiskUploaderBot

PdiskUploaderBot This is the source code of PdiskUploaderBot. And the developer of this bot is AJTimePyro, His Telegram Channel & Group. You can use t

Abhijeet 8 Oct 20, 2022
pokemon-colorscripts compatible for mac

Pokemon colorscripts some scripts to print out images of pokemons to terminal. Inspired by DT's colorscripts compilation Description Prints out colore

43 Jan 06, 2023
SmsSender v3.0.0 - the script is designed to send free SMS to any number and with any text.

SmsSender v3.0.0 - скрипт предназначен для бесплатной отправки SMS на любой номер и с любым текстом. Возможны небольшие баги, в скором времени исправл

Андрей Сергеев 20 Dec 03, 2021
A basic implementation of the Battlesnake API in Python

Getting started with Battlesnake and Python This is a basic implementation of the Battlesnake API in Python. It's a great starting point for anyone wa

Gaurav Batra 2 Dec 08, 2021
Modified Version Of Media Search bot

Modified Version Of Media Search bot

1 Oct 09, 2021
Telegram Client and Bot that use Artificial Intelligence to auto-reply to scammers and waste their time

scamminator Blocking a scammer is not enough. It is time to fight back. Wouldn't be great if there was a tool that uses Artificial Intelligence to rep

Federico Galatolo 6 Nov 12, 2022
Pincer-ext-commands - A simple, lightweight package for pincer prefixed commands

pincer.ext.commands A reimagining of pincer's command system and bot system. Ins

Vincent 2 Jan 11, 2022
The program for obtaining a horoscope in Python using API from rapidapi.com site.

Python horoscope The program allows you to get a horoscope for your zodiac sign and immediately translate it into almost any language. Step 1 The firs

Architect 0 Dec 25, 2021
An all-purpose Discord bot written in Python featuring a diverse collection of practical utilities.

GlazeGlopBot Table of Contents About Setup Usage Commands Command Errors Cog Management Local Sound Files Cogs Mod QR RNG VC Weather Proposed Features

Edison Ye 0 May 12, 2022
Small cloudfoundry client implemented in python

Cloudfoundry python client The cf-python-client repo contains a Python client library for Cloud Foundry. Installing Supported versions warning: Starti

Cloud Foundry Community 50 Sep 08, 2022
🎥 Stream your favorite movie from the terminal!

Stream-Cli stream-cli is a Python scrapping CLI that combine scrapy and webtorrent in one command for streaming movies from your terminal. Installatio

R E D O N E 379 Dec 24, 2022
Predict the Site EUI, given the characteristics of the building and the weather data for the location of the building.

wids_datathon_2022 Description: Contains a data pipeline used to predict energy EUI Goals: Dataset exploration Automating the parameter fitting, gener

1 Mar 25, 2022
Telegram bot for stream music or video on telegram

KYURA MUSIC Telegram bot for stream music or video on telegram, powered by PyTgCalls and Pyrogram Help Need Help me to translate this repo, click the

0 Dec 08, 2022
Soundcloud Music Downloader

Soundcloud Music Downloader Description This script is able to download music from SoundCloud and set id3tag to the downloaded music. Compatible with

Ronan 2.6k Jan 01, 2023
Telegram bot using python

Telegram bot using python

Masha Kubyshina 1 Oct 11, 2021
Updater for PGCG (Paradox Game Converters Group) converters written in Python.

Updater Updater for PGCG (Paradox Game Converters Group) converters written in Python. Needs to be put inside an "Updater" directory in the root conve

Paradox Game Converters 2 Jan 10, 2022