Implementing a User-Friendly File Path Picker in Plugins

Completed

Comments

16 comments

  • Avatar
    Ichiro

    Hi Vikram

    Thank you for your suggestions and feedback. Unfortunately, we don’t have plans to open this option at the moment.

    Our current design requires each plugin to be placed in a specific folder before the server starts, ensuring the plugin is correctly loaded and ready for use once the server is up and running. This means that plugins cannot be loaded dynamically after the server has started.

    Allowing plugins to be loaded from different locations would not simplify the loading process. Instead, it might increase some burden on troubleshooting and potentially cause permission issues on the OS level due when plugins are placed in certain locations, leading to improper functionality.

    In Nx Witness, plugins can be easily enabled or disabled using the Desktop Client, making the installation or setup a one-time process, so you don’t need to touch them again. We plan to maintain our current approach for the time being. However, we will certainly consider alternative approaches in the future.

    Thanks for your suggestions and we look forward to your feedback in the future.

    0
    Comment actions Permalink
  • Avatar
    Vikram

    I feel like my question was not properly understood. I did not want to dynamically load the plugin. Instead, I wanted to integrate ancillary data, such as the user's profile image required by the plugin, directly into NX without using a separate program.

    0
    Comment actions Permalink
  • Avatar
    Ichiro

    Hi Vikram,

    Thanks for your question. Sorry for the misunderstanding, I saw the modified version of your post, now I got the idea.  I assume the "button" might be a possible option to you. (You can find the detail in settings_model.md)

    ## Button

    An action button. Technically it is a setting which does not have a value, but can be marked with
    `"isActive" = "true"`. As for any Active setting, it allows to request a set of parameters via
    offering a dialog to the user, and implement any reaction in the Active Setting call-back code, as
    well as display a message to the user or open a URL in the web browser.

    Have you tried this setting object to see if that fits your desire?

    0
    Comment actions Permalink
  • Avatar
    Vikram

     yes. I already tried calling a file picker on it via some windows api, but without success.

    0
    Comment actions Permalink
  • Avatar
    Ichiro

    Hi Vikram,

    Thanks for the confirmation. You are right, as the call-back actions are executed on the server side.  I am afraid the request might not be possible at the moment via the SDK.  Likely you need a separated program to achieve this at the moment.

    Thanks for your understanding.

    0
    Comment actions Permalink
  • Avatar
    Ichiro

    BTW, this is something needs to be implemented on both SDK and our desktop client. 
    It is likely we will put this into a backlog for further improvement, thanks for this valuable feedback.

     

     

    JIRA-VMS-53320

    1
    Comment actions Permalink
  • Avatar
    Vikram
    I was able to circumvent by displaying a web page within the dialogue. If I can dynamically handle the response from the web page, it seems I could provide more flexible functionality
    0
    Comment actions Permalink
  • Avatar
    Ichiro

    Hi Vikram

    Thanks for your suggestions, but is that possible you can elaborate more about "dynamically handle the response" ?  What are the "flexible functionalities" you referred to? 

    We are happy to see what we might be able to help and considered to extend if it does not need too much effort to change the core. 

    0
    Comment actions Permalink
  • Avatar
    Vikram

    I was able to freely implement the UI and perform the actions I wanted within the web page, but I could not do anything outside the dialog, such as closing the window or opening another message dialog based on the execution results.

    If you can close the dialog or open a specific dialog depending on the result returned from the page, I think flexible implementation will be possible with few changes.

    thanks!

    0
    Comment actions Permalink
  • Avatar
    Vikram

    And also, does the web page displayed in object action not apply a proxy? I somehow have that feeling

    0
    Comment actions Permalink
  • Avatar
    Ichiro

    Hi Vikram

    Thanks for your question, can you elaborate more what do you mean by "in object action"? 

    Which web page in which part you mentioned? Can you also provide the screen capture for reference?

     

    Thanks.

    0
    Comment actions Permalink
  • Avatar
    Vikram

    Ichiro

    It's the web page displayed in the executeActionWithUrlResult function within the stub object action.

    0
    Comment actions Permalink
  • Avatar
    Ichiro

    Hi Vikram,

    That is a server side action, so it is basically get to the URL via your server, as the plugin is a server side component. We don't offer the relay for that page at the moment.  It is utilizing the network of the server. 

     

    Is this what you may want to ask?
    Hope this answers to your questions, thanks,

    0
    Comment actions Permalink
  • Avatar
    Vikram

    Ichiro
    After applying the proxy in the VMS layout, calling http://localhost correctly calls the localhost where the server is located. However, calling it from the object action calls the client's localhost.

    0
    Comment actions Permalink
  • Avatar
    Ichiro

    Thanks Vikram

    We will discuss the issue there in that post.

    0
    Comment actions Permalink

Please sign in to leave a comment.