Creating a channel
As you can see, there exists a plus button in the lower right corner. (
1 in the image) Clicking on it will open a modal where you can create a new channel.
Then after you click on
Add a new channel should appear in the list.
What does misconfigured mean?
Sometimes the configuration of a channel is not valid. In that case, you will get a big warning and the
Misconfigured column will say
Yes for one or more of the channels.
You can learn more about it here
Deleting a channel
Deleting a channel is straight forward. Just click on the trash icon and confirm the deletion. (
2 in the image)
Managing a channel
Clicking on the channel name will open a modal where you can manage the channel. (
3 in the image)
This page should look something like this:
Let’s go through the different sections.
Bundle number (
1 in the image). This is the current version for that channel. When asked to serve an update this channel will always attempt to respond with that version.* 1
Clicking on it should take you to the bundle page.
Shared to (
2 in the image) page. I recommend against ever using this. A new and better system is in the works.
Now the forced devices (
3 in the image). This is a list of devices that will always get updates from this channel. This is useful for testing purposes. You can add force a device to a channel from the devices page.
Lastly the settings (
4 in the image). This is where you can manage how the channels behave.
After you click on it you should see something like this:
The list of settings is long, but I will do my best to explain them all.
Default channel THIS IS PROPABLY THE MOST IMPORTANT ONE.
If a channel is marked as default, then it will be used as the default channel for all new devices.
In different terms: If you have a new user capgo will try to serve him the latest version of this default channel. Only 1 channel can be set to default at a time. If you try to break this rule you will be asked to confirm your action.
After you confirm the old default channel will be unmarked as default and the new one will be marked as default.
IOS setting. This is relatively simple. If this is false then IOS devices will not be allowed to download updates from this channel.
Third is the
Android setting. This is similar to
IOS. If this is false then Android devices will not be allowed to download updates from this channel.
Fourth is the
Disable auto downgrade under native setting. If this is true then it will be impossible to downgrade from a native version. This means that if you have uploaded a
1.2.0 version to the app store or play store and try to set the channel version to
1.1.0 then the update (downgrade) will fail.
Fifth is the
Disable auto update. This setting is quite complex, and you can learn more about it here
Allow develoment build. If this is true then development builds will be allowed to download updates from this channel. If not then any update request that has the
prod set to false will be rejected. This is mostly useful for testing purposes.
Seventh is the
Allow Emulators. If this is false then cagpo will disallow any update request that comes from an emulator. This is mostly useful for testing purposes.
Eight is the
Allow devices to self associate. If this is true then the setChannel method will be available. If this is set to false and you try to call the setChannel method with this channel then the call will fail.
Next is the AB testing. This is a VERY complex setting. Let’s start at the beginning. After enabling this setting you should see 2 versions instead of 1.
The idea is that after you upload the bundle to capgo cloud you will be able to select which version you want to serve to which percentage of users.
For example, you could say that you want only 30% of your users to receive the new update. In that case, you would set the
A version to the old version and the
B version to the new version (the one thay you only want 30% of users to receive)
Next, you would set the
Percentage of users recving secondary version to
The last setting is the
Enable progressive deploy. This is similar to AB testing, however, the
Percentage of users recving secondary version will be increased every 10 minutes by 10% until it reaches 100%.
Progressive deploy is exclusive to AB testing. You can’t have both enabled at the same time.
First, do not worry about the
Progressive deploy status failed message. It is just a warning that will go away once you deploy the first version.
To start a new progressive deploy go to the specific bundle page and click on
Channel. Then click on the channel that has progressive deploy enabled. You should see something like this:
If you skip progressive deploy it should look like this:
If you do not skip progressive deploy it should look like this:
After the progressive deploy finishes you should see something like this:
*: There are A LOT of exceptions to this but regardless that is the main version for the channel. ↩