Overview
Learn the things you should watch out for to preserve compatibility with the Bible Plugin.
Storage
This plugin uses the Window.localStorage
API for data persistence. For the free online version, all storage used by the Bible Plugin is specific to the origin. This means you do not have to worry about it. However, things are different for the offline version.
The offline version uses the file://
protocol. In OBS Studio (as of version 27.0.1), this means that the same storage is shared with every other file://
-based URL. Because of this, you should never run
window.localStorage.clear(); // Don't do this!
This will delete all storage for every file://
-based website, including the Bible Plugin's.
To sidestep this issue, this plugin prefixes all its localStorage
keys with
OeiOBSBible__
Then, you can use your own prefixes to avoid accidental clobbering.
BroadcastChannel
The Bible Plugin uses the BroadcastChannel
API to communicate between the browser and dock. Similar to the storage considerations above, you do not have to worry about anything when using the free online version. For the offline file://
- based version, though, you should bear in mind that the Bible Plugin uses the following channel name:
obs-bible-plugin
Consequently, if you are also using the BroadcastChannel
API, you should avoid using the same channel name to avoid any message conflicts.