• Import IAP products catalog

    General
    2
    0 Votes
    2 Posts
    145 Views

    Hi,

    Unfortunately the answer is no on that one.

    (For what it's worth, I'm not sure how we'd make that one work - since brainCloud allows you to link products across AppStores - not sure how we'd be able to establish those relationships in an import).

    The good news is that brainCloud allows you to set up one list of products, with multiple price points, across all stores. And then, if you want to change prices (put things on sale, etc) - it's just a couple of quick clicks to do that across all the stores (the new prices would be instantly active).

    So we recommend that devs initially configure both a "regular" and a "sale" price for all items.

    There's definitely a bit of pain getting it initially configured - but it's well worth it in the long run.

    Not the answer you were hoping for - but I hope it helps!

    Paul.

  • [Unity] Authenticated Event ?

    Solved APIs
    2
    0 Votes
    2 Posts
    163 Views

    Hmm, actually Eric, authentication only happens when called directly in brainCloud.

    If you try calling an API and your app isn't authenticated, you'll receive an error - and generally would trigger authentication yourself as part of your error handling.

    Does that make sense?

    Paul.

  • 2 Votes
    24 Posts
    2k Views

    I just got our iOS Push Notifications working with brainCloud and would like to add a few tips to this thread.

    For the less Mac-Savvy developers like me, here's what it looks like when you only have your certificate with no private key to export as a P12 file:

    Screen Shot 2019-06-19 at 4.02.20 PM.png

    Notice the selected category is [My Certificates]. Certificates in the [Certificates] category have the P12 export option greyed out.

    I am using Unity as a development platform and for some reason my device would only receive Development Push Notifications even when running in Release in Xcode. It's only after uploading to TestFlight that my Production Push Notifications started working.
  • 1 Votes
    1 Posts
    117 Views
    No one has replied
  • 4 Votes
    4 Posts
    265 Views

    I like the new forums. It was something I always felt was lacking and with the quick response time, they have already proven to be very useful. Hopefully this helps connect developers using brainCloud together as well as with the brainCloud team.

  • 0 Votes
    7 Posts
    526 Views

    @Paul-Winterhalder said in A few suggestions I have so far:

    . Would it be fair to say that those user's entities would have to have their ACL set to other: 1 so it's readable?

    Yes, that would be the case.

  • 1 Votes
    2 Posts
    216 Views

    Additionally!

    Using a Pre-Hook, to the Post Score Cloud Code Script, to validate incoming data. Doing the actual JoinTournament / PostTournament Score via Cloud Code Script, once again verifying data. Lastly, validating the results of the Cloud Code Script via Post-Hook, allows developer's to confirm that the incoming data results in the expected outgoing data.

    If at any point validation fails, tag the user as a Cheater! If users are going through enough trouble to try and cheat, they must enjoy the apps experience. Instead of blocking the Cheater from using the app, ensure all Cheaters are playing against each other, via a Cheater leaderboards or any other means. This way the apps experience to Cheaters is unchanged, and only cheating against cheaters, but most importantly the rest of the user base does not get negatively impacted via a few rare users.

    Any other ideas? Interesting Applications for Cheaters?

  • 0 Votes
    5 Posts
    307 Views

    Thank you, fantastic. I appreciate all the information you have given.

  • Update profile name

    Solved APIs
    2
    0 Votes
    2 Posts
    135 Views

    Hi,

    The call you're looking for is called UpdateUserName() - https://getbraincloud.com/apidocs/apiref/#capi-playerstate-updateusername

    Good luck!

    Paul.

  • 0 Votes
    2 Posts
    224 Views

    Hi,

    Here are the steps to setting up a webhook to call a custom cloud code script in brainCloud:

    Step 1 - Write your script

    Go to Design | Cloud Code | Scripts and create your script You might want to just start with a simple script that logs the incoming parameters (see sample below) Be sure to enable the S2S callable field on the Details page.

    Step 2 - Declare the webhook and link it to your script

    Go to Design | Cloud Code | WebHooks and create your webhook Link it to the script that you just wrote. If you don't see your script in the list, double-check the state of the S2S callable field You can optionally restrict the webhook to be callable via a range of ip ranges (good for additional security) Click [Save] and copy the webhook URL that gets generated

    Step 3 - Go to the external service, and give it your webhook URL

    This step varies by service of course.

    Step 4 - Trigger the webhook to test

    This also varies by service. You could use Postman to do it as well.

    Step 5 - Confirm the structure of the incoming parameters

    It is a bit difficult to figure out what a webhook will send you ahead-of-time The simplest is to invoke the hook, and then examine the results See the sample logging script below for an example Then view the logged input data via Monitoring | Global Monitoring | Recent Errors. Be sure to enable Info -level messages, and click [Refresh]

    Step 6 - Complete the writing of your script

    Now that you know how the parameters are being sent, you should be good to complete your script. More info on webhook development here - https://getbraincloud.com/apidocs/apiref/?cloudcode#cc-ccscripts-webhooks Good luck!

    Sample script - just dumps parameters:

    var response = {}; bridge.logInfoJson("Script invoked from webhook. Contents of data...", data); // Return the webhook response response.statusOverride = 200; response.jsonResponse = {}; response;

    Note - you can also view the request sent and response received from your webhook via the Server Logs. For more information on brainCloud logs - see this knowledge base article.

    Hope that helps!

    Paul.

  • 0 Votes
    2 Posts
    176 Views

    brainCloud's Cloud Code is based on Apache Rhino, which is an open-source implementation of JavaScript. This engine is highly sandboxed within the brainCloud API servers for security purposes.

    brainCloud currently ships with Apache Rhino version 1.7.7.1.

    Rhino implements JavaScript 1.7, and is basically ES4 with partial ES5 and ES6 support.

    Summary from a Stack Overflow discussion here:

    2019-05-27_11-54-35.png

    Hope that helps!

    Paul.

  • How do I look-up a player?

    Solved APIs
    2
    0 Votes
    2 Posts
    209 Views

    Hi,

    brainCloud offers a number of APIs for looking up other players. You'll find them all in the Friend service.

    As far as looking up players by name, it isn't highly recommended - since names in brainCloud are not guaranteed to be unique (and thus lookups are less deterministic and slower).

    It's generally more useful to look up other players by UniversalId - which are guaranteed to be unique.

    Now - maybe your app isn't using Universal Identities - so it seems odd to lookup by the UniversalId. Luckily, brainCloud supports a non-login version of a UniversalId - so you can have the user pick a Display Name which will be associated with their account, but they don't actually log in via it (and there's no password for it stored).

    To use non-login UniversalIds...

    Attach the non-login identity via AttachNonLoginUniversalId() Later on, to update the id, use UpdateUniversalIdLogin() <-- disregard the misleading name - it works for both login and non-login versions of UniversalId Set the player's name to match the universalId (useful for leaderboards) via UpdateUserName() Finally, to look-up a player, use FindUserByExactUniversalId() or FindUserByUniversalIdStartingWith()

    Hope that helps!

    Paul.

  • 0 Votes
    4 Posts
    242 Views

    If your app uses Global Entities, don't forget to Export/Import the required entities from the Dev->Staging->Live apps. You can export all, or some via the Bulk Actions Menu within the Monitoring/Global Monitoring/ Global Entities page.

    More about Global Entity File Export Formats are here, https://getbraincloud.com/apidocs/api-modules/global-entity-file-formats/

    Hope this helps!

  • 1 Votes
    1 Posts
    212 Views
    No one has replied
  • 2 Votes
    1 Posts
    222 Views
    No one has replied