Referência da API do portal do dispositivo

Tudo o que estiver no Portal do Dispositivo Windows é criado com base em API REST que pode utilizar para aceder aos dados e controlar o seu dispositivo programaticamente.

Implementação de aplicações

/api/app/packagemanager/package (DELETE)

Desinstala uma aplicação.

Parâmetros

  • package: nome do ficheiro do pacote a ser desinstalado.

/api/app/packagemanager/package (POST)

Instala uma Aplicação.

Parâmetros

  • package: nome do ficheiro do pacote a instalar.

Payload

  • corpo http em conformidade com várias partes

/api/app/packagemanager/packages (GET)

Obtém a lista de aplicações instaladas no sistema. Inclui detalhes.

Devolver dados

  • Lista de pacotes instalados com detalhes

/api/app/packagemanager/state (GET)

Obtém o estado da instalação da aplicação em curso.

Recolha de informações de falha de sistema

/api/debug/dump/usermode/crashcontrol (DELETE)

Desativa a recolha de informação de falha de sistema para uma aplicação sideload.

Parâmetros

  • packageFullName: nome do pacote

/api/debug/dump/usermode/crashcontrol (GET)

Obtém as definições para a recolha de informações de falha de sistema de aplicações sideload.

Parâmetros

  • packageFullName: nome do pacote

/api/debug/dump/usermode/crashcontrol (POST)

Ativa e define as definições de controlo de informação de falha de sistema para uma aplicação de sideload.

Parâmetros

  • packageFullName: nome do pacote

/api/debug/dump/usermode/crashdump (DELETE)

Elimina uma informação de falha de sistema de uma aplicação sideload.

Parâmetros

  • packageFullName: nome do pacote
  • fileName: nome do ficheiro de informação de falha de sistema

/api/debug/dump/usermode/crashdump (GET)

Obtém uma informação de falha de sistema para uma aplicação sideload.

Parâmetros

  • packageFullName: nome do pacote
  • fileName: nome do ficheiro de informação de falha de sistema

Devolver dados

  • Ficheiro de informação de falha de sistema. Inspecione com o WinDbg ou o Visual Studio.

/api/debug/dump/usermode/dumps (GET)

Devolve a lista de todas as informações de falha de sistema para aplicações sideload.

Devolver dados

  • Lista de informações de falha de sistema por aplicação side loaded

ETW

/api/etw/providers (GET)

Enumera fornecedores registados.

Devolver dados

  • Lista de fornecedores, nome amigável e GUID

/api/etw/session/realtime (GET/WebSocket)

Cria uma sessão ETW em tempo real; gerido através de um websocket.

Devolver dados

  • Eventos ETW dos fornecedores ativados

SO holográfico

/api/holographic/os/etw/customproviders (GET)

Devolve uma lista de fornecedores etw específicos do HoloLens que não estão registados no sistema.

/api/holographic/os/services (GET)

Devolve os estados de todos os serviços em execução.

/api/holographic/os/settings/ipd (GET)

Obtém o IPD armazenado (distância interpessoal) em milímetros.

/api/holographic/os/settings/ipd (POST)

Define o IPD.

Parâmetros

  • ipd: novo valor de IPD a ser definido em milímetros

/api/holographic/os/webmanagement/settings/https (GET)

Obtém os requisitos de HTTPS para o Portal do Dispositivo.

/api/holographic/os/webmanagement/settings/https (POST)

Define os requisitos de HTTPS para o Portal do Dispositivo.

Parâmetros

  • obrigatório: sim, não ou predefinição

Percepção Holográfica

/api/holographic/perception/client (GET/WebSocket)

Aceita atualizações do WebSocket e executa um cliente de perceção que envia atualizações a 30 fps.

Parâmetros

  • clientmode: "ativo" força o modo de controlo visual quando não pode ser estabelecido passivamente

Holographic Thermal

Ao utilizar estas APIs térmicas, consulte o artigo sobre gestão de energia e termais .

/api/holographic/thermal/stage (GET)

Obter a fase térmica do dispositivo (0 normal, 1 quente, 2 crítico).

/api/holographic/thermal/getMitigationLevels (GET/websocket)

Abra um websocket (ou efetue uma única consulta HTTP GET), devolvendo uma lista de objetos que contêm o seguinte:

  • IsSuppressed – identificar se um determinado periférico tem mitigações suprimidas
  • Nível - Nível de mitigação térmica mais recente para este periférico
  • Máscara - Máscara deste periférico
  • ThermalScore - Pontuação térmica mais recente para este periférico

