FA8307_RFI_ChatOps_Requirements_List.xlsx

XLSX spreadsheet 34 KB Posted

Attached to
FA8307_RFI_ChatOps_Requirement
Solicitation number
FA8307_RFI_ChatOps_Requirement
Issued by

About this file

This document is a Request for Information (RFI) for a federal chat operations (ChatOps) software solution for the Department of the Air Force Materiel Command Lifecycle Management Center Joint Base San Antonio. The government is currently using Mattermost and is seeking comparable ChatOps solutions that can meet a detailed set of platform hosting, integration, and functional requirements. The RFI provides instructions for vendors to submit alternative licensing options, pricing information, and responses to specific contract-related questions. The government is interested in a solution that can support self-hosting, containerization, scalability, PKI/CAC authentication, integration with data lakes and external systems, a robust API, and a range of collaboration features. No award will be made under this RFI; it is intended to gather market information to support a future solicitation. The government has provided detailed technical requirements across several tabs for vendors to review and respond to.

View the file

On GovTribe

Work with this file

  • Download the original file
  • Contacts named in this file
  • Similar government files
  • Ask GovTribe AI about this file

Text version

RFI Info Draft 2025 Requirements – P1 Chat Ops

Updated 21 October 2024
BACKGROUND
1The Platform One (P1) Party Bus platform has the requirement for self-hosting a Chat and Collaboration capability ("P1 Chat Ops") with the detailed requirements listed below.

2 Party Bus hosts this capability at three Unclassified Impact Levels (ILs): IL-2, IL-4, and IL-5, and one Classified Impact Level (IL) IL-6 with a separate server at each IL. This capability is provided to military, civilian, and contractor personnel across all military departments of the Department of Defense, as a DoD enterprise service. Within the U.S. Air Force, P1 Chat Ops is used across multiple Major Commands.

3 Users accessing the solution will use a variety of devices, including desktops, cell phones, and tablets through NIPRNet and the Internet; all Chat Ops web traffic ingresses and egresses shall be through a Cloud Native Access Point (CNAP), hosted by P1 in AWS GovCloud.

4 Party Bus has a collaborative relationship with the Government Software Factory BESPIN, to certify the P1 Chat Ops mobile application which is available in the Apple and Android app stores. The intention is for the P1 Chat Ops application to be certified for use up to and including IL-4 (CUI) on mobile devices.

5P1 intends for the Chat Ops application to be certified for use up to and including IL-4 (CUI) on mobile devices.
6On desktop, P1 intends access up to IL-5 by first authenticating through P1's Zero Trust Software Defined Perimeter (SDP), Appgate.
CONTRACTING ADDENDUM
Please provide information on the following:
Alternative License Types:
a) What other licensing/solutions do you offer?
Alternative 1:INSERT HERE
Alternative 2:INSERT HERE
Alternative 3:INSERT HERE
b) For each licensing option/solution set, please fill out a technical requirements tab to include whether or not your solution currently has the capability, and if not, how long it will take to incorporate if possible. In the comments column please include rationale for the answer.
*Instructions are on top of the Tab
Pricing Information:
a) For each license, please provide estimated transition and training costs and schedule for both transitioning to and from your proposed solution?
Alternative 1:INSERT HERE
Alternative 2:INSERT HERE
Alternative 3:INSERT HERE
b) For each license, please provide any price plans associated such as monthly, trial, annual?
Alternative 1:INSERT HERE
Alternative 2:INSERT HERE
Alternative 3:INSERT HERE
Contract Specific Questions:
a) What is the length of time needed to transition to your solution from Mattermost?
Alternative 1:INSERT HERE
Alternative 2:INSERT HERE
Alternative 3:INSERT HERE
b) What is the maximum length of contract your company is willing to enter between 1 and 5 years? If greater than one year, can they be pre-priced options?
Alternative 1:INSERT HERE
Alternative 2:INSERT HERE
Alternative 3:INSERT HERE
c) How much lead time does your company need for the exercise of option years?
Alternative 1:INSERT HERE
Alternative 2:INSERT HERE
Alternative 3:INSERT HERE
d) How much lead time is needed for new licenses to be provided?
Alternative 1:INSERT HERE
Alternative 2:INSERT HERE
Alternative 3:INSERT HERE
We are eager to find a solution that will best support our needs and ensure continued productivity.
Please Note: No award will be made under this RFI. Only a warranted Contracting Officer can obligate on behalf of the United States Government and that will be executed through an official request for quote (RFQ). The Government reserves the right to cancel this RFI. In the event the Government cancels this RFI, the Government has no obligation to pursue procurement or to reimburse an Offeror for any costs.

Alt 1 - Technical Requirements Instructions to fill out:

1) DO NOT FILL OUT COLUMNS B, D as these columns are the Government's required needs upon award of a contract for Chat Ops.

2) Fill In Yes or No in Column C and E whether your software solution is ready on day 1 (column C) or within 90 days (Column E). If unknown insert TBD in Column F.

