Skip to content

Instantly share code, notes, and snippets.

View aytch's full-sized avatar

Brandon Presley aytch

  • Portland, OR, United States
View GitHub Profile
on :message, /https?:\/\/twitter\.com\/(?:#!\/)?(\w+)\/status(es)?\/(\d+)/i do |m, message|
url = message.to_s
doc = Nokogiri::HTML(open(url))
user = doc.at_css("span.username.js-action-profile-name b").text
status = doc.xpath("//div[3]/div/div/div/div/p").text[/\S(.+)/]
message = "Twitter | @#{user}: #{status}"
m.reply message
end
@aytch
aytch / gist:4700356
Created February 3, 2013 02:52
Odd Behaviour in Tam_Tam
1.9.3-p327 :028 > m = messages.including("logs")
=> #<TamTam::MessageSet:0x3ffe16067918 size=2>
1.9.3-p327 :029 > m.by_count
=> {"logs, man"=>1, "all the logs"=>1}
on :message, do |message|
messagevar = message.to_s
end
@aytch
aytch / gist:4563011
Created January 18, 2013 07:50
IRC bot using Cinch, plus a twitter link parser and join/part functions. This is ugly.
require 'cinch'
require 'cinch/plugins/AccidentalHaiku'
require 'cinch/plugins/CleverBot'
require 'Nokogiri'
require 'open-uri'
bot = Cinch::Bot.new do
configure do |c|
c.server = "irc.freenode.org"
#c.port = "7667"
@aytch
aytch / gist:4559696
Last active December 11, 2015 06:29 — forked from anonymous/gist:4559621
#requires -version 2.0
# handy global variables
$GLOBAL:SMADLL = ([appdomain]::CurrentDomain.getassemblies()|?{$_.location -match "System.Management.Automation.dll"}).location
# $GLOBAL:SMDIR = (Get-ItemProperty 'hklm:/software/microsoft/System Center/2010/Service Manager/Setup').InstallDirectory
# $GLOBAL:SMSDKDIR = "${SMDIR}\SDK Binaries"
# $GLOBAL:SMDLL = "${SMSDKDIR}/Microsoft.EnterpriseManagement.Core.dll"
$GLOBAL:EMGTYPE = "Microsoft.EnterpriseManagement.EnterpriseManagementGroup"
$GLOBAL:DATAGENDIR = "$psScriptRoot\DataGen"
$GLOBAL:SMDEFAULTCOMPUTER = "US-DC-SCSM-01"
@aytch
aytch / gist:4538619
Created January 15, 2013 13:27
Quick hack for grabbing Twitter status in Cinch
require 'Nokogiri'
require 'open-uri
# current regex string matches too much stuff. Trying https?:\/\/twitter\.com\/(?:#!\/)?(\w+)\/status(es)?\/(\d+)$ instead
on :message, /(\b(https?):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/i do |m, message|
# on :message, /https?:\/\/(www.)?twitter.com(.+)\W/i do |m, message|
url = message.to_s
doc = Nokogiri::HTML(open(url))
user = doc.at_css("span.username.js-action-profile-name b").text
status = doc.xpath("//div[3]/div/div/div/div/p").text[/\S(.+)/]