Giter VIP home page Giter VIP logo

corsica's People

Contributors

barslev avatar davidascher avatar dependabot[bot] avatar fwenzel avatar lonnen avatar mozilla-github-standards avatar mythmon avatar potch avatar ramilewski avatar tomfairey avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

corsica's Issues

I keep getting this error when I try to start the server

events.js:183 throw er; // Unhandled 'error' event ^ Error: spawn node ENOENT at _errnoException (util.js:1024:11) at Process.ChildProcess._handle.onexit (internal/child_process.js:190:19) at onErrorNT (internal/child_process.js:372:16) at _combinedTickCallback (internal/process/next_tick.js:138:11) at process._tickCallback (internal/process/next_tick.js:180:9)

implement globbing

Messages should be addressable to globs. A plugin can execute the globs as a regex against known screen names and expand the glob into an array of screens.

Globbing doesn't work.

identify screen=* and identify screen=ambient* are not working, though identify screen=ambient3 works as expected.

Greenkeeper.io has been shutdown

We're opening this issue because your project has previously used Greenkeeper.io. Greenkeeper.io was shutdown on 3rd June 2020. We are therefore removing the obsolete Greenkeeper.io integration.

If you are already using an alternative solution, you can close and ignore this issue.

Other alternatives are available, various Mozilla repositories already use Renovate.

If you have any questions, reach out in #github-admin:mozilla.org on matrix.

Social API

maybe a plugin...
support the social API for one(or two)-click send-to-corsica

hydra mode

It might be nice to write a hydra UI like CT.

Specifying a plugin in .env appears not to work.

After installing corsica-image and specifying it in .env file it fails to load on npm start.

Adding corsica-image in the plugins section of config.js does load the plugin on npm start

