Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PushNotifcaitons not working when using different mountPaths #2853

Closed
ConnorsApps opened this issue Oct 10, 2016 · 3 comments
Closed

PushNotifcaitons not working when using different mountPaths #2853

ConnorsApps opened this issue Oct 10, 2016 · 3 comments

Comments

@ConnorsApps
Copy link

I am making a few apps that all connect to the same parse server here is the code I am using in the index.js.

var api = new ParseServer({
  databaseURI: databaseUri || 'MyUrl',
  cloud:  __dirname + '/cloud/main.js',
  appId: 'MyAppId',
  masterKey: 'MasterKey', //Add your master key here. Keep it secret!
  serverURL: 'http://app.elasticbeanstalk.com/parse',  // Don't forget to change to https if needed
 push: {
                          ios: {
                          pfx: 'Certificates.p12', // The filename of private key and certificate in PFX or PKCS12 format from disk
                          // cert: '', // If not using the .p12 format, the path to the certificate PEM to load from disk
                          // key: '', // If not using the .p12 format, the path to the private key PEM to load from disk
                          bundleId: 'com.3B.RestaurentApp', // The bundle identifier associate with your app
                          production: true // Specifies which environment to connect to: Production (if true) or Sandbox
                          }
                          },

                            // if the account lockout policy is set and there are more than `threshold` number of failed login attempts then the `login` api call returns error code `Parse.Error.OBJECT_NOT_FOUND` with error message `Your account is locked due to multiple failed login attempts. Please try again after <duration> minute(s)`. After `duration` minutes of no login attempts, the application will allow the user to try login again.
  accountLockout: {
    duration: 10, // duration policy setting determines the number of minutes that a locked-out account remains locked out before automatically becoming unlocked. Set it to a value greater than 0 and less than 100000.
    threshold: 30, // threshold policy setting determines the number of failed sign-in attempts that will cause a user account to be locked. Set it to an integer value greater than 0 and less than 1000. 
  }


});
var apiApp2 = new ParseServer({
  databaseURI: databaseUri || 'DataBaseURL',
  cloud: __dirname + '/cloud/App2.js',
  appId: 'AppId',
  masterKey: 'MasterKey', //Add your master key here. Keep it secret!
  serverURL: 'http://App.elasticbeanstalk.com/App2',  // Don't forget to change to https if needed
 push: {
                          ios: {
                          pfx: 'Certificates2.p12', // The filename of private key and certificate in PFX or PKCS12 format from disk
                          // cert: '', // If not using the .p12 format, the path to the certificate PEM to load from disk
                          // key: '', // If not using the .p12 format, the path to the private key PEM to load from disk
                          bundleId: 'com.3B.App2', // The bundle identifier associate with your app
                          production: true // Specifies which environment to connect to: Production (if true) or Sandbox
                          }
                          },
                            // account lockout policy setting (OPTIONAL) - defaults to undefined
  // if the account lockout policy is set and there are more than `threshold` number of failed login attempts then the `login` api call returns error code `Parse.Error.OBJECT_NOT_FOUND` with error message `Your account is locked due to multiple failed login attempts. Please try again after <duration> minute(s)`. After `duration` minutes of no login attempts, the application will allow the user to try login again.
  accountLockout: {
    duration: 10, // duration policy setting determines the number of minutes that a locked-out account remains locked out before automatically becoming unlocked. Set it to a value greater than 0 and less than 100000.
    threshold: 30, // threshold policy setting determines the number of failed sign-in attempts that will cause a user account to be locked. Set it to an integer value greater than 0 and less than 1000. 
  }
});
var apiSitAndStayCafe = new ParseServer({
  databaseURI: databaseUri || 'MongoUrl',
  cloud: __dirname + '/cloud/App3.js',
  appId: 'AppId',
  masterKey: 'MasterKey', //Add your master key here. Keep it secret!
  serverURL: 'http://App.elasticbeanstalk.com/App3',  // Don't forget to change to https if needed
 push: {
                          ios: {
                          pfx: 'App3', // The filename of private key and certificate in PFX or PKCS12 format from disk
                          // cert: '', // If not using the .p12 format, the path to the certificate PEM to load from disk
                          // key: '', // If not using the .p12 format, the path to the private key PEM to load from disk
                          bundleId: 'com.3B.App3', // The bundle identifier associate with your app
                          production: true // Specifies which environment to connect to: Production (if true) or Sandbox
                          }
                          },
                            // account lockout policy setting (OPTIONAL) - defaults to undefined
  // if the account lockout policy is set and there are more than `threshold` number of failed login attempts then the `login` api call returns error code `Parse.Error.OBJECT_NOT_FOUND` with error message `Your account is locked due to multiple failed login attempts. Please try again after <duration> minute(s)`. After `duration` minutes of no login attempts, the application will allow the user to try login again.
  accountLockout: {
    duration: 10, // duration policy setting determines the number of minutes that a locked-out account remains locked out before automatically becoming unlocked. Set it to a value greater than 0 and less than 100000.
    threshold: 30, // threshold policy setting determines the number of failed sign-in attempts that will cause a user account to be locked. Set it to an integer value greater than 0 and less than 1000. 
  }
});
var mountPath = '/parse';
app.use(mountPath, api);

var mountPathApp2 = '/App2';
app.use(mountPathApp2, apiApp2);

var mountPathApp3 = '/App3';
app.use(mountPathApp3, apiApp3);

Everything works fine like calling cloud functions except push notifications. What is the correct way I should set these apps up with their own urls?

@flovilmart
Copy link
Contributor

Multiple applications is not supported on parse-server (yet) so I highly discourage the workaround you're using in the first instance. Push may not be working as multiple apps is not supported.

@ConnorsApps
Copy link
Author

@flovilmart Is there any way to make this work? Is there a way I could make multiple applications supported and where would I start.

@flovilmart
Copy link
Contributor

There is no trivial way to make it supported. The only solution is to run your apps in different processes, on different ports

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants