streaming-system icon indicating copy to clipboard operation
streaming-system copied to clipboard

Move room configuration from config.json to database

Open mithro opened this issue 12 years ago • 2 comments

mithro avatar Jul 06 '13 07:07 mithro

Way back in the very early days of lca2014 planning before I'd really looked at what this system did i started mapping out a separate interface for plug/linux.conf.au that had the concept of presentations, channels and events.

Presentations

  POST /presentation
    Description
      This method is used to submit a new presentation.
    Required Parameters
      title
        string
      scheduled_start
        ISO 8601 date
      scheduled_end
        ISO 8601 date
    Optional Parameters
      description
        string
      presenter[title]
        string
      presenter[link]
        url
      auto_start
        boolean (default true)


    Example
      $ curl -i http://livestream.plug.org.au/presentation \
        -d '{ \
              "title": "PRESENTATION_TITLE", \
              "description": "PRESENTATION_DESCRIPTION", \
              "scheduled_start": "PRESENTATION_SCHEDULED_START", \
              "scheduled_end": "PRESENTATION_SCHEDULED_END", \
              "presenter": { \
                "title": "PRESENTER_NAME", \
                "link": "PRESENTER_LINK" \
              }\
            }'


  POST /presentation/:PRESENTATION_ID
    Description
      This method is used to update a Presentation
      It takes as a parameter the presentation attribute[s] to be updated.
    Valid Parameters
      title
      scheduled_start
      planner_end
      description
      presenter[title]
      presenter[link]
      auto_start
    Example
      $ curl -i -X POST http://livestream.plug.org.au/presentation/:PRESENTATION_ID?auto_start=false

  POST /presentation/:PRESENTATION_ID/start
    Description
      This method starts a Presentation.
    Example
      $ curl -i -X POST http://livestream.plug.org.au/presentation/:PRESENTATION_ID/start

  POST /presentation/:PRESENTATION_ID/end
    Description
      This method ends a Presentation.
    Example
      $ curl -i -X POST http://livestream.plug.org.au/presentation/:PRESENTATION_ID/end

Channels

  POST /channel
    Description
      This method is used to submit a new Channel.
    Required Parameters
      topic
        string
      description
        string
      irc
        url
      source
        url
    Example
      $ curl -i http://livestream.plug.org.au/channel \
        -d '{ \
              "topic": "CHANNEL_TOPIC", \
              "description": "CHANNEL_DESCRIPTION", \
              "irc": "CHANNEL_IRC", \
              "source": "CHANNEL_SOURCE" \
            }'

  POST /channel/:CHANNEL_ID
    Description
      This method is used to update a Channel.
      It takes as a parameter the channel attribute[s] to be updated.
    Valid Parameters
      title
      description
      irc
      source
    Example
      $ curl -i -X POST http://livestream.plug.org.au/channel/:CHANNEL_ID?source=NEWSOURCE

Events

  POST /event
    Description
      This method is used to submit a new Event.
    Required Parameters
      title
        string
      description
        string
      irc
        url
      scheduled_start
        ISO 8601 date
      scheduled_end
        ISO 8601 date
    Optional Parameters
      channels
        array of channels
      auto_start
        boolean (default true)
    Example
      $ curl -i http://livestream.plug.org.au/event \
        -d '{ \
              "title": "EVENT_TITLE", \
              "description": "EVENT_DESCRIPTION", \
              "irc": "EVENT_IRC", \
              "scheduled_start": "EVENT_SCHEDULED_START", \
              "scheduled_end": "EVENT_SCHEDULED_END", \
              "channels": "[\'CHANNEL_ID\']" \
            }'
  POST /event/:EVENT_ID
    Description
      This method is used to update a Event.
      It takes as a parameter the event attribute[s] to be updated.
    Valid Parameters
      title
      description
      irc
      scheduled_start
      scheduled_end
      channels
      auto_start
    Example
      $ curl -i -X POST http://livestream.plug.org.au/event/:EVENT_ID?auto_start=false

  POST /event/:EVENT_ID/start
    Description
      This method starts a Event.
    Example
      $ curl -i -X POST http://livestream.plug.org.au/event/:EVENT_ID/start

  POST /event/:EVENT_ID/end
    Description
      This method ends a Event.
    Example
      $ curl -i -X POST http://livestream.plug.org.au/event/:EVENT_ID/end

luke-john avatar Feb 18 '14 15:02 luke-john

I would like to contribute to this issue under GSoC. I've submitted my application to the system.

amrollah avatar Mar 21 '14 13:03 amrollah