3) If the software solution will be ready after day 1 insert the estimated number of days to resolve the capability in Column G.

4) Insert any comments, questions, concerns for each capability listed in Column I in Column J.

DAY 1Day 1 Y/NBY DAY 90Day 90 Y/NTBDWhen can this be available?
Platform Hosting & AccessQuestions/Comments/Feedback
X1Server can be self-hosted.
X2Server is containerized.
X3Server is able to scale easily based on demand.
X4Each server can support 75K simultaneously active users and be able to scale to support 200,000 simultaneously active users.
X5Vendor provides and maintains a containerized Docker image, that is scanned and approved by P1 Iron Bank.
X6The platform has minimal dependence on filesystem storage – stores persistent data in a database or S3-like storage.
X7The platform is easily accessible across multiple types of devices: Desktop, Mobile, and Tablet (e.g., Electronic Flight Bag/EFB).
X8The platform is accessible by computers using either Windows or Macintosh operating systems.
X9The platform is easlily accessible via either a browser or application.
X10The platform must be capable of importing data ingested from data lakes and support bi-directional communication between platforms. The Party Bus platform connects to DODIN Data Lakes such as Envision, Advana, MEIS, and DAWSThe Party Bus platform connects to DODIN Data Lakes such as Envision, Advana, MEIS, and DAWS. Data ingested from data lakes must be able to be imported into the Chat tool and support bi-directional communication between platforms.
X11The platform must provide mutual Transport Layer Security (mTLS) encryption in transit between users' applications and P1-hosted servers.
X12The platform must support PKI/CAC certificate-based sign-on as well as Multi-Factor Authentication (MFA).
X13The platform shall be compatible with P1’s Single Sign-On (SSO) via Keycloak and specifically compatible with OIDC, SAML 2.0, and LDAP.
X(a)The platform can/will be compatible with Okta/Sailpoint
X14The platform must have a tiered structure of administrator levels, including at a minimum: System admins, Group admins (level above channels), and Channel admins.
X15System/Platform admins must have access to team and channel management, statistics, and account activity dashboards.
X16The platform must be able to converse/interact with non-DoD entities such as commercial carriers and coalition partners as long as those external users have created a P1 account and have been granted access to the server by P1/Party Bus.
BESPIN Integration, Mobile App, and Vendor Support
X1Vendor shall provide 1 Full Time Equivalent (FTE) of engineering support. The engineer(s) must be a U.S. citizen. The engineer(s) shall support P1 as a technical liaison between P1 and the vendor, provide Tier 4 engineering support (Tiers 1 through 3 being provided by P1), and lead technical meetings such as recurring syncs between P1 Enterprise Collaboration Team and the vendor. The engineer will be onboarded and provided administrative access to portions of the Party Bus platform. The engineer must obtain a DoD External Certification Authority (ECA) token before obtaining platform access.
X2Upon contract award, the vendor shall support the government certification of the mobile P1 Chat Ops application via the BESPIN Mobile Software Factory. This includes providing engineering support, uploading source code into BESPIN's repository, and mitigating/answering findings from scanning tools. The engineer(s) shall support meetings with Platform One and BESPIN with the goal of having a continuously certified IL-2/4 mobile P1 Chat Ops application. Vendor engineers providing direct support must be U.S. citizens.
X3The vendor shall approve/accept and support the loading of the certified mobile application by BESPIN into the Apple and Android app stores, labeled as "P1 Chat Ops".
X4In general, must support push notifications on iOS and Android as well as desktop. (P1 will manage a push notification server managed for the P1 Chat Ops mobile application.)
X5P1 Chat Ops must stay current with new iOS and Android releases to prevent BESPIN revoking its Certificate to Field (CtF) and users being locked out. The vendor must iteratively and continuously upload code updates into BESPIN’s software pipelines.
X6Per user, allow customizing mobile notifications separately from desktop notifications (one setting preference does not affect the other).
X7Vendor should operate a “bug bounty” program to find vulnerabilities.
X8Vendor shall perform static code reviews with tools such as Fortify and Burp Suite and implement regular and recurring security patches/updates.
Integrations
X1The vendor shall provide plug-in support is required by the vendor, which allows P1 and partner developers to extend the functionality of a tool to enhance or build additional functionality.
X2The vendor shall provide documentation on API endpoint usage and code base must be provided.
X3The vendor/platform shall not have any access controls that prevent the government from utilizing the API endpoint.
X4The platform shall have the capability for a mass public service announcement (PSA)/notification to send information to all platform users
X5The platform shall support Web Hooks (e.g., alerts from external tools such as Twistlock)
X6The platform shall provide a full-featured, RESTful or SOAP API endpoint for ingest and exfil of data elements. It must be extensible beyond administrative functions.
X7The platform shall have ability for government developers to create triggers for automatic posting based on business rules or data transfer.
X8The platform shall have ability for government developers to incorporate buttons in channels to fetch data from connected systems and post information.
X9The platform shall have the ability to extract data from dialog buttons and export to CSV files.
X10The platform shall have the ability to incorporate data transferred from DODIN data lakes (see Platform Hosting section) into Chat tables with added hyperlinks and custom emojis.
X11The platform shall have the ability for Chat Ops messages to be scraped for analysis.
X12The platform shall have the ability for government developers to push insights back into the Chat Ops platform, based on data that is scraped (see above) and fed back into the Chat Ops software. For example, data that is fed back could be popular keywords, busiest channels by quantity of posts, sorting posts across all channels by author, and trends of topics over time.
X13The platform shall have the ability to create on-demand statistics for Chat Ops activity or system information.
X14The platfrom shall have the ability for Dataminr and C2D2 posts to be incorporated into the chat architecture.
X15The platform shall have the ability for government developers to update posts containing data from external sources, including deletion of messages and re-posting messages on a pre-defined schedule.
X16The platform shall expose robust metrics for scraping with Prometheus (or a similar tool).
X17The platform shall provide a capability for To-Do lists with the following features:
Xa) Allow users to mark posts/messages as to-do items, and reminders are scheduled by the user.
Xb) Allow users to assign to-do items to other users of the Chat software.
X18The platform shall provide an integrated KanBan Board capability with the following features:
Xa)Provide a KanBan Board feature that is used for oversight of tasks. They are meant to be used as very organized to-do lists that help people work together in a more cohesive manner.
Xb) Must allow dashboard-like views of information, expandable when clicking to show more details
Xc) Must allow adding tables, attachments, and images to dashboard cards
Xd) Must allow viewing cards in calendar and table views
Xe) Must allow sorting views by characteristics of the cards
Xf) Must allow creating/updating cards via API from external data sources
Xg) Must allow exporting dashboard cards to Excel
Xh) Must provide notifications for changes to a board/card
X19The platform shall provide an integrated checklist capability with the following features:
Xa) Provide a Checklist type of capability that helps teams manage and automate recurring processes and workflows. This is also a critical capability for incident response.
Xb) Must allow running checklists with access provided to multiple users, including assigning tasks to specific individuals.
Xc) Must allow tracking how many checklists have been run in a specified period and how many are open.
Xd) Must notify users of tasks in their queue.
X20The platform shall provide an integrated Polling capability with the following features:
Xa) Allows users to create a list of items that can be voted on, that are tallied, and results posted to enable gathering data on a topic.
Xb) Allow setting up polls in channels with visible responses
Xc) Allow participants to either add custom responses or restrict them to preset options
Automation
X1The platform shall support Slash Commands
X2The platform shall have the ability for commands to be run within checklists that trigger changes in status or notifications.
X3The platform shall have the ability for checklists to create new channels.
Chat Functionality
X1The platform shall provide a Threaded Responses capability, which means responses are embedded/consolidated by clicking on the first message in the string. This must be enabled by default (or configured to be on by default by the admin).
X2The platform shall provide both Public and Private channels, which are set/toggled by administrators. This status can be changed any time by the administrator after the channel is created.
X3The platform shall provide a unique user ID for each user.
X4The platform shall provide a hierarchy of Groups of channels, which is aligned to organizations and/or specific missions or purposes. These groups of channels can be either private or public. The platform shall allow restriction of channels in that group by group administrator(s). After creation, these groups shall be editable to change by the group administrator the privacy settings from private to public, or vice versa.
X5The platform shall have the ability to consolidate groups (e.g., two redundant groups within an organization) without losing channel membership or message history. This is intended to be an admin-level function.
X6The platform shall provide the ability for channels to be organized into categories by each user, by allowing users to drag and drop the channels into categories. The user can create their own categories as a user-specific view.
X7The platform shall allow users to enable sorting by unread messages, with unread messages appearing at the top of the channels/messages list.
X8The platform shall allow viewing of threads in reverse chronological order (most recent at the top ).
X9The platform shall allow viewing all mentions of username, trigger mentions, keywords, and user groups chronologically with most recent being at the top.
X10The platform shall allow bookmarking of hyperlinks, attachments, and messages. Additionally, within a channel, the platform shall allow public and private bookmarks–by setting a public bookmark, the message is saved for reference for all members of the channel; for private bookmarks, those are only visible to the individual user.
X11The platform shall allow users to edit channel names.
X12Within each channel, the platform shall provide a header with key information, and allow users to add information to the header, such as Zoom links or other URLs/hyperlinks.
X13The platform shall allow administrators to archive/un-archive channels while retaining membership and message history.
X14The platform shall allow functionality for developers to create channels and edit key features via code.
X15The platform shall provide functionality for system admins to either allow users to add other users to a private channel, or to dis-allow this functionality. For public channels, this functionality shall be allowed by default.
X16The platform shall allow messages to be previewed prior to sending.
X17The platform shall allow emojis, custom emojis, and GIFs in messages and replies.
X18The platform shall allow silently delivered reaction emojis.
X19The platform shall include a standard suite of emojis, packaged with the vendor’s chat software.
X20The platform shall allow hyperlinked text as well as attachments (Excel spreadsheets, Word documents, images, videos, PDFs, etc.)
X21The platform shall allow sync drafts of messages with the server in order to allow drafting messages on one system and finish the draft on another system (e.g., moving from desktop to mobile).
X22The platform shall allow direct messaging with one or more parties, to anyone on the server, regardless of channel or group membership.
X23The platform shall allow forwarding of a message from one channel to another, showing a preview before sending.
X24The platform shall allow grouping of users not associated with any channels or groups of channels with persistent notifications across all teams using "@[usergroup]".
X25The platform shall provide user group management features such as notifications, membership, user name, user nickname, archiving, and un-archiving. The platform shall enable these settings to be enabled, disabled, configured, etc.
X26The platform shall allow adjusting notification settings per channel by the user and admin.
X27The platform shall allow notifications based on user-defined keywords.
X28The platform shall allow setting a user’s display name with up to 64 characters.
X29The platform shall allow the user to click on the user's name within a message which shall provide a pop-up showing the user's name, nickname, email, and most recent time online.
X30The platform shall have the ability to push desktop notifications for direct messages, user group, username, and trigger mentions.
X31The platform shall allow muting of notifications for individual channels, while remaining visually and audibly aware of mentions.
X32The platform shall allow muting of all channels in a category or group simultaneously (with one button click).
X33The platform shall have the capability to automatically add users to designated channels (e.g., training, directory, feedback) when being onboarded (joining) to a chat group.
X34The platform shall allow system admins to move (cut-and-paste functionality) messages outside a thread into a threaded message string, or from one threaded message to another. The original date/time/user metadata must be preserved after moving it.
X35The platform shall allow users to globally search channels and direct messages for strings of characters, keywords, attachment file names, etc. Additionally, it shall enable narrow searching of only one channel or direct message at a time.
DESIRED (NOT REQUIRED INITIALLY)
X1The platform should allow direct messages to be converted to private channels.
X2The platform should provide a Video Calling feature, where users establish a call that has video capability. This is useful for visual inspections of aircraft, loading aircraft, virtual training, etc. This feature shall be disabled by default and enabled by an admin.
X3The platform should allow attachments and links to be permanently bookmarked to a channel set globally for all users of the channel, set in a pane that is distinct from the channel header .
X4The platform should provide read receipts—to those that have requested them—upon users/recipients reading a message.
X5The platform should allow for isolated keyword searches to a channel or direct communication.

Alt 2 - Technical Requirements Instructions to fill out:

1) DO NOT FILL OUT COLUMNS B, D as these columns are the Government's required needs upon award of a contract for Chat Ops.

2) Fill In Yes or No in Column C and E whether your software solution is ready on day 1 (column C) or within 90 days (Column E). If unknown insert TBD in Column F.

3) If the software solution will be ready after day 1 insert the estimated number of days to resolve the capability in Column G.

DAY 1Day 1 Y/NBY DAY 90Day 90 Y/NTBDWhen can this be available?
Platform Hosting & AccessQuestions/Comments/Feedback
X1Server can be self-hosted.
X2Server is containerized.
X3Server is able to scale easily based on demand.
X4Each server can support 75K simultaneously active users and be able to scale to support 200,000 simultaneously active users.
X5Vendor provides and maintains a containerized Docker image, that is scanned and approved by P1 Iron Bank.
X6The platform has minimal dependence on filesystem storage – stores persistent data in a database or S3-like storage.
X7The platform is easily accessible across multiple types of devices: Desktop, Mobile, and Tablet (e.g., Electronic Flight Bag/EFB).
X8The platform is accessible by computers using either Windows or Macintosh operating systems.
X9The platform is easlily accessible via either a browser or application.
X10The platform must be capable of importing data ingested from data lakes and support bi-directional communication between platforms. The Party Bus platform connects to DODIN Data Lakes such as Envision, Advana, MEIS, and DAWSThe Party Bus platform connects to DODIN Data Lakes such as Envision, Advana, MEIS, and DAWS. Data ingested from data lakes must be able to be imported into the Chat tool and support bi-directional communication between platforms.
X11The platform must provide mutual Transport Layer Security (mTLS) encryption in transit between users' applications and P1-hosted servers.
X12The platform must support PKI/CAC certificate-based sign-on as well as Multi-Factor Authentication (MFA).
X13The platform shall be compatible with P1’s Single Sign-On (SSO) via Keycloak and specifically compatible with OIDC, SAML 2.0, and LDAP.
X(a)The platform can/will be compatible with Okta/Sailpoint
X14The platform must have a tiered structure of administrator levels, including at a minimum: System admins, Group admins (level above channels), and Channel admins.
X15System/Platform admins must have access to team and channel management, statistics, and account activity dashboards.
X16The platform must be able to converse/interact with non-DoD entities such as commercial carriers and coalition partners as long as those external users have created a P1 account and have been granted access to the server by P1/Party Bus.
BESPIN Integration, Mobile App, and Vendor Support
X1Vendor shall provide 1 Full Time Equivalent (FTE) of engineering support. The engineer(s) must be a U.S. citizen. The engineer(s) shall support P1 as a technical liaison between P1 and the vendor, provide Tier 4 engineering support (Tiers 1 through 3 being provided by P1), and lead technical meetings such as recurring syncs between P1 Enterprise Collaboration Team and the vendor. The engineer will be onboarded and provided administrative access to portions of the Party Bus platform. The engineer must obtain a DoD External Certification Authority (ECA) token before obtaining platform access.
X2Upon contract award, the vendor shall support the government certification of the mobile P1 Chat Ops application via the BESPIN Mobile Software Factory. This includes providing engineering support, uploading source code into BESPIN's repository, and mitigating/answering findings from scanning tools. The engineer(s) shall support meetings with Platform One and BESPIN with the goal of having a continuously certified IL-2/4 mobile P1 Chat Ops application. Vendor engineers providing direct support must be U.S. citizens.
X3The vendor shall approve/accept and support the loading of the certified mobile application by BESPIN into the Apple and Android app stores, labeled as "P1 Chat Ops".
X4In general, must support push notifications on iOS and Android as well as desktop. (P1 will manage a push notification server managed for the P1 Chat Ops mobile application.)
X5P1 Chat Ops must stay current with new iOS and Android releases to prevent BESPIN revoking its Certificate to Field (CtF) and users being locked out. The vendor must iteratively and continuously upload code updates into BESPIN’s software pipelines.
X6Per user, allow customizing mobile notifications separately from desktop notifications (one setting preference does not affect the other).
X7Vendor should operate a “bug bounty” program to find vulnerabilities.
X8Vendor shall perform static code reviews with tools such as Fortify and Burp Suite and implement regular and recurring security patches/updates.
Integrations
X1The vendor shall provide plug-in support is required by the vendor, which allows P1 and partner developers to extend the functionality of a tool to enhance or build additional functionality.
X2The vendor shall provide documentation on API endpoint usage and code base must be provided.
X3The vendor/platform shall not have any access controls that prevent the government from utilizing the API endpoint.
X4The platform shall have the capability for a mass public service announcement (PSA)/notification to send information to all platform users
X5The platform shall support Web Hooks (e.g., alerts from external tools such as Twistlock)
X6The platform shall provide a full-featured, RESTful or SOAP API endpoint for ingest and exfil of data elements. It must be extensible beyond administrative functions.
X7The platform shall have ability for government developers to create triggers for automatic posting based on business rules or data transfer.
X8The platform shall have ability for government developers to incorporate buttons in channels to fetch data from connected systems and post information.
X9The platform shall have the ability to extract data from dialog buttons and export to CSV files.
X10The platform shall have the ability to incorporate data transferred from DODIN data lakes (see Platform Hosting section) into Chat tables with added hyperlinks and custom emojis.
X11The platform shall have the ability for Chat Ops messages to be scraped for analysis.
X12The platform shall have the ability for government developers to push insights back into the Chat Ops platform, based on data that is scraped (see above) and fed back into the Chat Ops software. For example, data that is fed back could be popular keywords, busiest channels by quantity of posts, sorting posts across all channels by author, and trends of topics over time.
X13The platform shall have the ability to create on-demand statistics for Chat Ops activity or system information.
X14The platfrom shall have the ability for Dataminr and C2D2 posts to be incorporated into the chat architecture.
X15The platform shall have the ability for government developers to update posts containing data from external sources, including deletion of messages and re-posting messages on a pre-defined schedule.
X16The platform shall expose robust metrics for scraping with Prometheus (or a similar tool).
X17The platform shall provide a capability for To-Do lists with the following features:
Xa) Allow users to mark posts/messages as to-do items, and reminders are scheduled by the user.
Xb) Allow users to assign to-do items to other users of the Chat software.
X18The platform shall provide an integrated KanBan Board capability with the following features:
Xa)Provide a KanBan Board feature that is used for oversight of tasks. They are meant to be used as very organized to-do lists that help people work together in a more cohesive manner.
Xb) Must allow dashboard-like views of information, expandable when clicking to show more details
Xc) Must allow adding tables, attachments, and images to dashboard cards
Xd) Must allow viewing cards in calendar and table views
Xe) Must allow sorting views by characteristics of the cards
Xf) Must allow creating/updating cards via API from external data sources
Xg) Must allow exporting dashboard cards to Excel
Xh) Must provide notifications for changes to a board/card
X19The platform shall provide an integrated checklist capability with the following features:
Xa) Provide a Checklist type of capability that helps teams manage and automate recurring processes and workflows. This is also a critical capability for incident response.
Xb) Must allow running checklists with access provided to multiple users, including assigning tasks to specific individuals.
Xc) Must allow tracking how many checklists have been run in a specified period and how many are open.
Xd) Must notify users of tasks in their queue.
X20The platform shall provide an integrated Polling capability with the following features:
Xa) Allows users to create a list of items that can be voted on, that are tallied, and results posted to enable gathering data on a topic.
Xb) Allow setting up polls in channels with visible responses
Xc) Allow participants to either add custom responses or restrict them to preset options
Automation
X1The platform shall support Slash Commands
X2The platform shall have the ability for commands to be run within checklists that trigger changes in status or notifications.
X3The platform shall have the ability for checklists to create new channels.
Chat Functionality
X1The platform shall provide a Threaded Responses capability, which means responses are embedded/consolidated by clicking on the first message in the string. This must be enabled by default (or configured to be on by default by the admin).
X2The platform shall provide both Public and Private channels, which are set/toggled by administrators. This status can be changed any time by the administrator after the channel is created.
X3The platform shall provide a unique user ID for each user.
X4The platform shall provide a hierarchy of Groups of channels, which is aligned to organizations and/or specific missions or purposes. These groups of channels can be either private or public. The platform shall allow restriction of channels in that group by group administrator(s). After creation, these groups shall be editable to change by the group administrator the privacy settings from private to public, or vice versa.
X5The platform shall have the ability to consolidate groups (e.g., two redundant groups within an organization) without losing channel membership or message history. This is intended to be an admin-level function.
X6The platform shall provide the ability for channels to be organized into categories by each user, by allowing users to drag and drop the channels into categories. The user can create their own categories as a user-specific view.
X7The platform shall allow users to enable sorting by unread messages, with unread messages appearing at the top of the channels/messages list.
X8The platform shall allow viewing of threads in reverse chronological order (most recent at the top ).
X9The platform shall allow viewing all mentions of username, trigger mentions, keywords, and user groups chronologically with most recent being at the top.
X10The platform shall allow bookmarking of hyperlinks, attachments, and messages. Additionally, within a channel, the platform shall allow public and private bookmarks–by setting a public bookmark, the message is saved for reference for all members of the channel; for private bookmarks, those are only visible to the individual user.
X11The platform shall allow users to edit channel names.
X12Within each channel, the platform shall provide a header with key information, and allow users to add information to the header, such as Zoom links or other URLs/hyperlinks.
X13The platform shall allow administrators to archive/un-archive channels while retaining membership and message history.
X14The platform shall allow functionality for developers to create channels and edit key features via code.
X15The platform shall provide functionality for system admins to either allow users to add other users to a private channel, or to dis-allow this functionality. For public channels, this functionality shall be allowed by default.
X16The platform shall allow messages to be previewed prior to sending.
X17The platform shall allow emojis, custom emojis, and GIFs in messages and replies.
X18The platform shall allow silently delivered reaction emojis.
X19The platform shall include a standard suite of emojis, packaged with the vendor’s chat software.
X20The platform shall allow hyperlinked text as well as attachments (Excel spreadsheets, Word documents, images, videos, PDFs, etc.)
X21The platform shall allow sync drafts of messages with the server in order to allow drafting messages on one system and finish the draft on another system (e.g., moving from desktop to mobile).
X22The platform shall allow direct messaging with one or more parties, to anyone on the server, regardless of channel or group membership.
X23The platform shall allow forwarding of a message from one channel to another, showing a preview before sending.
X24The platform shall allow grouping of users not associated with any channels or groups of channels with persistent notifications across all teams using "@[usergroup]".
X25The platform shall provide user group management features such as notifications, membership, user name, user nickname, archiving, and un-archiving. The platform shall enable these settings to be enabled, disabled, configured, etc.
X26The platform shall allow adjusting notification settings per channel by the user and admin.
X27The platform shall allow notifications based on user-defined keywords.
X28The platform shall allow setting a user’s display name with up to 64 characters.
X29The platform shall allow the user to click on the user's name within a message which shall provide a pop-up showing the user's name, nickname, email, and most recent time online.
X30The platform shall have the ability to push desktop notifications for direct messages, user group, username, and trigger mentions.
X31The platform shall allow muting of notifications for individual channels, while remaining visually and audibly aware of mentions.
X32The platform shall allow muting of all channels in a category or group simultaneously (with one button click).
X33The platform shall have the capability to automatically add users to designated channels (e.g., training, directory, feedback) when being onboarded (joining) to a chat group.
X34The platform shall allow system admins to move (cut-and-paste functionality) messages outside a thread into a threaded message string, or from one threaded message to another. The original date/time/user metadata must be preserved after moving it.
X35The platform shall allow users to globally search channels and direct messages for strings of characters, keywords, attachment file names, etc. Additionally, it shall enable narrow searching of only one channel or direct message at a time.
DESIRED (NOT REQUIRED INITIALLY)
X1The platform should allow direct messages to be converted to private channels.
X2The platform should provide a Video Calling feature, where users establish a call that has video capability. This is useful for visual inspections of aircraft, loading aircraft, virtual training, etc. This feature shall be disabled by default and enabled by an admin.
X3The platform should allow attachments and links to be permanently bookmarked to a channel set globally for all users of the channel, set in a pane that is distinct from the channel header .
X4The platform should provide read receipts—to those that have requested them—upon users/recipients reading a message.
X5The platform should allow for isolated keyword searches to a channel or direct communication.

Alt 3 - Technical Requirements Instructions to fill out:

1) DO NOT FILL OUT COLUMNS B, D as these columns are the Government's required needs upon award of a contract for Chat Ops.

2) Fill In Yes or No in Column C and E whether your software solution is ready on day 1 (column C) or within 90 days (Column E). If unknown insert TBD in Column F.

3) If the software solution will be ready after day 1 insert the estimated number of days to resolve the capability in Column G.

DAY 1Day 1 Y/NBY DAY 90Day 90 Y/NTBDWhen can this be available?
Platform Hosting & AccessQuestions/Comments/Feedback
X1Server can be self-hosted.
X2Server is containerized.
X3Server is able to scale easily based on demand.
X4Each server can support 75K simultaneously active users and be able to scale to support 200,000 simultaneously active users.
X5Vendor provides and maintains a containerized Docker image, that is scanned and approved by P1 Iron Bank.
X6The platform has minimal dependence on filesystem storage – stores persistent data in a database or S3-like storage.
X7The platform is easily accessible across multiple types of devices: Desktop, Mobile, and Tablet (e.g., Electronic Flight Bag/EFB).
X8The platform is accessible by computers using either Windows or Macintosh operating systems.
X9The platform is easlily accessible via either a browser or application.
X10The platform must be capable of importing data ingested from data lakes and support bi-directional communication between platforms. The Party Bus platform connects to DODIN Data Lakes such as Envision, Advana, MEIS, and DAWSThe Party Bus platform connects to DODIN Data Lakes such as Envision, Advana, MEIS, and DAWS. Data ingested from data lakes must be able to be imported into the Chat tool and support bi-directional communication between platforms.
X11The platform must provide mutual Transport Layer Security (mTLS) encryption in transit between users' applications and P1-hosted servers.
X12The platform must support PKI/CAC certificate-based sign-on as well as Multi-Factor Authentication (MFA).
X13The platform shall be compatible with P1’s Single Sign-On (SSO) via Keycloak and specifically compatible with OIDC, SAML 2.0, and LDAP.
X(a)The platform can/will be compatible with Okta/Sailpoint
X14The platform must have a tiered structure of administrator levels, including at a minimum: System admins, Group admins (level above channels), and Channel admins.
X15System/Platform admins must have access to team and channel management, statistics, and account activity dashboards.
X16The platform must be able to converse/interact with non-DoD entities such as commercial carriers and coalition partners as long as those external users have created a P1 account and have been granted access to the server by P1/Party Bus.
BESPIN Integration, Mobile App, and Vendor Support
X1Vendor shall provide 1 Full Time Equivalent (FTE) of engineering support. The engineer(s) must be a U.S. citizen. The engineer(s) shall support P1 as a technical liaison between P1 and the vendor, provide Tier 4 engineering support (Tiers 1 through 3 being provided by P1), and lead technical meetings such as recurring syncs between P1 Enterprise Collaboration Team and the vendor. The engineer will be onboarded and provided administrative access to portions of the Party Bus platform. The engineer must obtain a DoD External Certification Authority (ECA) token before obtaining platform access.
X2Upon contract award, the vendor shall support the government certification of the mobile P1 Chat Ops application via the BESPIN Mobile Software Factory. This includes providing engineering support, uploading source code into BESPIN's repository, and mitigating/answering findings from scanning tools. The engineer(s) shall support meetings with Platform One and BESPIN with the goal of having a continuously certified IL-2/4 mobile P1 Chat Ops application. Vendor engineers providing direct support must be U.S. citizens.
X3The vendor shall approve/accept and support the loading of the certified mobile application by BESPIN into the Apple and Android app stores, labeled as "P1 Chat Ops".
X4In general, must support push notifications on iOS and Android as well as desktop. (P1 will manage a push notification server managed for the P1 Chat Ops mobile application.)
X5P1 Chat Ops must stay current with new iOS and Android releases to prevent BESPIN revoking its Certificate to Field (CtF) and users being locked out. The vendor must iteratively and continuously upload code updates into BESPIN’s software pipelines.
X6Per user, allow customizing mobile notifications separately from desktop notifications (one setting preference does not affect the other).
X7Vendor should operate a “bug bounty” program to find vulnerabilities.
X8Vendor shall perform static code reviews with tools such as Fortify and Burp Suite and implement regular and recurring security patches/updates.
Integrations
X1The vendor shall provide plug-in support is required by the vendor, which allows P1 and partner developers to extend the functionality of a tool to enhance or build additional functionality.
X2The vendor shall provide documentation on API endpoint usage and code base must be provided.
X3The vendor/platform shall not have any access controls that prevent the government from utilizing the API endpoint.
X4The platform shall have the capability for a mass public service announcement (PSA)/notification to send information to all platform users
X5The platform shall support Web Hooks (e.g., alerts from external tools such as Twistlock)
X6The platform shall provide a full-featured, RESTful or SOAP API endpoint for ingest and exfil of data elements. It must be extensible beyond administrative functions.
X7The platform shall have ability for government developers to create triggers for automatic posting based on business rules or data transfer.
X8The platform shall have ability for government developers to incorporate buttons in channels to fetch data from connected systems and post information.
X9The platform shall have the ability to extract data from dialog buttons and export to CSV files.
X10The platform shall have the ability to incorporate data transferred from DODIN data lakes (see Platform Hosting section) into Chat tables with added hyperlinks and custom emojis.
X11The platform shall have the ability for Chat Ops messages to be scraped for analysis.
X12The platform shall have the ability for government developers to push insights back into the Chat Ops platform, based on data that is scraped (see above) and fed back into the Chat Ops software. For example, data that is fed back could be popular keywords, busiest channels by quantity of posts, sorting posts across all channels by author, and trends of topics over time.
X13The platform shall have the ability to create on-demand statistics for Chat Ops activity or system information.
X14The platfrom shall have the ability for Dataminr and C2D2 posts to be incorporated into the chat architecture.
X15The platform shall have the ability for government developers to update posts containing data from external sources, including deletion of messages and re-posting messages on a pre-defined schedule.
X16The platform shall expose robust metrics for scraping with Prometheus (or a similar tool).
X17The platform shall provide a capability for To-Do lists with the following features:
Xa) Allow users to mark posts/messages as to-do items, and reminders are scheduled by the user.
Xb) Allow users to assign to-do items to other users of the Chat software.
X18The platform shall provide an integrated KanBan Board capability with the following features:
Xa)Provide a KanBan Board feature that is used for oversight of tasks. They are meant to be used as very organized to-do lists that help people work together in a more cohesive manner.
Xb) Must allow dashboard-like views of information, expandable when clicking to show more details
Xc) Must allow adding tables, attachments, and images to dashboard cards
Xd) Must allow viewing cards in calendar and table views
Xe) Must allow sorting views by characteristics of the cards
Xf) Must allow creating/updating cards via API from external data sources
Xg) Must allow exporting dashboard cards to Excel
Xh) Must provide notifications for changes to a board/card
X19The platform shall provide an integrated checklist capability with the following features:
Xa) Provide a Checklist type of capability that helps teams manage and automate recurring processes and workflows. This is also a critical capability for incident response.
Xb) Must allow running checklists with access provided to multiple users, including assigning tasks to specific individuals.
Xc) Must allow tracking how many checklists have been run in a specified period and how many are open.
Xd) Must notify users of tasks in their queue.
X20The platform shall provide an integrated Polling capability with the following features:
Xa) Allows users to create a list of items that can be voted on, that are tallied, and results posted to enable gathering data on a topic.
Xb) Allow setting up polls in channels with visible responses
Xc) Allow participants to either add custom responses or restrict them to preset options
Automation
X1The platform shall support Slash Commands
X2The platform shall have the ability for commands to be run within checklists that trigger changes in status or notifications.
X3The platform shall have the ability for checklists to create new channels.
Chat Functionality
X1The platform shall provide a Threaded Responses capability, which means responses are embedded/consolidated by clicking on the first message in the string. This must be enabled by default (or configured to be on by default by the admin).
X2The platform shall provide both Public and Private channels, which are set/toggled by administrators. This status can be changed any time by the administrator after the channel is created.
X3The platform shall provide a unique user ID for each user.
X4The platform shall provide a hierarchy of Groups of channels, which is aligned to organizations and/or specific missions or purposes. These groups of channels can be either private or public. The platform shall allow restriction of channels in that group by group administrator(s). After creation, these groups shall be editable to change by the group administrator the privacy settings from private to public, or vice versa.
X5The platform shall have the ability to consolidate groups (e.g., two redundant groups within an organization) without losing channel membership or message history. This is intended to be an admin-level function.
X6The platform shall provide the ability for channels to be organized into categories by each user, by allowing users to drag and drop the channels into categories. The user can create their own categories as a user-specific view.
X7The platform shall allow users to enable sorting by unread messages, with unread messages appearing at the top of the channels/messages list.
X8The platform shall allow viewing of threads in reverse chronological order (most recent at the top ).
X9The platform shall allow viewing all mentions of username, trigger mentions, keywords, and user groups chronologically with most recent being at the top.
X10The platform shall allow bookmarking of hyperlinks, attachments, and messages. Additionally, within a channel, the platform shall allow public and private bookmarks–by setting a public bookmark, the message is saved for reference for all members of the channel; for private bookmarks, those are only visible to the individual user.
X11The platform shall allow users to edit channel names.
X12Within each channel, the platform shall provide a header with key information, and allow users to add information to the header, such as Zoom links or other URLs/hyperlinks.
X13The platform shall allow administrators to archive/un-archive channels while retaining membership and message history.
X14The platform shall allow functionality for developers to create channels and edit key features via code.

This is the start of the file's text. The full file is on GovTribe.

File details come from the government source that posted it. Updated .