[ome-devel] OME python binding
Colin Blackburn
C.Blackburn at dundee.ac.uk
Wed Oct 1 16:40:02 BST 2014
Hi Yanling,
We are planning to implement a DropBox facility for selecting the destination container for imports in our next major release, 5.1.
Cheers,
Colin
On 30 Sep 2014, at 19:33, Yanling Liu <vrnova at gmail.com> wrote:
> Tested Dropbox and it works very well.
>
> Just wondering when will the extended path /OMERO/DropBox/user/group/project/dataset being implemented? This is very very useful to make OME "useful" for imaging facilities where imaging facilities upload images for users instead of users themselves, which is exactly the case we have.
>
> Thanks,
>
> Yanling
>
> On Fri, Sep 26, 2014 at 9:13 AM, Aleksandra Tarkowska <A.Tarkowska at dundee.ac.uk> wrote:
> Hi Yanling
>
> > Dropbox documentation says NAS is not supported, is a NFS mount considered a network attached share (NAS) to OMERO?
>
> Dropbox can monitor only local hard drive. But you can set up samba dir locally to drop files and set configuration parameters like: "--transfer=ln_rm" or "--transfer=upload_rm" to delete when they are imported. If you prefer to use NFS you can use In-place import https://www.openmicroscopy.org/site/support/omero5/sysadmins/in-place-import.html. That should simplify your workflow.
>
> > Dropbox import new images under "Orphaned Images", then user has to login to organise new images into projects and datasets, is that correct?
>
> That is correct. Extended path /OMERO/DropBox/user/group/project/dataset/ is on our list to do http://trac.openmicroscopy.org.uk/ome/ticket/4032 as well as templates http://trac.openmicroscopy.org.uk/ome/ticket/12039
>
> You can customise name of "Orphaned Images" if is not suitable.
>
> Kind regards
> Ola
>
> On Fri, Sep 26, 2014 at 8:38 AM, Aleksandra Tarkowska <A.Tarkowska at dundee.ac.uk> wrote:
> Hi Yanling
>
> As Carne mentioned you can invoke import process via python script.
> Similar test is available on
> https://github.com/openmicroscopy/openmicroscopy/blob/develop/components/to
> ols/OmeroPy/test/integration/library.py#L187
>
> args.extend(["-s", server, "-k", key, "-p", port, "import", "--"])
>
> Allows you to pass all parameters you normally pass via bin/omero import Š
> For more details refer to --help.
>
> Can I ask why you just simply cannot use dropbox to do that work
> automatically for you?
> Did you see
> http://www.openmicroscopy.org/site/support/omero5/sysadmins/dropbox.html
>
> Kind regards
> Ola
>
>
>
>
>
> On 26/09/2014 12:48, "Carnë Draug" <carandraug+dev at gmail.com> wrote:
>
> >On Thu, 25 Sep 2014 13:31:53 -0400, Yanling Liu <vrnova at gmail.com> wrote:
> >> Hi,
> >>
> >> I was able to use the CLI import (bin/omero import) to import
> >> images into OMERO. My question is that if OMERO python binding has
> >> similar capability? Can I write a little python script and call OMERO
> >> import function to upload some images to OMERO?
> >>
> >> What I mean is if there's python binding to the import function,
> >> rather than doing system call in python script to call bin/omero.
> >
> >You can do something like the following:
> >
> > import omero
> > import omero.cli
> >
> > client = omero.client (host = server_ip_or_hostname)
> > client.createSession (username = "username", password = "password")
> >
> > cli = omero.cli.CLI()
> > cli.loadplugins()
> > cli._client = client.createClient(secure = True)
> > cli.invoke(["import", path_to_image_file])
> >
> >Note that you need to create a copy of the client when setting `_client`
> >because that session will be closed after the image import.
> >
> >To find out the ID of the image you imported, you will need to get
> >this call STDOUT. I have routinely [1] been doing the following (note
> >that this imports a single file but should be easy to adjust for
> >multiple files):
> >
> >
> > cli = omero.cli.CLI()
> > cli.loadplugins()
> > cli._client = self.client.createClient(secure = True)
> > cmd = [
> > "import",
> > "--debug", "ERROR",
> > ]
> > if self.datasetID:
> > cmd.extend(["-d", str(self.datasetID)])
> > if self.child_name:
> > cmd.extend(["-n", self.child_name])
> >
> > cid = None
> > with tempfile.NamedTemporaryFile(suffix=".stdout") as stdout:
> > cmd.extend([
> > "---errs", os.devnull,
> > "---file", stdout.name,
> > ])
> > cmd.append(self.fout.name)
> >
> > STDERR = sys.stderr
> > try:
> > with open(os.devnull, 'w') as DEVNULL:
> > sys.stderr = DEVNULL
> > cli.invoke(cmd)
> > finally:
> > sys.stderr = STDERR
> > ret_code = cli.rv
> > if ret_code == 0:
> > ## we only need to read one line or something is very wrong
> > cid = int(stdout.readline())
> > if not cid:
> > raise Exception("unable to get exported image ID")
> > else:
> > raise Exception("failed to import processed image")
> >
> > self.child = self.conn.getObject("Image", cid)
> >
> >
> >[1]
> >https://github.com/MicronOxford/omero_scripts_processing/blob/40e29af8/ome
> >ro_scripts_processing.py#L293
> >_______________________________________________
> >ome-devel mailing list
> >ome-devel at lists.openmicroscopy.org.uk
> >http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-devel
>
>
> The University of Dundee is a registered Scottish Charity, No: SC015096
>
> _______________________________________________ ome-devel mailing list ome-devel at lists.openmicroscopy.org.uk http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-devel
> The University of Dundee is a registered Scottish Charity, No: SC015096
>
> _______________________________________________
> ome-devel mailing list
> ome-devel at lists.openmicroscopy.org.uk
> http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-devel
The University of Dundee is a registered Scottish Charity, No: SC015096
More information about the ome-devel
mailing list