Autoswitch Manager (Helper for Autoswitch for NiceHash) | Автосвитч Менеджер

English version

Встречайте новый продукт "Autoswitch Manager"

Программа работает под управлением MS Windows и предназначена для конфигурирования Autoswitch for nicehash без необходимости ручного редактирования конфигов в консоли рига.

Системные требования:

  • Windows 7 и выше;
  • .NET 4.5 и выше;
  • Подключение к Интернет

В будущем возможно будут версии для Linux и MacOS - следите за обновлениями.

Скачать AutoSwitch Manager

Основные возможности:

  • Программа не требует установки, работает из любой папки на диске
  • Интуитивно понятный, дружелюбный интерфейс;
  • Создание токенов авторизации;
  • Управление автосвитчем на всех фермах к которым есть доступ;
  • Проверка наличия полетных листов с корректными названиями (в том числе проверка дублирования);
  • Возможность генерации и сохранения готовых конфигов и сохранения их на диск.
  • Экспорт конфигов в шаблон и импорт из шаблона
  • Удаленная отправка конфигов на риг, удаленная установка и запуск Autoswitch.

Программа интуитивно понятна, и в подробном описании не нуждается. Обращу внимание лишь на несколько важных моментов.

  • Полетные листы для работы Autoswitch должны быть предварительно созданы пользователем из веб-интерфейса. Подробная инструкция по их созданию в топике посвященном Autoswitch for nicehash
    Программа считывает полетные листы при загрузке списка ферм находящихся под управлением пользователя. Есть возможность обновить список Полетных листов, если они создаются в процессе работы программы.
    Алгоритмы для которых найдены полетные листы - будут выделены зеленым цветом.

  • При первом запуске программы необходимо создать в программе как минимум один аккаунт (получить токен авторизации).
    Вы можете получить токен прямо из программы, указав логин, пароль от аккаунта HiveOS, а шестизначный код 2FA авторизации (если она активирована
    При нажатии на кнопку “Get Token” автоматически будет создан персональный токен. Вы сможете его увидеть в настройках вашего аккаунта.
    %D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA
    Важное замечание: логин, пароль, секретный ключ в целях безопасности не запоминаются и не сохраняются.
    Альтернативно можно использовать существующий токен. Скопировав его из настроек аккаунта в вебинтерфейсе и вставив в соответствующее поле в диалоговом окне программы.
    account2
    В программу можно добавить сколько угодно разных аккаунтов (токенов). Нужный впоследствии можно выбрать из выпадающего списка.

  • После создания аккаунта и указания токена авторизации в программе будут доступны все фермы (и все воркеры в составе этих ферм), к которым пользователь имеет доступ с уровнем Advanced и Full (ну и конечно к своим собственным).

  • При первом выборе рига ему автоматически назначается токен, который был привязан к выбранному аккаунту. Если вы не являетесь владельцем настраиваемого рига - настоятельно рекомендуется заменить этот токен, на токен созданный владельцем рига. Т.к. если права на риг будут отозваны, то и токен пользователя-невладельца станет недействительным.

  • При отправке конфигов на риг, дополнительно происходит установка и запуск Autoswitch на данном риге.

Скачать AutoSwitch Manager

Уверен, что с помощью этой программы - использование Autoswitch станет намного проще и комфортнее.

Надежных БП, туземунов и удачного майнинга, друзья!!

2 Likes

(Many thanks to Tías Jørnesson for the translation)
Introducing the new “Autoswitch Manager” product.

The program runs under MS Windows and is designed to configure Autoswitch for nicehash without the need to manually edit the configs in the rig’s console.

System requirements:

  • Windows 7 and higher;
  • .NET 4.5 and higher;
  • Internet connection

There may be versions for Linux and macOS in the future - stay tuned.

Download the AutoSwitch Manager

Key features:

  • The program does not require installation, works from any folder on the disk
  • Intuitive, user-friendly interface;
  • Creation of authorization tokens;
  • Autoswitch management on all farms to which there is access;
  • Checking the availability of flight sheets with correct names (including duplication-checking);
  • The ability to generate and save pre-created configs and save them to disk.
  • Export configs to a template and import from a template
  • Remote sending configs to rig, remote installation and launch of Autoswitch.

The program is intuitive and does not need a detailed description. I will describe only a few important points.

  • Flight sheets for Autoswitch must be pre-created by the user from the web interface. Detailed instructions for creating them are available in the Autoswitch for nicehash section.
    The program reads Flight Sheets when loading the user’s farms list. There’s an option to update the Flight Sheets list on demand, in case they’re created while the program is running.
    Algorithms for which flight sheets are found will be highlighted in green.

  • When you first start the program, you must create at least one account (to get an authorization token).
    You can get the token directly from the program by specifying the login and password from the HiveOS account, and the six-digit 2FA authorization code (if this option is activated).
    When you click on the “Get Token” button, a personal token will be automatically created. You can see it in your account settings.

%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA

Important note: login, password and secret key are not stored or saved by the program for security reasons.

Alternatively, you can use an existing token. By copying it from the account settings in the web interface and pasting it into the corresponding field in the program dialogue box.
account2
You can add as many different accounts (tokens) to the program as you like. You can subsequently select the desired one from the drop-down list.

  • After creating an account and specifying an authorization token in the program, all farms (and all workers in these farms) will be available. Including those to which the user has access with the Advanced and Full levels.

  • When you first select a rig, a token is automatically assigned to it. It will be the token which was tied to the selected account. If you do not own that specific rig, it is highly recommended that you replace this token with the one created by the owner of the rig. This must be done because if the rights to the rig are revoked, then the token of the non-owner will also become invalid.

  • When sending configs to a rig, Autoswitch is additionally installed and launched in this rig as well.

Download AutoSwitch Manager

Видимо пришло время ловли багов, надройка потенциально удобная

Первая картинка добавить аккаунт введен логин и пароль (ошибка)
2019-03-19_11-28-36

Вторая картинка когда введен логин и уже имеющийся API токен, тогда в списке аккаунтов появляется и при нажатии на get farm list выдается ошибка
2019-03-19_11-29-18

Первая картинка не баг. - данные для входа не верны.
Вторая - скорее всего связана с этим же.
Данные из кнопки “Сведения” - внесли бы больше ясности

Пароль и логин 100% корректный проверил несколько раз, F2A нет
Сведения ниже:
Подробная информация об использовании оперативной
(JIT) отладки вместо данного диалогового
окна содержится в конце этого сообщения.

************** Текст исключения **************
Newtonsoft.Json.JsonReaderException: Input string '0.68' is not a valid integer. Path 'data[0].money.daily_price', line 1, position 560.
   в Newtonsoft.Json.JsonTextReader.ParseReadNumber(ReadType readType, Char firstChar, Int32 initialPosition)
   в Newtonsoft.Json.JsonTextReader.ReadNumberValue(ReadType readType)
   в Newtonsoft.Json.JsonTextReader.ReadAsInt32()
   в Newtonsoft.Json.JsonReader.ReadForType(JsonContract contract, Boolean hasConverter)
   в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
   в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
   в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)
   в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
   в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
   в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id)
   в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)
   в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)
   в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
   в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
   в Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
   в Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
   в Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)
   в Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)
   в ASconfigLib.HiveAPIWrapper.GetFarms(String Token) в D:\me_code\ASconfig\HiveAPI\HiveAPIWrapper.cs:строка 170
   в ASconfig.Main.GetDataBtn_Click(Object sender, EventArgs e) в D:\me_code\ASconfig\ASconfig\Main.cs:строка 319
   в System.Windows.Forms.Control.OnClick(EventArgs e)
   в System.Windows.Forms.Button.OnClick(EventArgs e)
   в System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   в System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   в System.Windows.Forms.Control.WndProc(Message& m)
   в System.Windows.Forms.ButtonBase.WndProc(Message& m)
   в System.Windows.Forms.Button.WndProc(Message& m)
   в System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Загруженные сборки **************