env.txt (The original name was .env, but GitHub won't allow pasting hidden files).

better identify for remote administration

Remote admin is a pain on TVs and other devices where connecting the console is difficult. Commands exist for us to remote administer them, but the name is needed. identify works when you can sync up the admin and the TV location. We need a better solution for when that can't happen.

A good enough solution would trigger identify on connect and rename. A better solution would provide a toggle-able configuration editing form.

though -> thou?

This may just be the best bug I will ever file in my entire lifetime.

The readme says:

decreux dost though even hoist

I think this needs to be thou, not though, but will need a native speaker to confirm.

doffs hat

Implement weighting for content

From Yammer. It'd be great to be able to show one thing more/less frequently than another. This might take the shape of likelihoods (i.e., random next row and the chance that one is picked over the other varies), or time (a lower priority screen is shown for shorter time frames).

@mythmon writes:
"Right now there is no way to lower the weight of particular rows. We have a hacky way to raise priority of things by duplicating rows, but it's pretty rough. Shortly after this poll was posted, I doubled the probability of the "martell" command row, which shows logos from http://blog.seanmartell.com/brands/

Better random weighting is something we'd like to implement in the near future though."

corsica --help nit picking

The use of [option] in the help could be confusing:
The set of options available in corsica [option] [command] is distinct from the (single?) option available in start [options] and **restart [options].

flickr enhancements

Currently we can operate on flickr galleries. We'd like to be able to post a random image from a flickr stream as well.

Bonus points for overlaying some text to provide context. Photos out of the context of a page or even a gallery will be confusing without a hint of some kind.

Screen Grouping

We have a requirement to allow the Engineering group to control some of the screens in their area.

Potch suggests that it could be possible to assign screens to 2 or more groups and have independent control over the playlist for each group.

Travis CI free usage ends Dec 3; mozilla repos should switch to other CI platforms

We're opening this issue because your project has used Travis CI within the last 6 months. If you have already migrated off it, you can close and ignore this issue.

Travis CI is ending free builds on public repositories. travis-ci.com stopped providingthem in early November, and travis-ci.org will stop after December 31, 2020. To avoid disruptions to your workflows, you must migrate to another CI service.

For production use cases, we recommend switching to CircleCI. This service is already widely used within Mozilla. There is a guide to migrating from Travis CI to CircleCI available here.

For non production use cases, we recommend either CircleCI or Github Actions. There is a guide to migrating from Travis CI to Github Actions available here. Github Actions usage within Mozilla is new, and you will have to work with our github administrators to enable specific actions following this process.

If you have any questions, reach out in #github-admin:mozilla.org on matrix.

Setting up a screen w/o access to dev console

Hi there,

There are a few spare TVs in Taipei and I would like to tune them into http://corsica.mozilla.io/ . We sideloaded Fennec into the Android TV but we couldn't attach a DevTools onto it, because there isn't a cable to connect it to the TV (as a phone would) nor it has a camera allow it to take a QR code.

I wonder if we want to add a minimum console into it? Or, eval the code from location.hash...?

Firefox Parameter Setting

It would be nice to be able to change selected firefox prefs (such as the show address bar selection from the View menu. Can there be a general syntax for sending messages from the UI to one or more machines that adjust such things (and about: config prefs as well).

default group

Richard was asking after a way of easily defining a default group. * isn't exactly right because that would impact all TVs. We're after a way to have new screens that are not otherwise defined in a group to get some content.

Per-content timers.

Right now we have a single timer for everything. It would be better if the timer was configurable. The motivation for this was talking to Katt in PDX. She said that the largest complaint about the ambient screens here was not the content, but the frequency that the changed.

We already have per-screen timers in the code, we just need some way to configure the timer length.

static/js/promise.js missing

Using the 'modernize' branch, several files try to load 'promise.js' from static/js but this file does not exist.

Policy plugin

Several future needs of Corsica could be satisfied with "policies", defined below. I think this can deal with ACLs, making interfaces (such as IRC) more friendly, and scoping of portions of Corsica (such as PDX vs MV).

Examples of policies:

  • Only authorized users can modify tag subscriptions for mv-ambient*.
  • The IRC bot in #moz-pdx should default to pdx-ambient1 and pdx-ambient2.
  • No video links are allowed in *-eng-*.
  • Images in the kitchen can only be on the screen for 60 seconds.

"Authorization" simply means an assertion about the message. A separate plugin would do actual authentication and authorization.

A policy has 4 parts: filters, assertions, defaults, and "things that will be set" (this needs a better name).

  • filters are what decides if a policy will apply to a given message. For example "targeting the subscriptions of mv-ambient*" could be a filter.
  • assertions are things that must be true, otherwise the message will be rejected. A rejected message does not affect any clients. These only apply to messages that have matched the filters. For example: "The user must be authorized".
  • defaults are the properties that will be set on a message without overwriting. For example, "if screen is undefined, set it to pdx-ambient1 or pdx-ambient2".
  • "things that will be set" are things that will be overwritten in the message. For example "set the timeout to 60s".

I think this handles all the use cases I outlined above, and a lot more. It might, however, be overly complicated. Maybe these goals would be better served in disparate plugins. I think that these 4 things are strongly linked, and would do well to be configured, managed and implemented together.

Thoughts?

I keep getting this error when I try to start the server

events.js:183 throw er; // Unhandled 'error' event ^ Error: spawn node ENOENT at _errnoException (util.js:1024:11) at Process.ChildProcess._handle.onexit (internal/child_process.js:190:19) at onErrorNT (internal/child_process.js:372:16) at _combinedTickCallback (internal/process/next_tick.js:138:11) at process._tickCallback (internal/process/next_tick.js:180:9)

CODE_OF_CONDUCT.md file missing

As of January 1 2019, Mozilla requires that all GitHub projects include this CODE_OF_CONDUCT.md file in the project root. The file has two parts:

  1. Required Text - All text under the headings Community Participation Guidelines and How to Report, are required, and should not be altered.
  2. Optional Text - The Project Specific Etiquette heading provides a space to speak more specifically about ways people can work effectively and inclusively together. Some examples of those can be found on the Firefox Debugger project, and Common Voice. (The optional part is commented out in the raw template file, and will not be visible until you modify and uncomment that part.)

If you have any questions about this file, or Code of Conduct policies and procedures, please reach out to [email protected].

(Message COC001)

ditch the admin panel, switch to static files for instance configuration

Instead of writing ident and acls and auditing tools, let's ditch the admin panel and switch to static file configuration. Then we can use github to manage playlists and settings. It will dramatically simplify many things, and it will give us an audit and ident trail in the commit log.

This feature will require a more sophisticated deploy process, but not much more sophisticated than our current setup.

'static' core plugin

pull from a 'static' directory in the installation directory.

trigger it using command syntax static <path relative to static directory>

name from query string

We should provide a query string to identify a screen (name initially, tag when tags are implemented). corsica.biz?name=whatever or corsica.biz?tags=what,ever. The specifics should be given some thought with an eye towards long term support.

Flicker free loading

The flicker of new content loading is annoying and creates distraction.

Things that don't work:

  • Doing nothing
  • Waiting until the iframe emits a "load" event before showing it. The iframe emits this event when it i loaded, not when it's contents finish loading (such as images).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.