Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/c9glax/cshocker

C#-Library to Interact with ESP-Remote Shockcollars
https://github.com/c9glax/cshocker

electrostim electrostimulation estim library openshock pishock shock shock-collars

Last synced: about 2 months ago
JSON representation

C#-Library to Interact with ESP-Remote Shockcollars

Awesome Lists containing this project

README

        

Library to interact with Shock-Collars that are remotely controllable via ESP32-Boards.

[![GitHub License](https://img.shields.io/github/license/c9glax/cshocker)](https://github.com/C9Glax/CShocker)
[![NuGet Version](https://img.shields.io/nuget/v/CShocker)](https://www.nuget.org/packages/CShocker)

# Usage

```csharp
public static void Main(string[] args){
string apiKey = ":)";

OpenShockHttp openShockHttp = new (apiKey);
OpenShockShocker shocker1 = openShockHttp.GetShockers().First();
shocker1.Control(ControlAction.Vibrate, 20, 1000);

shocker1.Dispose();

List serialPorts = SerialHelper.GetSerialPorts();
int selectedPort = 1;
OpenShockSerial openShockSerial = new(serialPorts[selectedPort], apiKey);
OpenShockShocker shocker2 = openShockSerial.GetShockers().First();
shocker2.Control(ControlAction.Vibrate, 20, 1000);

shocker2.Dispose();
}
```
## `Shocker.Control`
```csharp
Control(ControlAction action, int intensity, int duration)
```

### ControlAction
From [here](https://github.com/C9Glax/CShocker/blob/master/CShocker/Devices/Additional/ControlActionEnum.cs)

## Variables

### ApiKey
- For OpenShock (HTTP) get token [here](https://shocklink.net/#/dashboard/tokens)

### Intensity Range
in percent

`0-100`

### Duration Range
in ms
- `0-30000` OpenShock
- `0-15000` PiShock

## Future
### ~~Username (PiShockHttp only)~~
~~For PiShock (HTTP) get information [here](https://apidocs.pishock.com/#header-authenticating)~~

### ~~Sharecode (PiShockHttp only)~~
~~For PiShock (HTTP) get information [here](https://apidocs.pishock.com/#header-authenticating)~~