mirror of
https://github.com/1Remote/1Remote.git
synced 2026-04-25 13:36:03 +03:00
[GH-ISSUE #255] Additional settings to connection using protocol #1183
Labels
No labels
area-configuration
area-ct-app
area-ct-rdp
area-ct-remoteapp
area-ct-ssh
area-ct-vnc
area-launcher
area-list
area-tags
area-teamwork
bug
chore
dependencies
general-build/ci
general-performance
general-refactor
general-security
general-supportive
general-ux
meta-documentation
meta-enhancement
meta-enhancement
meta-feature
meta-help-wanted
meta-unknown-error
priority-hi
priority-low
pull-request
question
resolution-duplicate
resolution-invalid
resolution-wontfix
stale
task-put-off
task-still-considering
task-working-in-progress
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/1Remote#1183
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @majkinetor on GitHub (Jun 5, 2022).
Original GitHub issue: https://github.com/1Remote/1Remote/issues/255
Originally assigned to: @majkinetor, @VShawn on GitHub.
Current protocol implementation feels uncomplete. Mostly because you can't map CLI parameters to GUI fields per connection.
So after #239, I started using wfreerdp, and it works nice and presents less problems to me on specific connections then RDP. For example, with #254 I can no longer use RDP to connect to my media center, but wfreerdp works nice. Also, on that particular machine RDP via PRM is problematic (I get popups and sometimes it can't find machine?). So I switched to wfreerdp and noticed that its cumbersome to tweak its parameters - when I need full screen resolution or remote audio for example, I need to change protocol, but then, all other connections depending on that protocol are changed. Fix for this is to create another protocol just to change single parameter.
Original protocol ideas are here and they included mapping CLI options to GUI params. But since that may be non-trivial to implement, how about we make it quick and trivial and add just one field for all connections using protocols, Additional Settings that will be joined with the one that is given in protocol definition by adding it as a suffix (so complete command line will be
<CmdParameter> <AdditionalSettings>). This is also in line with RDP that has this very same option.So, if protocol is given:
/v:%PRM_HOSTNAME% /u:%PRM_USERNAME% /p:%PRM_PASSWORD% +decorationsif I have this in connection:
/f /audio-mode:1The resulting CMD line will be specific to that connection and some mandatory things will be set for all connections.
In the case of wfreerdp, it allows me to tweak any connection independently very much the same as with regular RDP, just via CLI. I add markdown note with URL to parameters and call it a day. I imagine this is very useful for any protocol.
Note that this RDP feature has autocomplete list:
We could have this with any protocol by allowing one to add all possible options in a list that PRM will later use to filter it out.
/cc @dethknite
@dethknite commented on GitHub (Jun 6, 2022):
Nice. Certainly would make using alternate RDP implementations much less cumbersome. The VNC hack was really limited and eventually I gave up trying to implement it as hardcoding too many variables just didn't work.
@majkinetor commented on GitHub (Jun 6, 2022):
I didn't have a problem where "it just didn't work", but its totally unpractical and cumbersome for sure.
@dethknite commented on GitHub (Jun 6, 2022):
It doesn't work if a user/pass to a server is different.. as the pass has to be hardcoded.
@majkinetor commented on GitHub (Jun 6, 2022):
Nah, use this:
/v:%PRM_HOSTNAME% /u:%PRM_USERNAME% /p:%PRM_PASSWORD%.PRemoteM will then set this based on connection and its GUI options.
@dethknite commented on GitHub (Jun 6, 2022):
/p:%PRM_PASSWORD% didn't work for me
@majkinetor commented on GitHub (Jun 6, 2022):
That is strange. Try copy/paste my command above because that is exactly what I copy pasted from my protocol and it works on multiple connections... U use 0.7 beta.
@VShawn commented on GitHub (Jun 9, 2022):
I didnt make a alternate runner for RDP because there are too many params in RDP.
I thought about this approch months ago.
what stopping me to make implement:
Too hardcore for unskilled pepole if we make UI like this:
Noticed We may loss the tab feature support for RDP if start with cli. (currently tab view can not handle a hosting window like KiTTY switch between full-screen and non-full screen)
@majkinetor commented on GitHub (Jun 9, 2022):
Yet we have this kind of hardcore in RDP? Also, custom protocols are NOT for unskilled people.
Not sure what you mean, but this can not be true. The end effect of this additional field would be exactly the same as we have now, just way less awkward to use.
@VShawn commented on GitHub (Jun 9, 2022):
tab feature support I mean:
with hosting wfreerdp.exe, this full screen button won't work in current tab window.
@majkinetor commented on GitHub (Jun 9, 2022):
dog.310? :) LOL
Well, that is irrelevant to this problem, no? I doubt this can be fixed with "CLI protocol" - even if you know exact parameter to make it full screen, you will need to restart the process to apply it. Seamless work for random CLI protocol would require some form of IPC which is protocol specific and can not be done this way (or full blown PRM plugins which is a lot of work). This feature is not meant to provide ultimate user experience but to just make it work on acceptable level within PRM connection management system.
In the meantime, not being able to specify CLI protocol specifics on any connection makes this feature almost unusable.
@VShawn commented on GitHub (Jun 9, 2022):
also parameter translate is needed
e.g. in we stroe
2as multi-screen flaggithub.com/1Remote/PRemoteM@582bde4529/Ui/Model/Protocol/RDP.cs (L20-L25)while wfreerdp.exe using CLI parameter
/multimonas multi-screen flagwhich means we need translate
2to/multimonwhen RDP using runner wfreerdp.exe.@majkinetor commented on GitHub (Jun 9, 2022):
Not sure about it:
https://github.com/awakecoding/FreeRDP-Manuals/blob/master/User/FreeRDP-User-Manual.markdown#command-line-interface
@majkinetor commented on GitHub (Jun 4, 2023):
I will close this because I the entire protocol feature needs to redesigned from zero, its too cumbersome currently which we will do in discussion.
https://github.com/1Remote/1Remote/discussions/432