Skip to content

Feature Request: Chat Channel POST for MOTD, and Operator, Banned, etc lists #349

@DaneelTrevize

Description

@DaneelTrevize

Feature request

As per #103
to enhance https://esi.tech.ccp.is/latest/#!/Character/get_characters_character_id_chat_channels
many entities would benefit from writable chat channel meta-data endpoints (by which I mean the channel attributes rather than being able to write or read ingame chat channel discussions).

This request breaks down into 2 parts, and perhaps should be split into 2 requests.

  1. Firstly a POST endpoint for the MOTD value.
  2. Secondly a POST or PUT & DELETE series of endpoints to manipulate channel accessors lists, with highest priority being the operators and blocked lists.

Re:1

Route

PUT/POST /characters/{character_id}/chat_channels/{channel_id}
Similar to /fleets/{fleet_id}/ through which one can set fleet MOTD

Authentication

New scope: esi-characters.write_chat_channels.v1

Example returns

To be consistent with the fleet MOTD endpoint, simply
204 | Channel updated
upon success

Re:2

Routes

PUT & DELETE /characters/{character_id}/chat_channels/{channel_id}/operators/{operator_id}
PUT & DELETE /characters/{character_id}/chat_channels/{channel_id}/blocked/{blocked_id}
PUT & DELETE /characters/{character_id}/chat_channels/{channel_id}/allowed/{allowed_id}
PUT & DELETE /characters/{character_id}/chat_channels/{channel_id}/muted/{muted_id}
Similar to /fleets/{fleet_id}/members/{member_id} through which one can assign fleet members to squads/wings.

Authentication

Again, same new scope: esi-characters.write_chat_channels.v1

Example returns

To be consistent with the fleet endpoints, simply
204 | Channel list updated
upon successful PUT, and
204 | Channel character removed
upon successful DELETE.

Use case

re: 1, as per https://spectrefleet.com/motd_format specifically the "Why this exists" section, there are several long-standing bugs with the Eve client's MOTD editor mispresenting the character limit and any truncation caused by exceeding it. Having to have our FCs use a somewhat cryptic formatting style in order to remain within the character limit causes us issues almost daily, as well as requires all our FCs have Operator access to our community's central channel. By having a writable MOTD endpoint, we can create a webpage that will manage editing our MOTD without risk of breaking the ingame formatting via truncation, as well as removing the risk of granting Op rights to many 10s of people.

re: 2. As the ESI and other APIs can't be relied upon for 100% uptime, we will always have our ingame channel operator rights as a backup even if only held by those with higher community standing. The ability to modify the Operators list externally via ESI will significantly ease keeping our channel rights in sync with our external trust hierarchy (we would be able to grant and remove Op rights as our FCs are promoted or demoted, other Eve communities might want to use Corp Titles/Roles to drive channel permissions).
Similarly the ability to externally manage the Banned lists would significantly reduce the workload on our staff to keep permissions synchronised across our main and "X-Up" channels, which must remain for similar fallback reasons, even while we promote the use of requesting fleet invites via API-backed mechanisms.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions