A command line tool used to automate the Bobcat miner. This project also offers a robust python SDK's for interacting with the Bobcat miner.
Project description
bobcat miner python
A command line tool used to automate the Bobcat miner. This project also offers a robust python SDK's for interacting with the Bobcat miner.
Install
# install command line tools
$ pipx install bobcat-miner
# install SDK
$ pip3 install bobcat-miner
Please see this guide for more information about installing stand alone command line tools with pipx.
Bobcat Autopilot Usage
The bobcat autopilot
command will automatically diagnose and repair the Bobcat!
Follow these instructions to find your Bobcats's ip address.
The bobcat
command line tool accepts both command line options and environment variables. Please see the bobcat --help
for more information.
Bobcat Dry Run
Diagnostics checks will run and all actions will be skipped during a Bobcat dry run.
$ bobcat -i 192.168.0.10 -l DEBUG --dry-run autopilot
🚧 Bobcat Autopilot Dry Run Enabled. Actions such as reboot, reset, resync, and fastsync will be skipped. Wait times will only last 1 second.
Discord Monitoring
Send bobcat
logs to a Discord channel using a webhook url
$ export BOBCAT_LOG_LEVEL=DEBUG
$ export BOBCAT_IP_ADDRESS=192.168.0.10
$ export BOBCAT_DISCORD_WEBHOOK_URL=https://discord.com/api/webhooks/xxx/xxx
$ bobcat autopilot
🚀 The Bobcat Autopilot is starting
and watch your logs stream your Discord channel!
Log File
Send logs to a file
$ bobcat --ip-address 192.168.0.10 --log-file bobcat-autopilot.log autopilot
🚀 The Bobcat Autopilot is starting
Bobcat Docker Container
Run the bobcat
command line tool as a docker container.
$ docker run --rm -it aidanmelen/bobcat -i 192.168.0.10 status
{
"status": "Synced",
"gap": "-2",
"miner_height": "1185959",
"blockchain_height": "1185957",
"epoch": "31260"
}
Bobcat Autopilot SDK Usage
import bobcat_miner
bobcat = bobcat_miner.Bobcat("192.168.1.100")
autopilot = bobcat_miner.Autopilot(bobcat)
# Automatically diagnose and repair the Bobcat
autopilot.run()
# diagnostics
autopilot.is_relayed()
autopilot.is_temp_dangerous()
autopilot.is_network_speed_slow()
autopilot.is_syncing()
autopilot.has_errors()
# actions
autopilot.ping() # Ping the Bobcat until it connects or attempts are maxed out
autopilot.reboot() # Reboot the Bobcat and wait for connection
autopilot.reset() # Reset the Bobcat and wait for connection or exceeds max attempts
autopilot.resync() # Fastsync the Bobcat and wait for connection
autopilot.fastsync() # Fastsync the Bobcat until the gap is less than 400 or exceeds max attempts
autopilot.is_syncing() # Poll the Bobcat's gap to see if it is syncing over time
Bobcat SDK Usage
import bobcat_miner
bobcat = bobcat_miner.Bobcat("192.168.1.100")
# refresh
bobcat.refresh_status()
bobcat.refresh_miner()
bobcat.refresh_speed()
bobcat.refresh_temp()
bobcat.refresh_dig()
bobcat.refresh()
# properties
bobcat.status
bobcat.gap
bobcat.miner_height
bobcat.blockchain_height
bobcat.epoch
bobcat.tip
bobcat.ota_version
bobcat.region
bobcat.frequency_plan
bobcat.animal
bobcat.name
bobcat.pubkey
bobcat.state
bobcat.miner_status
bobcat.names
bobcat.image
bobcat.created
bobcat.p2p_status
bobcat.ports_desc
bobcat.ports
bobcat.private_ip
bobcat.public_ip
bobcat.peerbook
bobcat.peerbook_miner
bobcat.peerbook_listen_address
bobcat.peerbook_peers
bobcat.timestamp
bobcat.error
bobcat.temp0
bobcat.temp1
bobcat.temp0_c
bobcat.temp1_c
bobcat.temp0_f
bobcat.temp1_f
bobcat.download_speed
bobcat.upload_speed
bobcat.latency
bobcat.dig_name
bobcat.dig_message
bobcat.dig_dns
bobcat.dig_records
# actions
bobcat.ping()
bobcat.reboot()
bobcat.reset()
bobcat.resync()
bobcat.fastsync()
# diagnostics
bobcat.is_bobcat()
Troubleshooting
Please see No Witness's Troubleshooting Guide for more information.
Donations
Donations are welcome and appreciated! :gift:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for bobcat_miner-0.10.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2fe5e1177a50cc4742cb85016b3eb61e8b84f94abb5199f24dd5ab5134f1b697 |
|
MD5 | 28558b3c0cc33f9208e7b9052d92bfc7 |
|
BLAKE2b-256 | 3a63d42393c40df0af8356c037490d3e1a673f78d1c043d0575b27fe27fe2291 |