C#-Library to Interact with ESP-Remote Shockcollars
Go to file
2024-01-29 17:20:32 +01:00
.idea/.idea.CShocker/.idea Initial Commit 2024-01-17 03:25:13 +01:00
CShocker Equal overrides 2024-01-29 17:20:32 +01:00
TestApp Fix OpenShockHttp: Wrong json caused Bad Request 2024-01-29 15:37:19 +01:00
.gitignore Initial Commit 2024-01-17 03:25:13 +01:00
CShocker.sln Add TestApp 2024-01-20 20:02:12 +01:00
CShocker.sln.DotSettings Use Http-API to get RF-IDs for OpenShockSerial 2024-01-20 21:15:26 +01:00
LICENSE License 2024-01-17 03:25:31 +01:00
README.md Update Readme 2024-01-20 21:21:54 +01:00

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

GitHub License NuGet Version

Usage

public static void Main(string[] args){
    List<string> shockerIds = new();
    IntensityRange intensityRange = new IntensityRange(30, 50);
    DurationRange durationRange = new DurationRange(1000, 2000);
    string apiKey = ":)";
    OpenShockHttp openShockHttp = new OpenShockHttp(shockerIds, intensityRange, durationRange, apiKey);
    openShockHttp.ShockerIds.AddRange(openShockHttp.GetShockers());
    
    string username = "username";
    string shareCode = "sharecode";
    PiShockHttp piShockHttp = new PiShockHttp(shockerIds, intensityRange, durationRange, apiKey, username, shareCode, apiUri);
    
    ControlAction action = ControlAction.Shock;
    openShockHttp.Control(action, shockerIds.First(), 20, 1000);
    piShockHttp.Control(action);
}

Shocker.Control

Control(ControlAction action, string? shockerId = null, int? intensity = null, int? duration = null)

If shockerId is null, all IDs will be used. If intensity or duration are null, a random value within the configured range will be used.

ControlAction

From here

Variables

ApiKey

  • For OpenShock (HTTP) get token here
  • For PiShock (HTTP) get information here

ShockerIds

List of Shocker-Ids, comma seperated.

[ "ID-1-asdasd", "ID-2-fghfgh" ]

OpenShockHttp also can retrieve IDs automatically.

Intensity Range

in percent

0-100

Duration Range

in ms

  • 0-30000 OpenShock
  • 0-15000 PiShock

Username (PiShockHttp only)

For PiShock (HTTP) get information here

Sharecode (PiShockHttp only)

For PiShock (HTTP) get information here