mscorlib
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.3362.0 built by: NET472REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
ASmanager
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/asmanager/ASmanager.exe
----------------------------------------
ASlib
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/asmanager/ASlib.DLL
----------------------------------------
System.Windows.Forms
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.3324.0 built by: NET472REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.3362.0 built by: NET472REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.3056.0 built by: NET472REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.3056.0 built by: NET472REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.3362.0 built by: NET472REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.3056.0 built by: NET472REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Newtonsoft.Json
    Версия сборки: 12.0.0.0
    Версия Win32: 12.0.1.22727
    CodeBase: file:///C:/asmanager/Newtonsoft.Json.DLL
----------------------------------------
System.Windows.Forms.resources
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.3056.0 built by: NET472REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_ru_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
System.Numerics
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.3056.0 built by: NET472REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll
----------------------------------------
System.Runtime.Serialization
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.3324.0 built by: NET472REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Serialization/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Serialization.dll
----------------------------------------
System.Data
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.3260.0 built by: NET472REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_64/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
mscorlib.resources
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.3056.0 built by: NET472REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_ru_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------

************** Оперативная отладка (JIT) **************
Для подключения оперативной (JIT) отладки файл .config данного
приложения или компьютера (machine.config) должен иметь
значение jitDebugging, установленное в секции system.windows.forms.
Приложение также должно быть скомпилировано с включенной
отладкой.