Os objetos são nomeados pelo nome de periférico (Exemplo: Bateria)

/api/holographic/thermal/setMitigationLevel (POST)

Alterar o nível de mitigação comunicado para um determinado periférico

Parâmetros

  • mask: máscara de bits com conjunto de bits único para o periférico de interesse (consulte PowerThermalPeripheralFlags para obter detalhes)
  • nível: novo nível a utilizar (0-3)

/api/holographic/thermal/setThermalScore (POST)

Alterar a pontuação térmica que está a ser reportada para um determinado periférico

Parâmetros

  • máscara: máscara de bits com conjunto de bits único para o periférico de interesse (consulte PowerThermalPeripheralFlags para obter detalhes)
  • thermalScore: nova pontuação térmica a utilizar (100-0)

Gestor de Mapas

/api/holographic/mapmanager/mapFiles (GET)

Obtém a lista dos ficheiros de mapa disponíveis (.mapx).

/api/holographic/mapmanager/anchorFiles (GET)

Obtém a lista de ficheiros de âncora disponíveis (.ancx).

/api/holographic/mapmanager/srdbFiles (GET)

Obtém a lista de ficheiros de base de dados de reconstrução espacial (.srdb) disponíveis.

/api/holographic/mapmanager/getanchors (GET)

Obtém a lista de âncoras persistentes para o utilizador atual.

Transferir/Carregar/Eliminar Ficheiros

/api/holographic/mapmanager/download (GET)

Transfere um ficheiro de base de dados de reconstrução espacial, âncora ou mapa. O ficheiro deve ter sido carregado ou exportado anteriormente.

Parâmetros

  • FileName: nome do ficheiro a transferir.

Exemplo:

$.post("/api/holographic/mapmanager/download?FileName=" + spaceID)

/api/holographic/mapmanager/upload (POST)

Carrega um ficheiro de base de dados de reconstrução espacial, âncora ou mapa. Assim que um ficheiro for carregado, pode ser importado e utilizado posteriormente pelo sistema.

Parâmetros

  • ficheiro: nome do ficheiro a carregar.

Exemplo:

var form_data = new FormData();
form_data.append("file", file_data);

$.ajax({
    url: "/api/holographic/mapmanager/upload",
    dataType: 'json',
    cache: false,
    contentType: false,
    processData: false,
    data: form_data,
    type: 'post'
})

/api/holographic/mapmanager/delete (POST)

Elimina um ficheiro de base de dados de reconstrução espacial, âncora ou mapa. O ficheiro deve ter sido carregado ou exportado anteriormente.

Parâmetros

  • FileName: nome do ficheiro a eliminar.

Exemplo:

$.post("/api/holographic/mapmanager/delete?FileName=" + spaceID)

Exportar

/api/holographic/mapmanager/export (POST)

Exporta o mapa atualmente em utilização pelo sistema. Depois de exportado, pode ser transferido.

Exemplo:

$.post("/api/holographic/mapmanager/export")

/api/holographic/mapmanager/exportanchors (POST)

Exporta o mapa atualmente em utilização pelo sistema. Depois de exportado, pode ser transferido. Exemplo:

$.post("/api/holographic/mapmanager/exportanchors")

/api/holographic/mapmanager/exportmapandanchors (POST)

Exporta o mapa e as âncoras atualmente em utilização pelo sistema. Depois de exportadas, podem ser transferidas. Exemplo:

$.post("/api/holographic/mapmanager/exportmapandanchors")

/api/holographic/mapmanager/exportmapandspatialmappingdb (POST)

Exporta o mapa e a base de dados de reconstrução espacial atualmente em utilização pelo sistema. Depois de exportadas, podem ser transferidas.

Exemplo:

$.post("/api/holographic/mapmanager/exportmapandspatialmappingdb")

Importar

/api/holographic/mapmanager/import (POST)

Indica ao sistema que o mapa deve ser utilizado. Pode ser chamado em ficheiros que tenham sido exportados ou carregados.

Parâmetros

  • FileName: nome do mapa a ser utilizado.

Exemplo:

$.post("/api/holographic/mapmanager/import?FileName=" + spaceID, function() { alert("Import was successful!"); })

/api/holographic/mapmanager/importanchors (POST)

