Evan Hale Posted September 13, 2022 Report Share Posted September 13, 2022 Hello, I would love to get some assistance with ftrack Connect. We are trying to migrate to 2.0 after not making much use of the first version. One feature we would like to use is uploading to specific locations. It us unclear if/how this is possible however. I added a location using a location plugin but I am not sure how to specify what location ftrack connect is uploading to. In fact, it seems to always just upload to ftrack.unmanaged and keep my local filepath. Do I need to create a custom action for uploading to alternative locations outside of the action provided by ftrack connect or is there a way to specify where connect uploads to? Secondly, we would love to use the integrations with Adobe, and later on other software as well. But it is very unclear how this works. I downloaded the ftrack plugin for adobe and the connect plugin. I can start photoshop from connect but the ftrack plugin is not located in the adobe plugins list. I tracked it down under Window -> Extensions (Legacy) put it just comes up with an error screen saying Connect is not running even when it is. Clicking any of the links on the plugin (screenshot attached) does not seem to do anything either. Link to comment Share on other sites More sharing options...
Evan Hale Posted September 13, 2022 Author Report Share Posted September 13, 2022 Update: The plugin seems to work inside of AI, however I don't seem to be able to import from any locations other than ftrack.unmanaged, not even ftrack.server. Link to comment Share on other sites More sharing options...
Evan Hale Posted September 14, 2022 Author Report Share Posted September 14, 2022 Just updating as I make progress. I can see the location plugin registering in the logs and that it registers the location object (although it seems to do it twice): 2022-09-13 22:39:03,757 INFO MainThread (0026) fcp.managed_location - Connect plugin discovered 2022-09-13 22:39:04,087 INFO MainThread (0023) fcp.managed_location - Location: <Location("floyd.managed", 93f12b72-575d-484d-b372-ce6d4522bb18)> 2022-09-13 22:39:04,580 INFO MainThread (0023) fcp.managed_location - Location: <Location("floyd.managed", 93f12b72-575d-484d-b372-ce6d4522bb18)> However I am still unable to import from these locations. I even tried assigning the task to myself to see if it was a permission error or something. I also noticed when I did this it did not appear in the "My Tasks" tab of the extension: Here is my plugin code: import ftrack_api import os import sys import logging logger = logging.getLogger('fcp.managed_location') RESOURCE_DIRECTORY = os.path.abspath( os.path.join(os.path.dirname(__file__), '..', '..', 'resource', 'fcp-ftrack-locations') ) logger.info(f"Resource Directory: {RESOURCE_DIRECTORY}") if RESOURCE_DIRECTORY not in sys.path: sys.path.append(RESOURCE_DIRECTORY) from fcp.ftrack.locations import managed def configure_location(event): session = event['data']['session'] location = managed.get_managed_location(session) logger.info(f"Location: {location}") def register(session, **kw): if not isinstance(session, ftrack_api.Session): return logger.info("Connect plugin discovered") session.event_hub.subscribe( 'topic=ftrack.api.session.configure-location', configure_location ) and the get_managed_location method: def get_managed_location(session: ftrack_api.Session) -> ftrack_api.entity.location.Location: location = session.ensure('Location', {'name': 'floyd.managed'}) location.accessor = ServerAccessor(FILE_SERVER) location.structure = ProjectMapStructure(location.session) location.priority = 10 return location We have some custom logic with the ServerAccessor and ProjectMapStructure but get_managed_location works as intended in the multitude of other areas we use it so I doubt it has to do with that. Link to comment Share on other sites More sharing options...
Lorenzo Angeli Posted September 19, 2022 Report Share Posted September 19, 2022 Hi @Evan Hale if the location is found in connect, but not in the integration, is likely you are just registering just to the configure-location. Please try to add these lines too and see if does work: api_object.event_hub.subscribe( 'topic=ftrack.connect.application.launch', modify_application_launch ) # Location will be available from actions api_object.event_hub.subscribe( 'topic=ftrack.action.launch', modify_application_launch ) subscribing to these events should nake the location within the integrations too.here the location where this snippet has been taken from, so you have full reference Hope it helps L. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now