Использование XML API на QRZ.RU
QRZ.RU предоставляет XML API для получения доступа к Callbook. Этот сервис позволяет получать информацию из базы данных позывных, и используется в программных аппаратных журналах
Сервис предназначен только для персонального использования в аппаратных журналах. Любые другие случаи использования приведут к блокировке аккаунта.
Поддерживаемые аппаратные журналы
Список известных аппаратных журналов, которые поддерживают XML API:
- AALog
- LogHX
- Logger32
- UR5EQF Log — пошаговое описание настройки доступа
- РадиоКРОТ (описание настройки доступа находится в файле документации, предоставляемым вместе с дистрибутивом)
- EWLOG
- Онлайн-журнал RV6AMZ
Если вы обладаете информацией, о том что QRZ.RU API стала поддерживать программа, которой нет в этом списке — пожалуйста дайте нам знать через форму обратной связи, мы добавим ссылку на эту программу в список
Порядок получения доступа в XML API
Получение аккаунта для доступа в XML API осуществляется для зарегистрированных пользователей, имеющих позывной. Обратите внимание что для регистрации XML API аккаунта вам необходимо иметь соответствующую запись своего позывного в QRZ.RU Callbook.
Для получения доступа вам необходимо авторизоваться в личном кабинете, и перейти на страницу «Личные данные». Внизу страницы в разделе
В открывшейся форме укажите:
- Свой радиолюбительский позывной
- Название программы, в которой будете использовать XML API доступ
После отправки формы на сервер через некоторое время вы получите информацию по доступу (логин/пароль), либо мотивированный отказ в активации доступа.
Описание протокола работы XML API для разработчиков
Внимание. Ниже приведено описание работы API, содержащее технические подробности для специалистов. Если вы не являетесь разработчиком — пропустите этот раздел.
XML API расположено по адресу http://api.qrz.ru/
Все ответы сервера осуществляются в кодировке UTF-8
Порядок работы:
1. Авторизуемся в API, получаем код сессии
Код:
https://api.qrz.ru/login?u=<username>&p=<password>&agent=<agent>
где
u — имя пользователя (логин) XML API (обязательный параметр)
p — пароль пользователя XML API (обязательный параметр)
agent — программное обеспечение (название, версия) которое запрашивает доступ.
Если параметр не задан, используется переменная HTTP_USER_AGENT из служебных заголовков сервера
Для сохранения конфиденциальности логина/пароля рекомендуется параметры передавать POST запросом
Ответ сервера в случае корректной авторизации
Код:
<?xml version="1.0"?> <QRZDatabase version="1.0" xmlns="http://api.qrz.ru/namespace"> <Session> <session_id>eda28b5e22790226247551ad32c2a71a</session_id> <GMTime>Sun, 27 Oct 2013 15:46:58 +0000</GMTime> </Session> </QRZDatabase>
либо в случае отказа в авторизации
Код:
<?xml version="1. 0"?> <QRZDatabase version="1.0" xmlns="http://api.qrz.ru/namespace"> <session> <errorcode>403</errorcode> <error>Wrong user name or password</error> </session> </QRZDatabase>
Время жизни предоставленного ключа сессии — 1 час. По истечении этого времени вы получите ошибку
Код:
<?xml version="1.0"?> <QRZDatabase version="1.0" xmlns="http://api.qrz.ru/namespace"> <session> <errorcode>403</errorcode> <error>Session does not exist or expired</error> </session> </QRZDatabase>
что означает — вам следует снова авторизоваться
2. Осуществляем запросы в рамках предоставленной сессии
Общий синтаксис запроса:
Код:
https://api.qrz.ru/callsign?id=<session_id>&callsign=<callsign>
где
id -идентификатор сессии выданный после авторизации (точное соответствие)
callsign — интересующий вас позывной (любой регистр)
На примере позывного UA9OTY и выданного выше номера сессии:
Код:
https://api. qrz.ru/callsign?id=eda28b5e22790226247551ad32c2a71a&callsign=ua9oty
Ответ сервера будет таким:
Код:
<?xml version="1.0"?> <QRZDatabase version="1.0" xmlns="http://api.qrz.ru/namespace"> <Callsign> <call>UA9OTY</call> <type>0</type> <othercall>UA0SRX</othercall> <surname>Ильюхин</surname> <name>Сергей</name> <name2>Юрьевич</name2> <esurname>Ilyukhin</esurname> <ename>Sergey</ename> <ename2>Yurievich</ename2> <birthday>05.01.1975</birthday> <dayofdeath></dayofdeath> <zip>630089</zip> <city>Новосибирск-89,</city> <street>а/я 467</street> <country>Россия</country> <url>http://www.qsl.net/ua9oty</url> <icq>7426815</icq> <skype>ua9oty</skype> <created>02.07.2005 17:25:55</created> <lastedit>25.11.2009 23:25:34</lastedit> <lookup>16397</lookup> </Callsign> <Files> </Files> <Session> <session_id>eda28b5e22790226247551ad32c2a71a</session_id> <GMTime>Sun, 27 Oct 2013 15:55:27 +0000</GMTime> </Session> </QRZDatabase>
Где блок <Callsign> содержит информацию о позывном, <Files> — список всех вложенных в колбук файлах этого позывного (сейчас это одно фото, в следующем году сделаем групповое хранение нескольких файлов), <Session> — справочная информация (id сессии и GMT время на сервере)
если позывной не найден в базе данных, сервер сообщит:
Код:
<?xml version="1.0"?> <QRZDatabase version="1.0" xmlns="http://api.qrz.ru/namespace"> <session> <errorcode>404</errorcode> <error>Callsign not found</error> </session> </QRZDatabase>
Ограничения при работе:
В связи с ограниченностью ресурсов сервера применяются следующие ограничения:
- На один IP адрес — не более одного подключения. Параллельные подключения запрещены.
- При первоначальной авторизации без ограничения скорости — 3 запроса (получения ID сессии и два запроса на поиск). Далее — не более одного запроса в 3 секунды.
Разработчикам — для получение XML доступа в базу данных обращайтесь через форму обратной связи
Для пакетных запросов на обработку позывных сотнями/тысячами записей — обращайтесь через форму обратной связи
Если вы столкнулись с трудностями при использовании наших проектов или хотите сообщить об ошибке, пожалуйста, заполните эту форму, и наша служба поддержки свяжется с вами.
50. Работа с Callbook qrzru через новый API
Описание плагина Callbook от US-E-12
В 2017 году Callbook сайта qrz.ru переходит на новый API, а старый способ получения информации из Лога по позывному будет отключен.
В настоящее время Лог обращается по старому адресу, в ответе которого уже написано предупреждение:
В связи с этим Олег (US-E-12) выпустил плагин для Лога, в котором сделана возможность обмена данными с Логом. Поиск ведётся отдельно по каждому сервису переключаемся выбирая закладки и после нажатия кнопки «Е». Поиск по qrz.com или hamqth будет успешным, если позывной есть в этих базах и в логе в Конфигурация прописаны логин и пароль для этих сервисов.
Установка и настройка
1. Скачать последнюю версию плагина http://ur5eqf.ru/download/callbook
2. В логе меню Быстрый запуск-Конфигурация.
3. Жмём кнопку добавить, откроется окно там жмём иконку с папкой и выбираем путь к Callbook.exe. Жмём ОК.
В списке появится выбранный файл.
4. Закрываем. Затем опять Быстрый запуск и в списке кликаем на Callbook.exe. В этой форме жмём меню Setting. Заполняем данные полученные с qrz.ru (логин и пароль). Вводим в логе позывной, он отобразится в программе и жмём иконку с «е» в программе. Вверху есть закладки поиска по трём колбукам.
ВНИМАНИЕ!!! В Плагин Callbook от us-e-12 вводить логин и пароль необходимо не от личного кабинета сайта qrz.ru или форума, а логин/пароль на XML API, который необходимо получить следующим образом:
1. Зайти в личный кабинет сайта qrz.ru
2. Слева нажать на вкладку «Личные данные»
3. Напротив «XML API» нажать «Создать аккаунт»
4. Заполнить поля
5. Дождитесь получения Логина/Пароля
Видеоинструкция настройки плагина (от Алексея Тепцова)
Возможные проблемы с запуском плагина и пути их решения
1. При запуске из Лога ничего не происходит, при запуске файла Callbook.exe из проводника выскакивает окошко, что оно не является приложением Win32 (см. скриншот)
Решение: Проверить не блокируют ли запуск приложения Callbook.exe антивирус или другое ПО для защиты ПК от фишинга, рекламы, SpyHunter и т. п. Добавить Callbook.exe в исключения проверки антивируса (по мнению US-E-12 лучше всего добавить в исклбючения антивируса всю папке с Логом)
2. В закладке QRZ.com не всегда отображается фото.
Решение: Вопрос лучше адресовать к администрации qrz.com. Адрес откуда грузят картинки такой же как и в самом логе.
3. Если фото в папке image уже есть, то почему оно не обновляется?
Решение:
Ставим галку 1 и картинки будут сохранятся (перезаписываться) в папку указанную в 3. Если ставим галку 2, то данные и позывной обновляются (если есть) или добавляются (если нет) во внутренний справочник лога. Данные и картинки берутся с последней активной вкладки. Если Вы сначала возмёте данные с qrz.ru, а затем с qrz.com, то данные с qrz.com затрут все предыдущие.
4. Если разные фото на QRZ.ru QRZ.com, то какое сохранится в базе?
Ответ: То, которое открывали последним.
5. К QRZ.RU подключился выполнив настройки, описанные выше, а как подключиться к QRZ.COM и HamQTH? При вызове Setting появляется всегда окно с регистрацией на QRZ.RU.
Ответ: Сервисы QRZ.COM и HamQTH не изменяли (не планируют изменять) доступ к своим базам. Логин и пароль для этих сервисов берётся из Лога.
6. Как отключить скин?
Ответ: На закладке QRZ.ru снимите галку и перезапустите программу.
7. У меня при получении данных с QRZ.com данные отображаются крякозябрами
Ответ: 05.03.2016 были внесены изменения в плагин. Скачайте новую версию.
База данных радиолюбителей
Файлы cookie помогают нам предоставлять наши услуги.
Мы можем использовать файлы cookie сеанса в технических целях, например, для улучшения
навигации по сайту или для того, чтобы вы могли настроить свои предпочтения для взаимодействия с сайтом.
Используя наши услуги, вы соглашаетесь на использование нами файлов cookie. OK
Верхние вызовы кластера:
Пользователей онлайн: 287 | Вы здесь: QRZCQ > Главная > Разработчики QRZCQ для разработчиков XML API для поиска вызовов (аутентификация, только чтение) • Документация: здесь JSON API для общих данных (открытый, только для чтения) • URL API: здесь (https://www. qrzcq.com/api/ или http://qrzcq.com/api /) (документы todo) JSON API для данных учетной записи (авторизация, чтение-запись) • URL-адрес API: здесь (https://www.qrzcq.com/api/ или http://qrzcq.com/api /) (документы todo) ### ЗАГРУЗИТЕ свой бортовой журнал в QRZCQ *** Предположим, ваш звонок — AAA, ваш API-ключ — BBB, ваш бортовой журнал в ADIF, опубликуйте закодированный объект json по этому URL-адресу: https://ssl.qrzcq.com/api/logupload Запрос: объект стандартного класса ( [auth] => Объект stdClass ( [вызов] => ААА [ключ] => ВВВ ) [данные] => объект stdClass ( [adif] => (adif в формате json) ) ) Ответ может быть: объект стандартного класса ( [статус] => ОК [сообщение] => DATA_QUEUED [запрос] => объект stdClass ( [метод] => выгрузить журнал [опция1] => [опция2] => [опция3] => [postdata] => объект stdClass ( [auth] => Объект stdClass ( [вызов] => ААА [ключ] => ******** ) ) ) [процессор] => 0,003 ) Вы должны публиковать не более 1x в минуту. ### ПОЛУЧИТЕ статус своей буровой установки от QRZCQ ### Опросите следующий URL-адрес через POST, чтобы узнать, нужно ли вам устанавливать свою установку. Предположим, что ваш вызов - AAA, а ваш API-ключ - BBB, опубликуйте закодированный json возражайте против этого URL-адреса, чтобы получить ваши данные для настройки буровой установки: https://ssl.qrzcq.com/api/rig/get Запрос: объект стандартного класса ( [auth] => Объект stdClass ( [вызов] => ААА [ключ] => ВВВ ) ) Ответ может быть: объект стандартного класса ( [rig] => Объект stdClass ( [set] => объект stdClass ( [частота] => 21311000 [режим] => USB [дата] => 2016-03-30 00:30:45 ) ) [статус] => ОК [запрос] => объект stdClass ( [метод] => оснастка [opt1] => получить [опция2] => [опция3] => [запрос] => объект stdClass ( [auth] => Объект stdClass ( [вызов] => ААА [ключ] => ВВВ ) ) ) [процессор] => 0,003 ) Это означает, что вы должны настроить вашу установку на 21311000 Гц USB. Опрашивать следует не чаще 2 раз в секунду. ### УСТАНОВИТЕ статус вашей установки на QRZCQ *** Предположим, что ваш вызов — AAA, ваш API-ключ — BBB, ваш режим — LSB и ваша частота 3,795 МГц, разместите закодированный объект json по этому URL-адресу: https://ssl.qrzcq.com/api/rig/put Запрос: объект стандартного класса ( [auth] => Объект stdClass ( [вызов] => ААА [ключ] => ВВВ ) [запрос] => объект stdClass ( [режим] => младший бит [частота] => 3795000 [см] => 47 ) ) режим = LSB, USB, FM, AM, DIGI, RTTY, PSK31 и т. д. freq = ваша частота в Гц smeter = ваш smeter в дБ выше S0 (так что S3 = 18, S9= 54, S9+20 = 74) Ответ может быть: объект стандартного класса ( [статус] => ОК [запрос] => объект stdClass ( [метод] => оснастка [opt1] => поставить [опция2] => [опция3] => [запрос] => объект stdClass ( [auth] => Объект stdClass ( [вызов] => ААА [ключ] => ВВВ ) [запрос] => объект stdClass ( [режим] => младший бит [частота] => 3795000 [см] => 47 ) ) ) [процессор] => 0,004 ) Вы должны публиковать не более 1x в секунду. | • Сегодня представлены: 9A4ZM • Самая горячая QRG на DX кластере сейчас: 144360,0 кГц на 2-метровом диапазоне • Веб-сайты, поддерживающие QRZCQ: Веб-сайты, поддерживающие QRZCQ • Последние безупречно чистые профили:
• Пользователи с наибольшим количеством отработанных DXCC:
• Последние активированные пользователи:
• Последние активированные SWL:
• Последние новости: Специальный номер PA01 mil до PA08MIL… Добавлено в 2022-03 -03 21:34:43 от PA11599 Звукооператор покидает прочный музыкальный л… Добавлено 22. 05.2017 03:16:19 от VK2HEY CQ-WW-DX -CW 2016 Portugal with CR5K 9 0004 Добавлено в 2016-10-24 12:52:34 автором CT1BWWCQWW on SI9AM Добавлено 07.10.2015 17:01:12 пользователем ON6UQ 4R • Последний статьи: В настоящее время, более чем когда-либо, ищите свой… Добавлено CT1BWW 03.11.2020 14:32:59 Гордитесь своим позывным и демонстрируйте… Добавлено 30.10.2020 14:24:14, CT1BWW Коммутатор антенны WiFi HF Добавлено 21 июля 2017 г., 13:23:35, VA6DTX Alpha EZMilitary, Chameleon MPAS Side by… Добавлено OH8STN 10.05.2016, 09:20:05 4 приёмника в SWL Shack 03 по F61112 • Последние видео:
• Последние звонки:
• Последние загруженные бортовые журналы:
• Самые активные пользователи:
• Последние звонки Big Gun:
• Последние клубные звонки:
• Последняя DXped Телефоны:
• Последняя версия acon звонки:
• В память о СК:
|
Пакет qrz — github.
com/k0swe/qrz-api — Пакеты Go- Переменные
- func CacheExpires(r *http.Response) time.Time
- тип APIClient
- func NewAPIClient(cfg *Конфигурация) *APIClient
- func (c *APIClient) ChangeBasePath (строка пути)
- func (c *APIClient) GetConfig() *Конфигурация
- введите APIKey
- тип APIResponse
- func NewAPIResponse(r *http.Response) *APIResponse
- func NewAPIResponseWithError (строка сообщения об ошибке) *APIResponse
- введите BasicAuth
- введите Позывной
- тип Конфигурация
- функция NewConfiguration() * Конфигурация
- func (c *Configuration) AddDefaultHeader (строка ключа, строка значения)
- func (c *Configuration) ServerUrl (индекс int, карта переменных [строка] строка) (строка, ошибка)
- введите DefaultApiService
- func (a *DefaultApiService) RootGet(ctx _context. Context, localVarOptionals *RootGetOpts) (QrzDatabase, *_nethttp.Response, ошибка)
- тип Dxcc
- введите GenericOpenAPIError
- func (e GenericOpenAPIError) Тело () [] байт
- func (e GenericOpenAPIError) Ошибка () строка
- интерфейс func (e GenericOpenAPIError) Model(){}
- введите QrzDatabase
- func Lookup(ctx context.Context, user *string, pw *string, call *string) (*QrzDatabase, error)
- введите RootGetOpts
- введите Конфигурация сервера
- введите ServerVariable
- тип Сессия
Этот раздел пуст.
Просмотр исходного кода
вар ( // ContextOAuth3 принимает oauth3.TokenSource в качестве аутентификации для запроса. ContextOAuth3 = contextKey ("токен") // ContextBasicAuth принимает BasicAuth в качестве аутентификации для запроса. ContextBasicAuth = contextKey("базовый") // ContextAccessToken принимает строковый токен доступа oauth3 в качестве аутентификации для запроса. ContextAccessToken = contextKey("токен доступа") // ContextAPIKey принимает APIKey в качестве аутентификации для запроса ContextAPIKey = contextKey("apikey") )
func CacheExpires(r *http.Response) time.Time
Вспомогательная функция CacheExpires для определения оставшегося времени до повторения запроса.
тип APIClient struct { DefaultApi *DefaultApiService // содержит отфильтрованные или неэкспортированные поля }
APIClient управляет связью с QRZ XML Logbook Data Specification API v1.34 В большинстве случаев должен быть только один общий APIClient.
функция NewAPIClient(cfg *Configuration) *APIClient
NewAPIClient создает новый клиент API. Требуется строка userAgent, описывающая ваше приложение. опционально настраиваемый http.Client, позволяющий использовать расширенные функции, такие как кэширование.
func (c *APIClient) ChangeBasePath (строка пути)
ChangeBasePath изменяет базовый путь, чтобы разрешить переключение на макеты
func (c *APIClient) GetConfig() *Configuration
Разрешить модификацию базовой конфигурации для альтернативных реализаций и тестирования Внимание: изменение конфигурации во время работы может привести к гонкам данных и потенциально нежелательному поведению.
введите структуру APIKey { Ключевая строка Строка префикса }
APIKey обеспечивает аутентификацию на основе ключа API для запроса, переданного через контекст с использованием ContextAPIKey
тип APIResponse struct { *http.Отклик `json:"-"` Строка сообщения `json:"message,omitempty"` // Операция — это имя операции OpenAPI. Строка операции `json:"operation,omitempty"` // RequestURL — это URL-адрес запроса. Это значение доступно всегда, даже если // встроенный *http.Response равен нулю. Строка RequestURL `json:"url,omitempty"` // Метод — это HTTP-метод, используемый для запроса. Это значение всегда // доступно, даже если встроенный *http.Response равен нулю. Строка метода `json:"method,omitempty"` // Полезная нагрузка содержит содержимое тела ответа (которое может быть нулевым или пустым). // Это предоставлено здесь, так как считыватель необработанного ответа.Body() уже будет // слили. Полезная нагрузка [] байт `json:"-"` }
APIResponse сохраняет ответ API, возвращенный сервером.
func NewAPIResponse(r *http.Response) *APIResponse
NewAPIResponse возвращает новый объект APIResonse.
func NewAPIResponseWithError(строка errorMessage) *APIResponse
NewAPIResponseWithError возвращает новый объект APIResponse с предоставленным сообщением об ошибке.
тип BasicAuth структура { Строка имени пользователя `json:"userName,omitempty"` Строка пароля `json:"password,omitempty"` }
BasicAuth обеспечивает базовую HTTP-аутентификацию для запроса, переданного через контекст с использованием ContextBasicAuth.
тип Позывной struct { // позывной Строка вызова `json:"call,omitempty" xml:"call"` // Перекрестная ссылка: позывной запроса, который вернул эту запись Строка внешней ссылки `json:"xref,omitempty" xml:"xref"` // Другие позывные, которые разрешаются в эту запись Строка псевдонимов `json:"aliases,omitempty" xml:"aliases"` // ID объекта DXCC (код страны) для позывного Строка Dxcc `json:"dxcc,omitempty" xml:"dxcc"` // имя Строка Fname `json:"fname,omitempty" xml:"fname"` // фамилия Строка имени `json:"name,omitempty" xml:"name"` // адресная строка 1 (т.е. номер дома и улица) Строка Addr1 `json:"addr1,omitempty" xml:"addr1"` // строка адреса 2 (т. е. название города) Строка Addr2 `json:"addr2,omitempty" xml:"addr2"` // штат (только для США) Строка состояния `json:"state,omitempty" xml:"state"` // Почтовый индекс Zip-строка `json:"zip,omitempty" xml:"zip"` // название страны для почтового адреса QSL Строка страны `json:"country,omitempty" xml:"country"` // код объекта dxcc для страны почтового адреса Строка Ccode `json:"ccode,omitempty" xml:"ccode"` // широта адреса (десятичное со знаком) S < 0 > N Широта float64 `json:"lat,omitempty" xml:"lat"` // долгота адреса (десятичное со знаком) W < 0 > E Lon float64 `json:"lon,omitempty" xml:"lon"` // Локатор сетки Мейденхеда Строка сетки `json:"grid,omitempty" xml:"grid"` // название округа (США) Строка округа `json:"county,omitempty" xml:"county"` // Идентификатор округа FIPS (США) Строка Fips `json:"fips,omitempty" xml:"fips"` // Название страны DXCC для позывного Строка земли `json:"land,omitempty" xml:"land"` // дата вступления лицензии в силу (США) Строка efdate `json:"efdate,omitempty" xml:"efdate"` // срок действия лицензии (США) Строка расширения `json:"expdate,omitempty" xml:"expdate"` // предыдущий позывной Строка PCall `json:"p_call,omitempty" xml:"p_call"` // класс лицензии Строка класса `json:"class,omitempty" xml:"class"` // коды типов лицензий (США) Строка кодов `json:"codes,omitempty" xml:"codes"` // Информация о QSL-менеджере Строка Qslmgr `json:"qslmgr,omitempty" xml:"qslmgr"` // Адрес электронной почты Строка электронной почты `json:"email,omitempty" xml:"email"` // адрес веб-страницы Строка URL `json:"url,omitempty" xml:"url"` // Просмотры веб-страниц QRZ UViews float32 `json:"u_views,omitempty" xml:"u_views"` // приблизительная длина био HTML в байтах Строка биографии `json:"bio,omitempty" xml:"bio"` // дата последнего обновления биографии Строка биодаты `json:"biodate,omitempty" xml:"biodate"` // полный URL основного изображения позывного Строка изображения `json:"image,omitempty" xml:"image"` // высота:ширина:размер в байтах файла изображения Строка Imageinfo `json:"imageinfo,omitempty" xml:"imageinfo"` // Серийный номер базы данных QRZ Серийная строка `json:"serial,omitempty" xml:"serial"` // Дата последнего изменения позывного QRZ Строка Moddate `json:"moddate,omitempty" xml:"moddate"` // Зона обслуживания метро (USPS) Строка MSA `json:"MSA,omitempty" xml:"MSA"` // Телефонный код города (США) Строка AreaCode `json:"AreaCode,omitempty" xml:"AreaCode"` // Часовой пояс (США) Строка часового пояса `json:"TimeZone,omitempty" xml:"TimeZone"` // Смещение времени по Гринвичу GMTOffset строка `json:"GMTOffset,omitempty" xml:"GMTOffset"` // Соблюдено летнее время Строка DST `json: "DST, omitempty" xml: "DST"` // Будет принят e-qsl (0/1 или пусто, если неизвестно) Строка Eqsl `json:"eqsl,omitempty" xml:"eqsl"` // вернет бумажную QSL (0/1 или пустую, если неизвестно) Строка Mqsl `json:"mqsl,omitempty" xml:"mqsl"` // Идентификатор зоны CQ Cqzone строка `json:"cqzone,omitempty" xml:"cqzone"` // Идентификатор зоны ITU Строка Ituzone `json:"ituzone,omitempty" xml:"ituzone"` // год рождения оператора Родился float32 `json:"born,omitempty" xml:"born"` // Пользователь, который управляет этим позывным в QRZ Строка пользователя `json:"user,omitempty" xml:"user"` // Будет принято LOTW (0/1 или пусто, если неизвестно) Строка лота `json:"lotw,omitempty" xml:"lotw"` // Обозначение IOTA (пусто, если неизвестно) Строка йоты `json:"iota,omitempty" xml:"iota"` // Описывает источник данных широты/долготы Строка Geoloc `json:"geoloc,omitempty" xml:"geoloc"` // Внимание адресная строка, эта строка должна быть добавлена перед адресом Attn строка `json:"attn,omitempty" xml:"attn"` // Другое или сокращенное имя, используемое в эфире Строка псевдонима `json:"nickname,omitempty" xml:"nickname"` // Комбинированное полное имя и псевдоним в формате, используемом QRZ. Этот формат может быть изменен. Строка NameFmt `json:"name_fmt,omitempty" xml:"name_fmt"` }
Структура позывного для позывного
тип Структура конфигурации { Строка BasePath `json:"basePath,omitempty"` Строка хоста `json:"host,omitempty"` Строка схемы `json:"scheme,omitempty"` Карта DefaultHeader[string]string `json:"defaultHeader,omitempty"` Строка UserAgent `json:"userAgent,omitempty"` Отладка bool `json:"debug,omitempty"` Серверы []Конфигурация сервера HTTP-клиент *http.Client }
Конфигурация хранит конфигурацию клиента API.
func NewConfiguration() *Configuration
NewConfiguration возвращает новый объект конфигурации
func (c *Configuration) AddDefaultHeader(строка ключа, строка значения)
AddDefaultHeader добавляет новый заголовок HTTP к заголовку по умолчанию в запросе
func (c *Configuration) ServerUrl (индекс int, карта переменных [строка] строка) (строка, ошибка)
ServerUrl возвращает URL-адрес на основе настроек сервера
тип Служба DefaultApiService
Служба DefaultApiService Служба DefaultApi
func (a *DefaultApiService) RootGet(ctx _context. Context, localVarOptionals *RootGetOpts) (QrzDatabase, *_nethttp.Response, ошибка)
RootGet Универсальная конечная точка
- @param ctx _context.Context — для аутентификации, регистрации, отмены, сроков, отслеживания и т. д. Передается из http.Request или context.Background().
- @param необязательный ноль или *RootGetOpts — необязательные параметры:
- @param «Имя пользователя» (необязательный.String) —
- @param «Пароль» (необязательный.String) —
- @param «Агент» (необязательный.String) —
- @param «S» (необязательный.String) — токен сеанса
- @param «Позывной» (необязательный.String) — выполнить поиск информации о позывном
- @param «Dxcc» (необязательный.Интерфейс OneOfnumberstring) — выполнить поиск информации DXCC
@возврат QrzDatabase
тип структуры Dxcc { // Номер объекта DXCC для этой записи Строка Dxcc `json:"dxcc,omitempty" xml:"dxcc"` // двухбуквенный код страны (ISO-3166) Cc string `json:"cc,omitempty" xml:"cc"` // 3-буквенный код страны (ISO-3166) Ccc строка `json:"ccc,omitempty" xml:"ccc"` // длинное имя Строка имени `json:"name,omitempty" xml:"name"` // двухбуквенное обозначение континента Строка континента `json:"continent,omitempty" xml:"continent"` // Зона МСЭ Строка Ituzone `json:"ituzone,omitempty" xml:"ituzone"` // Зона CQ Cqzone строка `json:"cqzone,omitempty" xml:"cqzone"` // смещение часового пояса +/- UTC в часах. Нечетные часовые пояса, например 0545, означают «5 часов 45 минут». Знак плюс (+) подразумевается. Часовой пояс int32 `json: "часовой пояс, omitempty" xml: "часовой пояс"` // Широта (прибл.) Широта float64 `json:"lat,omitempty" xml:"lat"` // Долгота (прибл.) Lon float64 `json:"lon,omitempty" xml:"lon"` // Особые примечания и/или исключения Строка заметок `json:"notes,omitempty" xml:"notes"` }
Структура Dxcc для Dxcc
тип GenericOpenAPIError структура { // содержит отфильтрованные или неэкспортированные поля }
GenericOpenAPIError Предоставляет доступ к телу, ошибке и модели возвращаемых ошибок.
func (GenericOpenAPIError) Тело ¶
func (e GenericOpenAPIError) Body() []byte
Body возвращает необработанные байты ответа
func (e GenericOpenAPIError) Error() string
Error возвращает непустую строку, если произошла ошибка.
func (e GenericOpenAPIError) Model() interface{}
Модель возвращает распакованную модель ошибки
тип QrzDatabase структура { Сессия Сессия `json:"Session,omitempty" xml:"Session"` Позывной Позывной `json:"Позывной,omitempty" xml:"Позывной"` DXCC Dxcc `json:"DXCC,опровержение" xml:"DXCC"` }
Структура QrzDatabase для QrzDatabase
func Lookup(ctx context. Context, user *string, pw *string, call *string) (*QrzDatabase, ошибка)
введите структуру RootGetOpts { Имя пользователя необязательно.String Пароль необязательный.String Агент необязательный.String S необязательный.String Позывной необязательный.String Dxcc необязательный.Интерфейс }
RootGetOpts Необязательные параметры для метода ‘RootGet’
тип ServerConfiguration struct { Строка URL Строка описания Карта переменных[string]ServerVariable }
ServerConfiguration хранит информацию о сервере
тип ServerVariable struct { Строка описания Строка значения по умолчанию EnumValues [] строка }
ServerVariable хранит информацию о серверной переменной
тип Структура сеанса { // действительный ключ сеанса пользователя. Сеанс пользователя устанавливается всякий раз, когда возвращается сеансовый ключ. Любой ответ от сервера, который не содержит элемента Key, указывает на то, что не существует действительного сеанса и что для продолжения требуется повторный вход в систему.
Ваш комментарий будет первым