Indica ao sistema quais as âncoras que devem ser utilizadas. Pode ser chamado em ficheiros que tenham sido exportados ou carregados.

Parâmetros

  • FileName: nome das âncoras a utilizar.

Exemplo:

$.post("/api/holographic/mapmanager/import?FileName=" + spaceID, function() { alert("Import was successful!"); })

/api/holographic/mapmanager/importspatialmappingdb (POST)

Indica ao sistema qual a base de dados de reconstrução espacial que deve ser utilizada. Pode ser chamado em ficheiros que tenham sido exportados ou carregados.

Parâmetros

  • FileName: nome da base de dados de mapeamento espacial a utilizar.

Exemplo:

$.post("/api/holographic/mapmanager/import?FileName=" + spaceID, function() { alert("Import was successful!"); })

Outro

/api/holographic/mapmanager/resetmapandanchorsandsrdb (POST)

Reponha o sistema do mapa, das âncoras e da base de dados de reconstrução espacial.

Exemplo:

$.post("/api/holographic/mapmanager/resetmapandanchorsandsrdb")

/api/holographic/mapmanager/status (GET)

Obtém o estado do sistema, incluindo o mapa, as âncoras e os ficheiros da base de dados de reconstrução espacial que foram importados pela última vez.

Captura de Mixed Reality

/api/holographic/mrc/file (GET)

Transfere um ficheiro de realidade mista a partir do dispositivo. Utilize o parâmetro de consulta op=stream para transmissão em fluxo.

Parâmetros

  • nome do ficheiro: Nome, hex64 codificado, do ficheiro de vídeo a obter
  • op: stream

/api/holographic/mrc/file (DELETE)

Elimina uma gravação de realidade mista do dispositivo.

Parâmetros

  • nome do ficheiro: Nome, hex64 codificado, do ficheiro a eliminar

/api/holographic/mrc/files (GET)

Devolve a lista de ficheiros de realidade mista armazenados no dispositivo.

/api/holographic/mrc/photo (POST)

Tira uma fotografia de realidade mista e cria um ficheiro no dispositivo.

Parâmetros

  • holo: capturar hologramas: verdadeiro ou falso (predefinição para falso)
  • pv: capturar câmara PV: verdadeiro ou falso (predefinição para falso)
  • RenderFromCamera: (apenas HoloLens 2) compor a partir da perspetiva da câmara de fotografia/vídeo: verdadeiro ou falso (predefinições para verdadeiro)

/api/holographic/mrc/settings (GET)

Obtém as predefinições de captura de realidade mista predefinidas.

/api/holographic/mrc/settings (POST)

Define as predefinições de captura de realidade mista. Algumas destas definições são aplicadas à captura de fotografias e vídeos do MRC do sistema.

/api/holographic/mrc/status (GET)

Obtém o estado da captura de realidade mista no Portal do Dispositivo Windows.

Resposta

A resposta contém uma propriedade JSON que indica se o Portal de Dispositivos do Windows está a gravar vídeo ou não.

{"IsRecording": boolean}

/api/holographic/mrc/thumbnail (GET)

Obtém a imagem em miniatura do ficheiro especificado.

Parâmetros

  • nome do ficheiro: Nome, hex64 codificado, do ficheiro para o qual está a ser pedida a miniatura

/api/holographic/mrc/video/control/start (POST)

Inicia uma gravação de realidade mista.

Parâmetros

  • holo: capturar hologramas: verdadeiro ou falso (predefinição para falso)
  • pv: capturar câmara PV: verdadeiro ou falso (predefinição para falso)
  • microfone: capturar microfone: verdadeiro ou falso (predefinição como falso)
  • loopback: capturar áudio da aplicação: verdadeiro ou falso (predefinição para falso)
  • RenderFromCamera: (apenas HoloLens 2) compor a partir da perspetiva da câmara de fotografia/vídeo: verdadeiro ou falso (predefinições para verdadeiro)
  • vstab: (apenas HoloLens 2) ativar a estabilização de vídeo: verdadeiro ou falso (predefinição para verdadeiro)
  • vstabbuffer: (apenas HoloLens 2) latência da memória intermédia de estabilização de vídeo: 0 a 30 fotogramas (predefinições para 15 fotogramas)

/api/holographic/mrc/video/control/stop (POST)

Para a gravação da realidade mista atual.

Transmissão em Fluxo de Mixed Reality

