Git Product home page Git Product logo

mendibot's People

Contributors

carols10cents avatar gjp avatar jordanbyron avatar locks avatar practicingruby avatar rfelix avatar semmons99 avatar wicz avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar  avatar

mendibot's Issues

echo transcript link

When a discussion is ended, Mendibot should reply with a link to the discussion transcript.

UTF-8 (?) characters crash mendibot

jazzu managed to crash the bot twice in a few minutes:

(11:01:37 PM) jazzu: Jyväskylä to be exact
(11:01:37 PM) mendibot left the room (quit: Remote host closed the connection).

(11:08:19 PM) jazzu: Ich habe für zwei Jahren Deutch (studied). But that was over ten years ago
(11:08:19 PM) mendibot left the room (quit: Remote host closed the connection).

Generalized RSS feed

We'd like to have mendibot post new commits to certain rooms. We can generalized the community RSS code you did so that it's easy to add new RSS feeds to mendibot. We'd also like specify which channels the feeds are broadcast in.

Assist @sandal with his spelling

per email discussion

Give mendibot a !spell command, which given a word, gives back spelling suggestions.

I'll look into doing this with Hunspell, perhaps via ffi-hunspell

Malformed channel topic links

This is an example of the current generated link:

school.mendicantuniversity.org/chat/messages**?&channel=#**mendicant-alumni&topic=Web%20Apps/Tools%20Meeting&full_log=true

There is an extra ampersand at the start of the params (after '?'). This is ignored by Firefox, but other browsers might choke.

The '#' needs to be replaced by '%23'. This one does make things go sour.

Github Commit Tracker

@wicz and @gjp

If you've seen the mailing list thread, I proposed an integration with Github commits and mendibot for the hackdays. The plan is to have it work as follows

  1. A staff member issues !hackday-start topic message
    • this sets a topic and allows mendibot to start tracking gh commits
  2. User types !gh-follow mendicant-university/community or !gh-follow mendicant-university/community:my-branch to tell mendibot to track commits on this code.
  3. Every n seconds, mendibot queries the ATOM feed of the repo for new commits and reports them
  4. Every 30-60 minutes mendibot reports the number of commits in the last 30-60 minutes along with the total commits so far
  5. When the hackday is over a staff member issues !hackday-stop
    • mendibot writes out a final commit count and stops tracking the repos.

I'd like to get this in place ahead of the next hackday. We'll wait until #31 is merged to see what we can reuse from it. If this is something one or both of you would like to tackle, let me know.

rubymendicant.com transcripts are recorded incorrectly

During the Q&A session with steveklabnik and Judofyr, the questions copied and pasted by seacreature were recorded in reverse order. Here's an example:

seacreature: Good time to ask a releated question. 09:44 AM
seacreature: projects, or have you put your own brand on it? 09:44 AM
seacreature: tests; have you guys tried to stick to his style within his old 09:44 AM
seacreature: To both: _why's code was kind of wild and he rarely had automated 09:44 AM

(De)coupling Mendibot from University Web

Continuing my discussion with @semmons99 on my s7-e4.

As of right now, Mendibot sends the current topic with every message to University Web, and UW stores a topic_id with each message record.

I rewrote this in both university-web and mendibot as a part of my s7-e4 assignment on RMU, to make it easier to have multiple meetings per topic and allow tagging a bunch of messages into a topic / meeting later (no ui as of now).

My branch stores a started_at and ended_at for each meeting, and doesn't store any topic info with each message.

The main concern here is, that handling the Topics on the server side will make Mendibot more coupled with University Web.

I'm posting this here on @semmons99's suggestion, to get the opinion of Greg and Jordan.

Mendibot should post links to new Community articles

per @sandal's email:

  1. Have mendibot monitor the community website RSS feed and post links to new articles as they get posted to the site.

here's another small hack (minus the facepalm code written before I realized Cinch has timers). Should the constants reside within the plugin rather than Mendibot::Config? All suggestions welcome.

    class CommunityRSS
      include Cinch::Plugin

      timer Mendibot::Config::RSS_INTERVAL, method: :pull

      def pull
        open(Mendibot::Config::RSS_URL) do |rss|

          feed = RSS::Parser.parse(rss)
          min_time = Time.now - Mendibot::Config::RSS_INTERVAL

          feed.items.each do |item|
            if item.pubDate >= min_time
              Mendibot::Config::CHANNELS.each do |chan|
                Channel(chan).send "Community post by #{item.author}: #{item.link}"
              end
            end
          end
        end

      rescue Exception => e
        bot.logger.debug e.message
      end

    end

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.