Например:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

При включенной отладке JIT любое необрабатываемое исключение
пересылается отладчику JIT, зарегистрированному на данном компьютере,
вместо того чтобы обрабатываться данным диалоговым окном.
1 Like

Баг локализован и пофиксен. Спасибо.
Перекачайте, пожалуйста.

А по первому скрину, сейчас попробую помоделировать различные ситуации.

Попробовал и с включенной 2FA и с отключенной.
Если данные указаны правильно - авторизация проходит успешно.
Т.е. по первой ошибке - однозначно неверные данные для входа. Других вариантов просто не может быть. Окошко с ошибкой - это ответ от сервера хайва.

После исправления с действующим API токен сработало, решил запустить Риг который работал без надстройки (ввел замеры нажал кнопку Sent to worker), Воркер получает несколько команд, вылетает ошибка мое подозрения из-за того что все команды скидываются одновременно или еще что-то

гм… в теории возможно. что не успевает отрабатывать. возможно стоит воткнуть небольшую паузу.
а попробуйте руками стартаните автосвитч.
ну и в конфиги на риге посмотреть не мешает, что там.

кстати… Если это было в процессе работающего автосвитч на риге. То это сообщения об аварийном завершении работающего.
После них должны быть уже сообщения об установке свежего.

просто понаблюдайте. Скорее всего автосвитч нормально работает после этого (уже новый). Просто вебморда не вывела все сообщения.

А вообще спасибо. Стоит наверное первой воткнуть команду об остановке работающего. Чтобы не пугать людей.

Риг перезагрузил, автосвич видимо установлен, после команды ручной автосвич старт выдает ошибку (Autoswitch ERROR! BENCHMARK var in /hive-config/autoswitch.conf is not correct JSON. Exit), а после команды автосвич конфиг (аналогичную ошибку) посмотрел вручную на файл autoswitch.conf и заметил что значения некоторых хэшрейтов стоят с запятой (,) поправил вручную на точку все заработало. НО сама программа не позволяет ставить точку (выдает ошибку на скрине) но при этом разрешает ставить запятую а это уже не феншую для JSON, надо править код :slight_smile:

Дело не в коде. А в региональных настройках. Там идет проверка на соответствие дробному числу.
Видимо у вас в региональных настройках разделителем у дробей указана запятая.
Я об этом не подумал.

Спасибо. Поправлю.

совсем не понял смысла в программе.то же самое делается в редакторе.или она ещё что то умеет.

да. делается по факту то же самое.

Смысл в том, что для некоторых ручное редактирование в консоли представляет большую сложность. Это раз.
И второе - если риг не один и не два. Намного удобнее раскидывать конфиги нажимая на одну кнопку (при необходимости поправив пару параметров). Чем подключаться к консоли на каждом риге и вручную редактировать конфиги.

Полностью согласен, у меня риги удаленные через nano по команде Hive Shell файл отображается некорректно, цифры друг на друга наплывают редактировать печально, остается Телеконсоль которая постоянно отрубается и получается вставил цифру сохранил. Возможно есть еще способы но к сожалению не обучены, поэтому данная программа спасение, также майнеры периодически обновляются, меняется хэш а это требует правки конфига.

я через микротик на риги захожу
удобно

Пофиксил.
Теперь в поле ввода будет приниматься только точка.

Спасибо большое за баг-трек.

через wine на mint не хочет работать

NET 4.5 нужен.

Обновление до v 1.1

Пофиксены несколько багов.