Atenção

Devido ao isolamento de loopback, não pode ligar-se à transmissão em fluxo de realidade mista a partir de dentro de uma aplicação num dispositivo.

O HoloLens suporta a pré-visualização em direto da realidade mista através da transferência fragmentada de um mp4 fragmentado.

Os fluxos de realidade mista partilham o mesmo conjunto de parâmetros para controlar o que é capturado:

  • holo: capturar hologramas: verdadeiro ou falso
  • pv: capturar câmara PV: verdadeira ou falsa
  • microfone: microfone de captura: verdadeiro ou falso
  • loopback: capturar áudio da aplicação: verdadeiro ou falso

Se nenhum destes for especificado, os hologramas, a câmara de fotografia/vídeo e o áudio da aplicação serão capturados.

Se forem especificados, os parâmetros não especificados serão predefinidos como falsos

Parâmetros opcionais (apenas HoloLens 2)

  • RenderFromCamera: compor a partir da perspetiva da câmara de fotografia/vídeo: verdadeiro ou falso (predefinição para verdadeiro)
  • vstab: ativar a estabilização de vídeo: verdadeiro ou falso (predefinição para falso)
  • vstabbuffer: latência da memória intermédia de estabilização de vídeo: 0 a 30 fotogramas (predefinição para 15 fotogramas)

/api/holographic/stream/live.mp4 (GET)

Um fluxo de 5Mbits de 1280x720p 30fps.

/api/holographic/stream/live_high.mp4 (GET)

Um fluxo de 5Mbits de 1280x720p 30fps.

/api/holographic/stream/live_med.mp4 (GET)

Um fluxo de 854x480p 30fps de 2,5 Mbit.

/api/holographic/stream/live_low.mp4 (GET)

Um fluxo de 428x240p de 15fps de 0,6 Mbit.

Rede

/api/networking/ipconfig (GET)

Obtém a configuração de IP atual.

Informações do SO

/api/os/info (GET)

Obtém informações do sistema operativo.

/api/os/machinename (GET)

Obtém o nome do computador.

/api/os/machinename (POST)

Define o nome do computador.

Parâmetros

  • name: New machine name, hex64 encoded, to set to

Controlo de Simulação de Percepção

/api/holographic/simulation/control/mode (GET)

Obtém o modo de simulação.

/api/holographic/simulation/control/mode (POST)

Define o modo de simulação.

Parâmetros

  • modo: modo de simulação: predefinição, simulação, remoto, legado

/api/holographic/simulation/control/stream (DELETE)

Eliminar um fluxo de controlo.

/api/holographic/simulation/control/stream (GET/WebSocket)

Abra uma ligação WebSocket para um fluxo de controlo.

/api/holographic/simulation/control/stream (POST)

Crie um fluxo de controlo (a prioridade é necessária) ou publique dados num fluxo criado (streamId obrigatório). Espera-se que os dados publicados sejam do tipo "application/octet-stream".

/api/holographic/simulation/display/stream (GET/WebSocket)

Peça uma transmissão de vídeo de simulação que contenha o conteúdo composto para o sistema apresentado quando estiver no modo "Simulação". Um cabeçalho de descritor de formato simples será enviado inicialmente, seguido de texturas codificadas por H.264, com cada um precedido por um cabeçalho que indica o índice ocular e o tamanho da textura.

Reprodução de Simulação de Percepção

/api/holographic/simulation/playback/file (DELETE)

Eliminar uma gravação.

Parâmetros

  • gravação: nome da gravação a eliminar.

/api/holographic/simulation/playback/file (POST)

Carregue uma gravação.

/api/holographic/simulation/playback/files (GET)

Obtenha todas as gravações.

/api/holographic/simulation/playback/session (GET)

Obtenha o estado de reprodução atual de uma gravação.

Parâmetros

  • gravação: nome da gravação.

/api/holographic/simulation/playback/session/file (DELETE)

Descarregue uma gravação.

Parâmetros

  • gravação: nome da gravação a descarregar.

/api/holographic/simulation/playback/session/file (POST)

Carregar uma gravação.

Parâmetros

  • gravação: nome da gravação a carregar.

/api/holographic/simulation/playback/session/files (GET)

Obtenha todas as gravações carregadas.

/api/holographic/simulation/playback/session/pause (POST)

Colocar uma gravação em pausa.

Parâmetros

  • gravação: nome da gravação.

