Quick explainer of what channels are, their state cycles and verifications
Any user who activates themselves as a service on the protocol to send notifications for its users can be considered a Channel.
In other words, any service, i.e., a dapp, protocol, or even a web2 service, that wants to send notifications out to its web3 users can choose to become a channel and establish an adequate communication bridge with its users.
The creation of a channel is just a one-time simple procedure. It must be noted that channel creation only happens on the Ethereum blockchain and one wallet address can only create one channel only the protocol.
Note: Although channel creation only happens on the Ethereum blockchain, the protocol is designed to be chain-agnostic, i.e., channel owners can choose to send notification on any chain of their choice and not just Ethereum network
This is discussed extensively in the following section 👉 Enabling Channel on other Chains
A successfully created channel is capable of sending notifications to its subscribers, directly tied to their wallet addresses. Any wallet address can become a subscriber of a particular channel by simply opting into that channel.
Once opted in, the subscriber shall receive notifications from that channel directly in their inbox. Users who are not a subscriber of a particular channel, receive notifications from that channel in their spam box.
Opting In or Opting out of a Channel is a completely gasless transaction and requires no fees.
Moreover, the owner of a channel can also choose to delegate his/her notification sending power to any other wallet address. This enables the selected wallet address to send notifications on behalf of the channel. The channel owner, however, can choose to remove the delegate at any given time.
How to create a Channel?
Now that you have a good understanding of channels, you can follow the quick guide mentioned below to create a channel and start communicating with your users.