Is there a way to allow the user to add additional items to one group in the settings bundle? Specifically, I a would like the user to be able to specify a list of URLs and Site Names within Settings. The functionality is almost exactly the same as the Twitter app that allows for a list of usernames and passwords and in the mail app where the server name, inbound and outbound email server names/addresses are maintained. I am familiar with doing this with archive, CoreData and SQLite within the app, but would prefer to keep key settings outside the app as I would like to intentionally distance the config data from the user interface.
Thanks
Derrick
Unfortunately you're pretty limited with what you can do in the settings. There isn't any way to run code, so there can be no add buttons or changes to the model - its basically predefined key value pairs. Twitter and mail are first-party apps so they can do things in settings the rest of us can't.
Related
I'm designing the architecture for a Microsoft Teams app.
This app is an integration to a multitenancy platform that the customer can set up their own URL to access the system, i.e: https://app.customer.com/
I was wondering if there is a standard way to have a step on the app installation to set up the instance URL.
I understand I could design an app generator that would reside inside each customer instance and then deliver the manifest.zip to the customer to install it, but I feel we would lose all marketing and partnership opportunities that having it on the store would provide.
I couldn't find a standard way so I designed a proposed solution and wanted to validate it with the community.
I came with a list of issues and workarounds to work with a single app for the multiple instances based on what we've seen so far on Microsoft Teams documentation.
Issue 1: Accessible domains should be explicitly set on the manifest.json
Workaround: have a middleware in a fixed URL that handles all requests made by the app and route to the customer site
Issue 2: There is no standard step on an app installation to set up the instance URL
Workaround: Design a static tab that would handle the configuration, so in that tab, the admin would need to set up any
configuration like instance URL
Issue 3: After installation, the feature will be available for the users even before admin did the setup to define the customer instance URL to be used.
Workaround: Make all designed interactions (i.e.: Tabs configuration page, bot response, actions, cards, etc... ) have a
response to the user saying there are pending configurations in case
the admin did not set the URL yet
I'm developing a slack app, and I'd like to allow the users who uses my app to customize specific settings, e.g. 3rd-party integration passwords.
How can this be done?
If you app needs to manage custom user settings you need to build that yourself.
UI to show and modify settings
Storage to store settings
You can use any approach for that, e.g. build the UI part within Slack (a Slack Dialog would work nicely) or make an external website.
You need to store state of the user settings someplace. I agree with Erik that you can build the UX within slack.
I don't think Slack has a great way to do store state right now, though I suppose you could create some hacky way of doing it (create a private slack channel for each user with a random name and store state in there).
I'd suggest using either a real database, or a service like Transposit (full disclosure, I work there). With the former, you could use something like Heroku Postgres, and host an API on Heroku. With the latter, you could use the Slack API combined with Dynamodb or some other database.
I have three different apps for which i want to use the same login and profile. Which means if a user updates his profile information or changes his password that has to be updated in all the apps.
Currently im using a single database for all the three apps, but not sure if this is the right way. I checked few sso solutions, but not sure how to make profile table same for all the three apps.
The reason i want profiles table same for all the three apps is because the apps belong to the same industry(healthcare). If a doctor updates his information on one app, that has to be updated in all the three apps so that his information stays same on all the apps.
I'm currently using laravel 5.6 as the backend api and vuejs as the frontend with JWT login
I am late, but thought would help people looking for answers.
1- Using Different API/Service for authentication
As mentioned in the comments it is a good way to create a separate service for authentication. Could create an OAuth server for that purpose.
2 - Using same Database
It can be done is using similar APP_KEY for three applications. It is generally not a recommended way to use same app key for multiple apps, but in this case as three apps works as one and uses same database dont see a much problem with that.
To do so copy the app key from the main application's .env file to other 2 applications .env files. This is because app key is used in the process of encrypting the password when registering the user and logging in. So, it should be similar in all apps for the hashes to match. This way same database and same users table could be used.
I want to user Dropbox chooser API for my Ruby on rails application(This is not web app, This will be installed as standalone).
Issue is in specifying "Drop-ins domains", which currently i gave as "localhost. But for the machines on which it will be installed "machine name" will be used instead of localhost. And i cannot keep track of all installations and manually adding those domains
Please suggest, Is there some way to solve this problem? Can i use chooser API without drop-in domain?
The Dropbox Drop-ins API doesn't have any way of automatically adding domains, or registering any sort of wildcard, but we're tracking this as a feature request.
For reference, one thing that does work, though it sounds like it may not apply to your scenario, is registering just, for example, example.com, which would enable use on any subdomain of example.com, e.g., sub1.example.com, sub2.example.com, webmail.example.com, etc.
Alternatively, you can embed an iframe containing the button, which would be hosted on your own domain. This would let you just set that one domain in the app options page. It would be very important that you then restrict the set of domains that you allow to iframe your button though, but this list would now be under your control so you can set it programmatically. For example:
How to limit display of iframe from an external site to specific domains only
I want to create an app only applicable for one or two domains. And i am trying to follow the doc here, https://developers.google.com/apps-marketplace/listing
I have done all the steps except 7th step, as i don't want it to be published on marketplace.
Also i have got an url after publishing the app in webstore, but when i click on the link it only allow me to add as a chrome extension, but nothing as an market place app?
So now, how can i add it to my domain and any other specific domain i want?
Please let me know if you need more information.
Thanks,
Ramesh.V
You will actually want to publish but make sure you configure the visibility options correctly. In the Developer Dashboard you can make a listing available to your domain, a Google Group of testers, etc. In order to restrict to a domain, the admin creating the listing must be a member of the domain. So in order to restrict to more than one domain, I would recommend creating a unique listing per domain. Many system integrators take advantage of this by creating unique branding per domain. Alternatively you could use the Google Group route if that's all you need.