/api/holographic/simulation/playback/session/play (POST)

Reproduzir uma gravação.

Parâmetros

  • gravação: nome da gravação.

/api/holographic/simulation/playback/session/stop (POST)

Pare uma gravação.

Parâmetros

  • gravação: nome da gravação.

/api/holographic/simulation/playback/session/types (GET)

Obtenha os tipos de dados numa gravação carregada.

Parâmetros

  • gravação: nome da gravação.

Gravação de Simulação de Percepção

/api/holographic/simulation/recording/start (POST)

Inicie uma gravação. Apenas uma única gravação pode estar ativa ao mesmo tempo. Um destes deve ser definido: cabeça, mãos, espaçomapping ou ambiente.

Parâmetros

  • head: defina como 1 para registar dados principais.
  • mãos: defina como 1 para gravar dados manos.
  • spatialMapping: defina como 1 para registar o mapeamento espacial.
  • ambiente: defina como 1 para registar dados do ambiente.
  • name: nome da gravação.
  • singleSpatialMappingFrame: defina como 1 para gravar apenas uma única moldura de mapeamento espacial.

/api/holographic/simulation/recording/status (GET)

Obter estado de gravação.

/api/holographic/simulation/recording/stop (GET)

Pare a gravação atual. A gravação será devolvida como um ficheiro.

Dados de desempenho

/api/resourcemanager/processes (GET)

Devolve a lista de processos em execução com detalhes.

Devolver dados

  • JSON com lista de processos e detalhes para cada processo

/api/resourcemanager/systemperf (GET)

Devolve estatísticas de desempenho do sistema (leitura/escrita de E/S, estatísticas de memória, etc.

Devolver dados

  • JSON com informações do sistema: CPU, GPU, Memória, Rede, E/S

Energia

/api/power/battery (GET)

Obtém o estado atual da bateria.

/api/power/state (GET)

Verifica se o sistema está num estado de baixa potência.

Controlo Remoto

/api/control/restart (POST)

Reinicia o dispositivo de destino.

/api/control/shutdown (POST)

Encerra o dispositivo de destino.

Gestor de Tarefas

/api/taskmanager/app (DELETE)

Para uma aplicação moderna.

Parâmetros

  • pacote: nome completo do pacote de aplicação, codificado por hex64
  • forcestop: Forçar a paragem de todos os processos (=sim)

/api/taskmanager/app (POST)

Inicia uma aplicação moderna

Parâmetros

  • appid: PRAID da aplicação a iniciar, codificado com hex64
  • pacote: nome completo do pacote de aplicação, codificado por hex64

Gestão de Wi-Fi

/api/wifi/interfaces (GET)

Enumera interfaces de rede sem fios.

Devolver dados

  • Lista de interfaces sem fios com detalhes (GUID, descrição, etc.)

/api/wi-fi/rede (DELETE)

Elimina um perfil associado a uma rede numa interface especificada.

Parâmetros

  • interface: guid da interface de rede
  • perfil: nome do perfil

/api/wi-fi/redes (GET)

Enumera redes sem fios na interface de rede especificada.

Parâmetros

  • interface: guid da interface de rede

Devolver dados

  • Lista de redes sem fios encontradas na interface de rede com detalhes

/api/wifi/network (POST)

Liga ou desliga a uma rede na interface especificada.

Parâmetros

  • interface: guid da interface de rede
  • ssid: ssid, hex64 codificado, para ligar a
  • op: ligar ou desligar
  • createprofile: sim ou não
  • chave: chave partilhada, codificada com hex64

Gravador de Desempenho do Windows

/api/wpr/customtrace (POST)

Carrega um perfil WPR e inicia o rastreio com o perfil carregado.

Payload

  • corpo http em conformidade com várias partes

Devolver dados

  • Devolve o estado da sessão WPR.

/api/wpr/status (GET)

Obtém o estado da sessão WPR

Devolver dados

  • Estado da sessão WPR.

/api/wpr/trace (GET)

Para uma sessão de rastreio WPR (desempenho).

Devolver dados

  • Devolve o ficheiro ETL de rastreio

/api/wpr/trace (POST)

Inicia uma sessão de rastreio WPR (desempenho).

Parâmetros

  • perfil: Nome do perfil. Os perfis disponíveis são armazenados em perfprofiles/profiles.json

Devolver dados

  • No início, devolve o estado da sessão WPR.

Ver também