Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

User communication interaction stories. #9

Open
Dbevan opened this issue May 11, 2019 · 0 comments
Open

User communication interaction stories. #9

Dbevan opened this issue May 11, 2019 · 0 comments

Comments

@Dbevan
Copy link

Dbevan commented May 11, 2019

Feature: As a user I want to communicate with other users so that we may organize and have fun.

Scenario: The user wishes to communicate to all other connected users.

  • Given the user is staff,
    • When the user attempts to broadcast a message to all connected users,
      • Then all connected users receive the message.
  • Given the user is not staff,
    • When the user attempts to broadcast a message to all connected users,
      • Then the user receives a generic 'command not found' error message.
      • And the request fails.

Scenario: The user wants to communicate to all other connected users within the user's location.

  • Given the sender is muted,
    • When the sender attempts to communicate the sender's location,
      • Then the sender is reminded that they are muted and may not do so.
      • And the action fails.
  • Given the sender is deaf,
    • When the sender attempts to communicate to the sender's location,
      • Then the sender is reminded that they are deaf, and will not hear any response.
      • And all connected users within the sender's location who are not set deaf will receive the communication.
      • And connected users within the sender's location who are set deaf will not receive the communication.
      • And connected users not within the sender's location will not receive the communication.
  • Given the sender is dark,
    • When the sender attempts to communicate to a location,
      • Then all connected users within the location who are staff and not deaf will receive the communication with identifying its source.
      • And all connected users within the location who are not staff and not deaf will receive the communication without identifying its source.
      • And connected users within the sender's location who are set deaf will not receive the communication.
      • And connected users not within the sender's location will not receive the communication.
  • Given the sender is neither mute nor deaf,
    • When the sender attempts to communicate to a location,
      • Then the sender is not reminded that they are deaf.
      • And all connected users within the location who are not deaf will receive the communication.
      • And connected users within the sender's location who are set deaf will not receive the communication.
      • And connected users not within the sender's location will not receive the communication.

Scenario: The user wants to privately communicate to a user-specified subset of connected users within the user's location # whisper

  • Given the sender is mute,
    • When the user attempts to communicate to a user-specified subset of connected users within the user's location,
      • Then the sender is reminded that they are muted and may not do so.
      • And the action fails.
  • Given the sender is deaf,
    • When the user attempts to communicate to a user-specified subset of connected users within the user's location,
      • Then the sender is reminded that they are deaf, and will not hear any response.
      • And user-specified subset of connected users within the user's location who are not set deaf will receive the communication.
  • **Given the recipient does not exist,
    • When the user attempts to communicate to a user-specified subset of connected users within the user's location,
      • Then
  • Given the recipient is not present in the sender's location
    • When
      • Then
  • Given the recipient not connected
    • When
      • Then
  • Given the recipient deaf
    • When
      • Then
  • Given the recipient has blocked the sender
    • When
      • Then
  • Given the sender is not prohibited from sending a message,
  • And the recipient is present in the location of the sender, connected, and able to receive a message,
    • When
      • Then

Does the user want to obscure the list (bcc) or is the list public to all on it?

Scenario: The user wants to privately communicate to a user-specified subset of connected users regardless of location. # tells

  • Given the sender mute,
    • When
      • Then
  • Given the sender is deaf,
    • When
      • Then
  • Given the recipient does not exist,
    • When
      • Then
  • Given the recipient is not connected,
    • When
      • Then
  • Given the recipient is deaf,
    • When
      • Then
  • Given the recipient has blocked the sender,
    • When
      • Then
  • Given the sender is not prohibited from sending a message,
  • And the recipient is connected and able to receive a message,
    • When
      • Then

Does the user want to obscure the list (bcc) or is the list public to all on it?

Scenario: The user wants to privately communicate to a system-specified subset of connected users. # chat channels

  • Given the subset of connected users does not exist,
    • When
      • Then
  • Given the sender is not a member of the subset of connected users,
    • When
      • Then
  • Given the sender is a member of the subset of connected users,
  • And is restricted from sending to that subset,
    • When
      • Then
  • Given the sender is mute,
    • When
      • Then
  • Given the sender is deaf,
    • When
      • Then
  • Given the subset of connected users exists,
  • And the sender is a member of the subset of connected users with send-access privileges and is not otherwise restricted from communication,
    • When
      • Then send the message to all members of the subset of connected users who have not blocked the sender and are not deaf. # Do I need to check for deafness/blocked status in this scenario, or is this sufficient to indicate that must happen?

Do join, leave, and mute scenarios go here?

Scenario: The user wants to communicate in a longer, persistent form to a user-specified subset of users. # Mail

  • is the sender restricted # how does this differ from mute?
  • does the recipient exist
  • has the recipient blocked the sender # cannot block staff
  • is the message missing a vital attribute [subject, content]
  • is the message of malicious size # maximum file size?
  • send message
  • store message
  • sender is notified their message has been sent
  • if online, recipient is notified they have received a message
  • if offline, recipient will be notified upon next connection that they have a message

** Do read scenarios go here? **

Scenario: The user wants to communicate in a longer, persistent form to a system-specified subset of users. # Mail List

  • does subset exist
  • is user a member of subset (with sending privileges)
  • is the sender restricted # how does this differ from mute?
  • does the recipient exist
  • has the recipient blocked the sender # cannot block staff
  • is the message missing a vital attribute [subject, content]
  • is the message of malicious size # maximum file size?
  • send message
  • store message
  • sender is notified their message has been sent
  • if online, recipient is notified they have received a message
  • if offline, recipient will be notified they have a message upon connection

** Do read scenarios go here? **
** Do join and leave scenarios go here?**

Scenario: The user wants to communicate in a longer, persistent form to a system-specified subset of users. # BB

  • does subset exist
  • is user a member of subset (with writing privileges)
  • is the sender restricted # how does this differ from mute?
  • is the message missing a vital attribute [subject, content]
  • is the message of malicious size # maximum file size?
  • post/store message
  • online members of subset are notified there is a new message
  • offline members of subset will be notified there is a new message upon connection # if they have not muted notifications?

Scenario: User wants to mute communications. # all channels/deaf
Scenario: User wants to reinitiate communications.
Scenario: User wants to mute a subset of users. # block an individual, all tells, one chat, all chat, notifications for mail or bb
Scenario: User wants to unmute a subset of users.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant