unifiedremote / docs Goto Github PK
View Code? Open in Web Editor NEWOfficial API documentation.
Official API documentation.
the example shows:
server.update({
id = "myinputdialog",
type = "input",
title = "Write something!",
ontap = "myinputdialog_done"
});
actions.myinputdialog_done = function(txt)
if (is_valid(txt)) then
fancy_stuff(txt) ...
end
end
but is there any event for when users click "Cancel" on the dialog?
It would be nice to have a vertical variant of the slider
Hi, I didn't really find another repo to report this bug, so I hope here's okay.
The issue I'm having is that, on Windows 10, whenever I start Unified Remote I get this error: .
I googled the message "There is no disk in the drive. Please insert a disk in drive {drive-letter}" and apparently it's something that happens to removable drives (in my case it's a DVD drive), but can be caught.
It blocks the Unified Remote service to run, so I can't use a remote until I hit 'Continue'. Nothing major ofcourse, but would be cool if it was fixed.
If you need any more details, let me know!
The libraries section is missing the link to lib/screen.md, so you have to know that there's such a library in order to find it.
Hi,
I'm pretty new to unified remote and I've been doing some small tests based on the examples but I would like know if it is possible to enhance actions by adding logic based on the output or state of a variable/keypress/events. If so, How?
Thanks.
I started receiving random BSODs two weeks ago after cold-booting (off overnight) my computer so I enabled Driver Verifier to track down the cause.
I immediately got the following BSOD when booting into Windows:
On Sun 4/3/2016 8:42:07 AM GMT your computer crashed
crash dump file: C:\Windows\Minidump\040316-7566-01.dmp
This was probably caused by the following module: wdf01000.sys (Wdf01000+0x47C0)
Bugcheck code: 0xC9 (0x22E, 0xFFFFF88000E2D7C0, 0xFFFFF98006092D30, 0x0)
Error: DRIVER_VERIFIER_IOMANAGER_VIOLATION
file path: C:\Windows\system32\drivers\wdf01000.sys
product: Microsoft® Windows® Operating System
company: Microsoft Corporation
description: Kernel Mode Driver Framework Runtime
Bug check description: This is the bug check code for all Driver Verifier
This appears to be a typical software driver bug and is not likely to be caused by a hardware problem.
The crash took place in a standard Microsoft module. Your system configuration may be incorrect. Possibly this problem is caused by another driver on your system which cannot be identified at this time.
On Sun 4/3/2016 8:42:07 AM GMT your computer crashed
crash dump file: C:\Windows\memory.dmp
This was probably caused by the following module: uvhid.sys (uvhid+0x1585)
Bugcheck code: 0xC9 (0x22E, 0xFFFFF88000E2D7C0, 0xFFFFF98006092D30, 0x0)
Error: DRIVER_VERIFIER_IOMANAGER_VIOLATION
file path: C:\Windows\system32\drivers\uvhid.sys
product: Windows ® Win 7 DDK driver
company: Windows ® Win 7 DDK provider
description: HID mini driver for Unified Virtual HID
Bug check description: This is the bug check code for all Driver Verifier
This appears to be a typical software driver bug and is not likely to be caused by a hardware problem.
A third party driver was identified as the probable root cause of this system error. It is suggested you look for an update for the following driver: uvhid.sys (HID mini driver for Unified Virtual HID, Windows ® Win 7 DDK provider).
Google query: uvhid.sys Windows ® Win 7 DDK provider DRIVER_VERIFIER_IOMANAGER_VIOLATION
Crash Dump Analysis provided by OSR Open Systems Resources, Inc. (http://www.osr.com)
Online Crash Dump Analysis Service
See http://www.osronline.com for more information
Windows 7 Kernel Version 7601 (Service Pack 1) MP (8 procs) Free x64
Product: WinNt, suite: TerminalServer SingleUserTS
Built by: 7601.19160.amd64fre.win7sp1_gdr.160211-0600
Machine Name:
Kernel base = 0xfffff80003a5c000 PsLoadedModuleList = 0xfffff800
03ca3730
Debug session time: Sun Apr 3 04:42:07.815 2016 (UTC - 4:00)
System Uptime: 0 days 0:00:11.549
DRIVER_VERIFIER_IOMANAGER_VIOLATION (c9)
The IO manager has caught a misbehaving driver.
Arguments:
Arg1: 000000000000022e, The caller has completed a successful IRP_MJ_PNP instead of passing it down.
Arg2: fffff88000e2d7c0, The address in the driver's code where the error was detected.
Arg3: fffff98006092d30, IRP address.
Arg4: 0000000000000000
TRIAGER: Could not open triage file : e:\dump_analysis\program\triage\modclass.ini, error 2
BUGCHECK_STR: 0xc9_22e
DRIVER_VERIFIER_IO_VIOLATION_TYPE: 22e
FAULTING_IP:
Wdf01000!FxDevice::DispatchWithLock+0
fffff880`00e2d7c0 48895c2408 mov qword ptr [rsp+8],rbx
FOLLOWUP_IP:
uvhid+1585
fffff880`04bbd585 ?? ???
IRP_ADDRESS: fffff98006092d30
DEVICE_OBJECT: fffffa801c688780
CUSTOMER_CRASH_COUNT: 1
DEFAULT_BUCKET_ID: VERIFIER_ENABLED_VISTA_MINIDUMP
PROCESS_NAME: System
CURRENT_IRQL: 2
LAST_CONTROL_TRANSFER: from fffff80003f654ec to fffff80003ad0080
STACK_TEXT:
fffff880033a8e48 fffff800
03f654ec : 00000000000000c9 00000000
0000022e fffff88000e2d7c0 fffff980
06092d30 : nt!KeBugCheckEx
fffff880033a8e50 fffff800
03f6f5aa : fffff80003f63b00 fffff880
00e2d7c0 fffff98006092d30 00000000
00000000 : nt!VerifierBugCheckIfAppropriate+0x3c
fffff880033a8e90 fffff800
03f705b3 : 000000000000022e fffff980
06092d30 fffff98006092d30 00000000
ffffffff : nt!ViErrorFinishReport+0xda
fffff880033a8ee0 fffff800
03f7bff2 : fffffa80166fe000 00000000
00000000 0820000700000365 fffff800
03ad3002 : nt!VfErrorReport1+0x63
fffff880033a8f80 fffff800
03f6515e : fffffa801d606240 00000000
00000001 0000000000000000 00000000
00000000 : nt!VfPnpVerifyIrpStackUpward+0xb2
fffff880033a8fe0 fffff800
03f71c5d : fffffa801bf2fd70 fffffa80
1d606010 fffff98006092d30 fffff980
06092d30 : nt!VfMajorVerifyIrpStackUpward+0x6e
fffff880033a9020 fffff800
03f8363d : fffff98006092ed8 fffff880
033a9210 0000000000000000 fffff980
06092ed8 : nt!IovpCompleteRequest2+0xad
fffff880033a9090 fffff800
03ad3ad1 : fffff98006092edb 00000000
00000000 0000000000000013 fffff800
03b960b3 : nt!IovpLocalCompletionRoutine+0x9d
fffff880033a90f0 fffff800
03f7aeef : fffff98006092d30 00000000
00000000 fffff98006092d00 00000000
00000000 : nt!IopfCompleteRequest+0x341
fffff880033a91e0 fffff880
04bbd585 : fffffa801c6dd080 fffff980
06092ed8 0000000000000000 fffff980
06092d30 : nt!IovCompleteRequest+0x19f
fffff880033a92b0 fffffa80
1c6dd080 : fffff98006092ed8 00000000
00000000 fffff98006092d30 fffffa80
1bf14d10 : uvhid+0x1585
fffff880033a92b8 fffff980
06092ed8 : 0000000000000000 fffff980
06092d30 fffffa801bf14d10 fffff880
00e2d706 : 0xfffffa801c6dd080 fffff880
033a92c0 0000000000000000 : fffff980
06092d30 fffffa801bf14d10 fffff880
00e2d706 000000000000001b : 0xfffff980
06092ed8
STACK_COMMAND: kb
SYMBOL_STACK_INDEX: a
SYMBOL_NAME: uvhid+1585
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: uvhid
IMAGE_NAME: uvhid.sys
DEBUG_FLR_IMAGE_TIMESTAMP: 560d0254
FAILURE_BUCKET_ID: X64_0xc9_22e_VRF_uvhid+1585
BUCKET_ID: X64_0xc9_22e_VRF_uvhid+1585
I am making a custom remote that requires the grave key (the other character on the tilde key).
I set it to grave as found on the available keys list, but it does not work.
Here is my remote.lua code:
`local kb = libs.keyboard;
-- Documentation
-- http://www.unifiedremote.com/api
-- Keyboard Library
-- http://www.unifiedremote.com/api/libs/keyboard
--@help Full Screen
actions.fullScreen = function ()
kb.stroke("f");
end
--@help Pause
actions.pause = function ()
kb.stroke("space");
end
--@help Switch Screens
actions.switchSCreens = function ()
kb.stroke("grave");
end`
Hi
I want to do some automation, and unified remote is the perfect tool for this.
I want to use the keypad remote via curl to get some things inputted in an app running as windows administrator
I know how to get the keys pressed:
@curl "http://localhost:9510/client/request" -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:88.0) Gecko/20100101 Firefox/88.0" -H "Accept: */*" -H "Accept-Language: en-GB,en;q=0.5" -H "Content-Type: application/x-www-form-urlencoded; charset=UTF-8" -H "UR-Connection-ID: %var%" -H "X-Requested-With: XMLHttpRequest" -H "Origin: http://localhost:9510" -H "Connection: keep-alive" -H "Referer: http://localhost:9510/client/" -H "Pragma: no-cache" -H "Cache-Control: no-cache" --data-raw "{""ID"":""Unified.Numpad"",""Action"":7,""Request"":7,""Run"":{""Name"":""num_9""},""Source"":""web-f4dd3b33-f983-4033-b704-6720b1686f7c""}"
But I don't know how to get the remote initialized properly, as in, I don't know how to get the connection ready.
Is there any documentation on this?
Maybe this is not an issue but I am having issues with it. Here's code:
`
-- Documentation
-- http://www.unifiedremote.com/api
-- OS Library
-- http://www.unifiedremote.com/api/libs/os
--@help Command 1
actions.command1 = function ()
os.execute("C:\Users\math_\Desktop\Streamlabs.lnk");
end
--@help Command 2
actions.command2 = function ()
os.execute("C:\Users\math_\Desktop\Netflix.lnk");
end
--@help Command 3
actions.command3 = function ()
os.start("chrome");
end
`
Streamlabs will launch with a command line window in the background(I would like to avoid this).
Netflix will launch just fine.
I could not get chrome to start any other way.
Whenever I pointed directly to a .exe file using os.start or os.execute it would launch the process but no window would open.
os.open would do nothing on both .exe and .lnk
I am trying to make a custom remote with buttons starting different Windows 10 apps.
Building upon the example files, I already defined appropriate functions using os.start() and a layout with buttons to trigger them on tap.
To keep things flexible, I do not want to hardcode the path to each app's executable in the .lua.
Instead, I use os.start() to launch generic Windows .lnk files inside a subfolder of the remote which "point" to the executables:
actions.command1 = function ()
os.start("\"C:\\ProgramData\\Unified Remote\\Remotes\\Custom\\WinApps\\Links\\Command1.lnk\"");
end
Unfortunately, the remote shows up on my client, but the buttons won't work.
Tried to run a .bat file instead, to no avail either.
Is os.start() limited to .exe files only?
Or am I maybe doing something wrong with the string escapes?
(I added surrounding escaped doublequotes to the string because I know that command prompt requires them if the path contains spaces.)
I have shortcuts that require the use of these symbols to work in some applications, why are these supported in the mac keys but not in windows?
What's the best way to store secrets locally? I needs to build http REST requests with a Bearer token, but don't want to store it in my remote control files. I was thinking FS read file, but then how would I parse if I have it kept in YAML, JSON or such?
As of today, the server's changelog ends with version 3.3.0. On your download page I find 3.4 and above. Could you please document these improvements?
What happened to the joystick library, and is there any way to get it back?
I'm assuming with that, we can set it up as a separate joystick device with X number of buttons, so that we can then map that within a game correct?
If so, that's /PRECISELY/ what I was looking into this for. Yet, I'm unable to find anything on it save for a dead link in the docs.
I'd like to implement unifiedremote/Remotes#120 to be something like https://iooio.io/toucharch/
I need icons for copy and paste.
But I found only these icons https://github.com/unifiedremote/Docs/blob/master/res/icons.md
Is it possible to send icons or image as text/base64 to the phone? And use image tag to display it in the button?
I'd like to create a multi-touch bar using button components contains an icon and label like:
<grid ontap="foo_tapped">
<label id="my_label" text="foo" />
<button image="img.png" />
</grid>
And I'd like to create such component on new data comes from VSCode extension, which describes the button components to be render:
local s = require("socket").new();
s:ondata(function (data)
local b = require("buffer").new("utf8");
b:write(data);
local button_data = b:readstring() // or something to get the new button list
end);
libs.server.update(xxxx) // how to do so like I can do using document.createElement or ReactDom.render ?
I think I can use libs.server.update
but https://github.com/unifiedremote/Docs/blob/master/libs/server#server_update is 404
And in https://github.com/unifiedremote/Docs/blob/master/libs/layout.md#advanced it is said that it can only handle lists or dialogs, can't handle complex component like the one above.
So how can I achieve this?
When kb.stroke("f13"); or any F key above 12 is called the UR Server crashes.
Version 3.3.5.738 (41)
OS linux
Platform Linux 4.2.0-35-generic x86_64 (Ubuntu Gnome 15.10)
I do not know if it is wanted behaviour but if I use win.list(false) and try to access the task's name attribute, I'll get an empty string.
I tried to retrieve the executable name by GetModuleFileNameEx (ffi) but this function cannot be resolved.
EDIT: Wrong repository, sorry
like the title. does not even seem to work with the basic keyboard or my custom remotes.
Am I missing something?
Thanks in advance for the help
Keyboard lib not sending F13-F24 keys.
x
I'm trying to modify the basic input remote to add a middle mouse button, but I can't seem to see any changes I make take effect. I'm not even sure if I'm modifying the correct remote. I'm in the Basic Input folder, but the layout file doesn't seem to correspond to what actually is displayed in the app. But I don't see any other remotes that would indicate it to be the correct one to make edits on.
In your section for the lua "os library" you say we can use os.start()
But I cant find anything about os.start() on the internet.
How can I fire and forget an executable from the remote?
https://github.com/unifiedremote/Docs/blob/master/libs/os.md#osstart-command-arg1-arg2--
I need this key for a shortcut. Couldn't find a correspondence for among Windows keycodes.
I'm creating a remote for Zoom and I'm trying to launch Edge with the url of the meeting. I'm using this code:
--@help Start Zoom Meeting actions.command1 = function () os.start("C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe", "<url for meeting>"); end
It's not working. I opened the example remote for running applications and those aren't working either. I tried the first button but calc didn't start. My other buttons are working fine (keystrokes).
I'm on a Win10 OS with server version 3.7.0.2352 (46) and the latest android app
Is it possible to display an image as a background along with the button label? I would like to identify each button with a small logo on one of the corners but still display the button caption.
Hi everyone and thanks for this amazing product !
I can't achieve to get os.start() to work.
Update the remote.lua of the Examples/Run remote with this :
--@help Command 1
actions.command1 = function ()
os.start("firefox");
end
--@help Command 2
actions.command2 = function ()
os.execute("firefox");
end
Firefox never launches. What I'm doing wrong ?
fabien@TOUR:~$ whereis firefox
firefox: /usr/bin/firefox /usr/lib/firefox /etc/firefox
Hi,
I got os.open working for .exe files. However, the app is starting in the background. What can I do to start it in the foreground?
lua example
--@help Command 4
actions.kodi = function ()
os.open("C:\\Program Files\\Kodi\\kodi.exe");
end
hi,
in the bundled daum potplayer remote file the commands are constants that look like
local WM_COMMAND = 0x111;
local CMD_PLAY = 20001;
local CMD_PAUSE = 20000;
local CMD_STOP = 20002;
local CMD_PREVIOUS = 10123;
local CMD_NEXT = 10124;
local CMD_PLAY_PAUSE = 10014;
local CMD_VOLUME_UP = 10035;
local CMD_VOLUME_DOWN = 10036;
local CMD_TOGGLE_MUTE = 10037;
local CMD_TOGGLE_PLAYLIST = 10011;
local CMD_TOGGLE_CONTROL = 10383;
local CMD_OPEN_FILE = 10158;
local CMD_TOGGLE_SUBS = 10126;
local CMD_TOGGLE_OSD = 10351;
local CMD_CAPTURE = 10224;
what do the numbers correspond do? key press codes or?
I'm trying to find out the term i should use to search for additional reference so i can add my own functionality.
thanks
"open" opens aimp
but "open all" opens "wmplayer.exe"
This bit of sample code from the docs always fails with a "Null pointer" error:
local s = require("socket").new();
print(s:connected()); -- false
Running on Windows 10, Unified Remote version 3.6.1.2342 (45)
I made a remote for youtube but i got a problem with search button ("/"). Pressing it activates search field on youtube page. When i use stroke("/") it doesn't work and in notepad i found it returns "\". I tried to use text("/") and it works fine, but when i change my windows input language to russian it stops working, although returns "/". I found out that 'press' and 'stroke' methods work regardless of keyboard layout, but 'text' and 'character' don't. Also "<" and ">" symbols with 'stroke' or 'press' method return "\".
Any ideas?
Because the layout.[id].image, layout.[id].text are not persistend after unload and not sute how to make it.
Now I add a function to events.focus but it's kinda slow to update the layout fast.
layout.xml - https://pastebin.com/8cPCuqxw
remote.lua - https://pastebin.com/XT2ptvbP
meta.prop -
meta.name: Elite Dangerous v2
meta.author: anInnocentBystander
meta.description: Let's try not to crash the ship this time. mmmKay?
meta.tags: EliteDangerous
meta.tags.category: input
meta.platform: linux
meta.layout: layout.xml
I've been working on this a few days, checking back and forth between my phone and the layout file to get things positioned right. Just today started getting the keymap setup in remote.lua, when suddenly this monstrosity appears in the log:
2022-01-16 23:18:48 (I) Loader: loading remote: /home/hal_j/.urserver/remotes/custom/EliteDangerous/meta.prop
2022-01-16 23:18:48 (E) Loader: could not load layout: File not found
It's /there/. It didn't move. It wasn't renamed, although I tried that and modifying, even specifying layout.xml in meta.prop. Did I miss a character in something somewhere that's breaking it? It would be helpful if it showed the path it was looking for on the layout so I could confirm I'm not crazy.
I was like 99% done with it too, and ready to actually set it up in the game's controls and give it a field test.
Buttons which send F13-F24 key presses never actually send the key press on windows.
I have searched through the files and I do know that I can add custom icons in a remote, but I was wondering if there was a way to add them to quick actions part on android as I can not seem to find the location they are stored.
I'm going to use the Kodi dpad layout item found here: https://github.com/unifiedremote/Remotes/blob/f7e1f85cf8e72eefae16b523bae7941181070e19/Main/Kodi Keyboard Dpad/layout.xml
Where's the documentation for this?
Thanks!
https://github.com/unifiedremote/Docs/blob/master/res/buttons.md and https://github.com/unifiedremote/Docs/blob/master/res/keys.md
They contain enigmatic words.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.