Protocol Interfacing for Notifications
All of the payloads are uploaded as JSON format in decentralized storage solutions (or in some special future cases, even centralized ones). The EPNS JS Library interfaces with Ethereum Push Notification Service protocol and calls:
sendNotification(address _recipient, bytes _identity)
Differs with the payload type, broadcast and special multi payload notifications have the channel address as the recipient address.
The identity field consists of the following parameters joined together with a delimiter.
Payload type not only indicates the content of notification but also the storage implementation stored.
Indicates the hash of the payload through which payload data can be obtained.
The delimiter + is used for joining the fields together, this is done to optimize the payload written on chain.
Example _identity: 2+QmcdzjicUnxv8ASKKSgEEYjhK7symwxqDG4BeCS82rdNBk
Always recommended to interface with EPNS JS Library for abstracting these details out.
This feature of protocol will keep evolving for further optimizations in the future.