• 0 Votes
    2 Posts
    58 Views

    Hi,

    Apologies for the slow response.

    We don't have any calls that could directly handle a "file" of profileIds. We do have a few "toBatch" calls that are callable from S2S though - so you could probably have an offboard system make those calls - and call braincloud to send the notifications in batches.

    Where are these profileIds coming from? An offboard analytics system of some sort?

    To answer your questions:

    We are planning a revamp of our notifications system and it's APIs. I'll add this conversation so that it will be considered as we're planning that. As mentioned above, using one of the "Batch" calls would make the most sense - and keep your API counts reasonable There's an API call to call the SendRichPushNotificationWithParams, plus a second api call for the sending the push notification itself. So that would be <numReceivers> x 2 for API costs. Less if called from within a script. But the *Batch() calls would be Substitutions and custom metadata/custom data - the current APIs don't - so you'd probably need to handle those client side. Are the substitutions highly personal - like player's name?

    I hope that helps to clarify things,

    Paul.

  • 0 Votes
    3 Posts
    87 Views

    Hi @moondory77 ,

    We hear you - and are looking to see what options we can provide.

    The thing to understand is that there are a lot of dependencies between metadata in the brainCloud system - and our deployment mechanisms work hard to ensure the integrity of the data that gets pushed. Even more importantly - it works to prevent user data from being corrupted by a mis-match of data during deployments - which is why apps are very temporarily disabled during a deployment.

    These deployments normally take well under a minute and aren't much more troublesome than a common wifi interruption for clients [depends upon the client implementation though]... (note - the deployment may seem like it takes longer on the web - as there is a lot of data dependency checking to do - but all of that is done BEFORE we disable the app... which happens just for the actually data migration activity itself).

    If you contact us via the support chat with your appId and the time you last did a deployment - we can take a look to see if your deployment times are above normal.

    Also - we are working to provide a separate custom entity deployment mechanism - similar to what has been done for item management.

    Paul.

  • 0 Votes
    5 Posts
    258 Views

    Hello @Paul-Winterhalder

    I apologize for the repeated questions, but I am following up on this again because our live service experiences a temporary outage every time we attempt to deploy only data to our production environment.

    Even when the operation is strictly intended to deploy only customEntities, as shown in the payload below, the temporary "App is disabled" state still occurs:

    {
    ...
    "allowLiveUpdate": true,
    "components": {
    "meta": true,
    "scripts": false,
    "files": false,
    "customEntities": true,
    "legacyFiles": false
    },
    "options": {
    "meta": {
    "excludes": {
    "itemCatalog": true,
    "productPricing": false,
    "pushCertificates": true,
    "integrations": true,
    "myServers": true,
    "lobbies": true,
    "leaderboardsTournaments": true,
    "independentLeaderboards": true,
    "divisionSetConfigsOverride": true,
    "migratableGlobalEntities": true,
    "migratableCustomEntities": false,
    "selfServiceBranding": true
    }
    }
    }
    }

    We would like to know the exact scope of deployment conditions where the "App is disabled" state does not occur. While we understand that it might not be possible to prevent the disabled state across all deployment processes, we would like to at least define and narrow down the conditions.

    We are hoping there is a way to migrate at least customEntities between environments without triggering the app disabled state. It would be even better if there were a way to specify and migrate each collection individually.

  • 0 Votes
    2 Posts
    78 Views

    Unfortunately, our notification templating system is very simple and currently only supports simple text notifications. It does not currently push a template id.

    We do have plans to revamp the system on our "to-do" list - but it has not been scheduled yet.

    We recommend folks use the "raw" template calls - they give devs the most control over what gets sent to the various notification systems.

    Paul.

  • 0 Votes
    4 Posts
    158 Views

    Hi @moondory77 ,

    The work on this is running in our development environment. The Builder API support is in place - and we're currently looking at the possibility of adding it as a new tab in the Deployment screen of the Portal.

    Paul.

  • 0 Votes
    3 Posts
    133 Views

    Thanks Paul, that makes sense.

    For now, we’ll keep using a dedicated internal/service profile with getSessionForProfile() + callAPIForSession() as a temporary workaround for our monthly transaction reporting job.

    Could you please confirm whether this workaround is safe to use temporarily in production, as long as we do not include a profileId in the search criteria and only use the session to authorize the request?

    Also, we’d appreciate it if you could let us know once the S2S proxy hookup for SYS_GET_TRANSACTIONS_PAGE has been reviewed or fixed.

    Thanks again for checking into this.

  • MyServers Permission

    Unsolved General
    3
    0 Votes
    3 Posts
    169 Views

    hi. @Paul-Winterhalder
    yes, permissions to call specific scripts and access control for Services and Operations regarding the generally provided functions are required.
    For example, there may be management tools that call specific scripts and use certain functions (CloudData...),
    and there may be administrators who only manage items.
    If possible, each API Key should be a function with permissions tailored to the situation.

    Let me give you an example. A company utilizes a mix of office and remote work. While the internal network can be protected to some extent by IP ranges, it is difficult to identify specific IPs because multiple operators work from home. Therefore, it is currently somewhat difficult to handle this situation using only IPs.

  • 0 Votes
    1 Posts
    92 Views
    No one has replied
  • 0 Votes
    1 Posts
    139 Views
    No one has replied
  • Integration with .NET server

    Unsolved General
    2
    0 Votes
    2 Posts
    191 Views

    The SDK is just a plain C# source library you can drop into any .NET project (not Unity-only). You can find usage examples and the source in our GitHub repositories at https://github.com/getbraincloud.

  • Segment Code Bug Report

    Unsolved General
    6
    0 Votes
    6 Posts
    384 Views

    @JasonL At the time I reported this, that field was locked too, so it couldn't be edited — but I've now confirmed that it's editable.

  • Admin Billing API request

    Unsolved APIs
    7
    0 Votes
    7 Posts
    595 Views

    Added the additional details to 13660

  • 0 Votes
    3 Posts
    319 Views

    Case 13633 - [implementing]

  • 0 Votes
    7 Posts
    694 Views

    @Paul-Winterhalder , could you please respond to @noah 's inquiry?

  • 0 Votes
    3 Posts
    365 Views

    It's been resolved. Thank you for your response!

  • Matchmaking To An Edgegap Hosted Server Instance

    Unsolved General
    4
    0 Votes
    4 Posts
    428 Views

    Hey, thanks for reaching out. To answer your main question directly: yes, brainCloud's lobby and matchmaking system can trigger an Edgegap server deployment automatically. You do not need to build a custom C++ room server to make this work.

    https://github.com/getbraincloud/examples-cpp/tree/develop/relaytestapp

    The relaytestapp example on the develop branch of examples-cpp is a working client example that does exactly what you are describing. It uses brainCloud lobbies and matchmaking to find a match, and once the lobby is ready to launch, brainCloud handles spinning up the Edgegap server and passes the connection details back to all players through RTT.
    The server configuration you see in the screenshot is what ties everything together on the brainCloud side. That entry defines which Edgegap application to deploy, which regions to consider based on the selected beacons, and the credentials needed to make the deployment call. Once that server is linked to a lobby type, the entire launch sequence is handled for you.
    The relaytestapp is a solid starting point to see this end to end.
    Screenshot 2026-05-07 at 12.13.17 PM.png

  • 0 Votes
    3 Posts
    373 Views

    @Paul-Winterhalder Hello! Here is my app Id "15675

  • 0 Votes
    6 Posts
    2k Views

    Thanks @Brad-Hester !

  • Notification Templates

    Unsolved General
    3
    0 Votes
    3 Posts
    404 Views

    We’re planning some major changes to our push notification system, it’s more than just adding a few titles and content fields to the templates. It's not a near-term, stay tuned!

  • Best practices for in-game mailbox

    Unsolved APIs
    4
    0 Votes
    4 Posts
    573 Views

    Agreed @armitage - the bulk messaging feature is planned for the use case you describe... (and yup - still coming 🙂 ).