Cloud Code

23 Topics 73 Posts
  • 0 Votes
    3 Posts
    59 Views

    @JasonL Thanks, I ended up with this cloudCode:

    isForceCreate = String(data.callingMessage.forceCreate) == "true"; isNewUser = String(data.message.newUser) == "true"; var response = {}; response.status = 200; response.data = data.message; if (isForceCreate && isNewUser) { var min = 10000000, max = 999999999 prefix = ["player", "user", "member"] const num = Math.floor(Math.random() * (max - min + 1)) + min; const pre = prefix[Math.floor(Math.random() * prefix.length)]; var defaultPlayerName = pre + String(num); var playerStateProxy = bridge.getPlayerStateServiceProxy(); // We are changing the player name on the server. playerStateProxy.updatePlayerName(defaultPlayerName); // And in this API Call's return data. response.data.playerName = pre + String(num); } response; //return the object

    This works just the way I need

  • bridge.include doesn't exists

    0 Votes
    2 Posts
    18 Views

    Hey, there must be some syntax error in your script, would you be able to provide your script code here?

  • HTTP Client API - DELETE calls

    0 Votes
    3 Posts
    28 Views

    Delete call update and everything is working now. Thanks!

  • 0 Votes
    1 Posts
    14 Views
    No one has replied
  • 0 Votes
    2 Posts
    23 Views

    I posted this almost 13 days ago with zero answers, so I took some time to look through a bunch of documentation and did a ton of trial and error. Please Braincloud for the love of god add this to your API.

    Rhino does not handle Arrays the way that other coding languages do.

    I figured it out, unlike most arrays that return an array after you call push- Rhino returns the new length. So if you call push, don't set it's value.

    var copyArray = []; //I assume this line tells it to be an array for (var i = 0; i < postResult.data..length; i++) { copyArray[i] = postResult.data[i]; //arrays do not behave like .Net arrays, you can change length without initializing, so you just set each index to the index of the array you're copying } copyArray.push(variableToAdd); //Do NOT set this as the value of your array, the push method returns an int (length of array) NOT an array! //you probably dont need to call push at all to add to the array as shown in the for loop above if you already know your length or want a specific length

    Then just set your value to the variable, like this

    var entityData = { "variableName": copyArray }; //No need to call Array(copyArray) or any of the prototype. slice stuff. If you call Array() you'll just nest the array a second time.

    Use this page for further info on functions you can do with arrays.

  • 0 Votes
    1 Posts
    18 Views
    No one has replied
  • 2 Votes
    6 Posts
    45 Views

    Well - the new release isn't out yet - it's just a Release Candidate.

    https://github.com/mozilla/rhino/releases

    That said - we are very happy to see the progress - since it has been over a year since 1.7.13 was released!

    Hopefully soon!

  • 0 Votes
    1 Posts
    18 Views
    No one has replied
  • Using numbers as JSON key.

    0 Votes
    5 Posts
    39 Views

    @JasonL
    Thank you!!

  • 0 Votes
    3 Posts
    25 Views

    Hi Reza, a simple workaround I would recommend is using our atomic methods, such as IncrementGlobalStats, to form the field values with the returned value of that method and some other characters you selected. (defined a global statistic ahead of time, call IncrementGlobalStats() get the returned current value of the global statistic, e.g. 123, then combine with the name you selected to a unique name, such as name_123)

  • 0 Votes
    8 Posts
    33 Views

    @Travis-Brown-John You can create them manually from the Monitoring menu.

    Monitoring | Global Monitoring | Global Entities.

    Note - if your app is live, you need to unlock it first. You'll see a bit [+] button to the right of the Bulk actions drop-down.

    Good luck!

    Paul.

  • Segmentation APIs

    0 Votes
    4 Posts
    38 Views

    Hi @Alexandru ,

    We've just officially added the Segment call you're looking for to brainCloud 4.55 - which is targeted for release in the next ~30 days...

    Updated Roadmap here - https://portal.productboard.com/braincloud/1-braincloud-baas-roadmap

    Paul.

  • 0 Votes
    3 Posts
    34 Views

    Edit . you can get all custom entities for the current user with the query

    { "entityType": "[entitytype]", "ownerId": "[profileId]", "context": { "pagination": { "rowsPerPage": 50, "pageNumber": 1 }, "searchCriteria": { // other search criteria here }, "sortCriteria": { "createdAt": 1 } } }
  • This topic is deleted!

    Unsolved
    0 Votes
    1 Posts
    6 Views
    No one has replied
  • This topic is deleted!

    Unsolved
    0 Votes
    1 Posts
    7 Views
    No one has replied
  • This topic is deleted!

    Unsolved
    0 Votes
    1 Posts
    4 Views
    No one has replied
  • Limit to API calls within cloud script?

    Solved
    0 Votes
    9 Posts
    87 Views

    Sounds good Ali - thanks for the confirmation!

    Paul.

  • This topic is deleted!

    Unsolved
    0 Votes
    1 Posts
    2 Views
    No one has replied
  • Getting client app version

    Solved
    0 Votes
    3 Posts
    84 Views

    Thank you for your answer. Yes, it will be nice to have a separate API but for now, the solution suggested by you works for us.

  • This topic is deleted!

    Unsolved
    0 Votes
    1 Posts
    6 Views
    No one has replied