...
We have an instance of phpBB in learningLMOD, which we use for both forum and announcement functionality. Once a forum is provisioned for a membership group, it grants permissions to the forum based on the role. Basically staff get read/post/moderate access, students get read/post access, and guests get read access.
Initially we used the built-in phpBB UI but we have been adding APIs on top of it. Currently we have a forum api which only gets/lists forum posts, which can be used for a read-only view into the forums.
Announcements are "sticky" posts within a forum. The API is read/write.
4.6.1 Example
https://mv-ezproxy-com.ezproxyberklee.flo.org/service/forum/announcement/
4.6.2 Intended Use Cases
- overview of forum
- make and view announcements
4.6.3 Pitfalls
- Does not (yet) support application certificates or impersonation.
- Does not (yet) support making posts in forums.
- The dev and test instances are not synchronized with the production data.
The forum/announcement content is stored as BBCode, a version of a subset of HTML. That means that if HTML is sent via the API (post_html attribute), some of the content may disappear. This is probably a good thing in general (e.g., script tags) but it can be surprising. Where possible, users should send BBCode via the API (post_bbcode attribute), since this will at least be stored as-is. - Forum group membership and permissions are synced with membership once an hour. This is not particularly easy to force manually but it can be done on the phpbb server.
- Forums are not currently archived when the membership group is archived.
- Checking and/or provisioning forums can be done via one-off API calls which are not documented and should be cleaned up before anyone uses them.
4.6.4 Full Documentation link
...
Announcement API: https://mv-ezproxy-com.ezproxyberklee.flo.org/service/forum/announcement/doc/
4.7 Odds and Ends
- Status API: https://mv-ezproxy-com.ezproxyberklee.flo.org/service/status/doc
- OTI API: https://mv-ezproxy-com.ezproxyberklee.flo.org/service/oti/doc/
- @Stellar API: https://mv-ezproxy-com.ezproxyberklee.flo.org/service/atstellar/doc/
- StudyNet / Yellowdig APIs, not even documented, just thin SSO layers to external systems