You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@streampipes.apache.org by Julian Feinauer <j....@pragmaticminds.de> on 2020/06/01 20:07:07 UTC

Re: [PROPOSAL] Add better PLC4X-API support for Input Dialogs

Hi,

totally agree with Chris position here.
This should be a first class citizen of the API!

@Phil: We could have a discussion about your / our current approaches and how we ideally could merge them together in the API

Julian

Am 30.05.20, 10:05 schrieb "Christofer Dutz" <ch...@c-ware.de>:

    Hi Phillip,

    In plc4x we always had the proposed functionality to browse remote plcs. This should be used to list remote resources. However this api part s never filed with life. I think we should start doing this. But I would consider this part a first class citizen in the api and not think of it as a utility function.

    Chris
    ________________________________
    Von: Philipp Zehnder <ze...@apache.org>
    Gesendet: Freitag, 29. Mai 2020 23:40
    An: dev@streampipes.apache.org <de...@streampipes.apache.org>
    Cc: dev@plc4x.apache.org <de...@plc4x.apache.org>
    Betreff: Re: [PROPOSAL] Add better PLC4X-API support for Input Dialogs

    Hi,

    this is a very cool idea and it would definitely improve the user experience for PLC4X.

    Especially, the input validation and autocomplete for field addresses would be helpful for the StreamPipes integration.

    Is it possible for some protocols to read a list of all available variables and if so, which ones?

    So far, we decided to provide for each protocol an individual adapter. We thought this makes sense, because the naming and technical background of the protocols might differ.
    (E.g. we provide a CSV upload for S7 PLCs, and I do not know if that would be possible for Modbus for example)
    Does that make sense to you or do you have any alternative ideas?

    Status of the PLC4X integration into StreamPipes:
    Currently we support S7 and we are working on Modbus.
    @Chris you implemented an adapter for BACnet/IP, right?

    Any ideas or suggestions what we should integrate next?

    Philipp


    On 2020/05/29 08:50:18, Julian Feinauer <j....@pragmaticminds.de> wrote:
    > Hi folks,>
    >
    >
    >
    > this is an old Issue (see https://cwiki.apache.org/confluence/display/PLC4X/API+Extension+for+1.0).>
    >
    > What I generally would like to have is a way to communicate with the API / the Driver without needing a Connection to e.g. „talk“ about the address input and probably also the connection parameters.>
    >
    >
    >
    > To give you an example, consider I want to have a mask where users could enter their url and address.>
    >
    > It would be nice to get all available protocols>
    >
    >
    >
    > Map<String, Driver> map = driverManager.getAllRegisteredProtocols()>
    >
    >
    >
    > to show it in a drop down.>
    >
    > When user selects one I could generate a form to enter all connection parameters>
    >
    >
    >
    > driver.getConnectionParameters();>
    >
    >
    >
    > And then, when he wants to enter a Field Address I could go on like that and could do many things already with the Driver without hte need to have a Conneciton in Place already. Like:>
    >
    >
    >
    > driver.validate(„%DB.asdf“) <-- fails>
    >
    > driver.getValidatingRegex() <-- Could be used in my forms>
    >
    >
    >
    > or even get more detailed information, like an abstract address specification that I could use to build a form.>
    >
    > For S7 this could for example be>
    >
    >
    >
    > List<AddressPart> driver.getAddressParts()>
    >
    >
    >
    > which could be something like>
    >
    >
    >
    > MemoryPart <- Enum-Like „DB, Q, I, ...“ and so on.>
    >
    >
    >
    > Tob e clear: I ONLY want to extend the current API and not change anything setup. So all APIs would stay in Place as is but this would help people who allow their users to input PLC4X Informations like we do or e.g. Streampipes (thus, added as CC here).>
    >
    >
    >
    > WDYT?>
    >
    >
    >
    > Julian>
    >
    >