Skip to content

Instantly share code, notes, and snippets.

@donpdonp
donpdonp / wikipedia.js
Last active May 12, 2024 09:56
gluon wikipedia
(function () {
// setup
setup()
// descriptor
return {name: 'wikipedia'}
})
function setup () {
}
@donpdonp
donpdonp / airport.js
Last active December 10, 2021 17:56
gluon airport announcer
(function() {
// setup
setup()
// descriptor
return {name:"airport"}
})
var airports // airport data
var land_cache = {}
var alert_channel = '#pdxbots'
@donpdonp
donpdonp / helloworld.wast
Created October 29, 2018 20:43
gluon webasm hello
;; WebAssembly WASM AST Hello World! program
(module
(import "env" "_fwrite" (func $__fwrite (param i32 i32 i32 i32) (result i32)))
(import "env" "_stdout" (global $stdoutPtr i32))
(import "env" "memory" (memory 1))
(export "main" (func $main))
(data (i32.const 8) "Hello World!\n")
@donpdonp
donpdonp / test.rb
Last active October 31, 2018 18:11
gluon first ruby
def go(msg)
puts "firstruby go msg: #{msg}"
puts "firstruby go msg.params: #{msg['params']}"
puts "firstruby go msg.params.channel: #{msg['params']['channel']}"
Gluon.bot_say(msg['params']['channel'], "ruby hello")
end
# must be last
{ name: "firstruby" }
@donpdonp
donpdonp / todo.js
Last active January 23, 2019 22:16
gluon todo
(function() {
setup()
return {name:"todo"}
})
var key
var actives = []
function setup() {
db.get('todo:key', function(value) { key = value; bot.say(bot.admin_channel, "todo key loaded") })
@donpdonp
donpdonp / emoji.js
Last active March 31, 2021 23:22
gluon emoji
(function(){
return {name: "emoji"}
})
function go(msg) {
if(msg.method == "irc.privmsg") {
var match = /!emoji\s+(.*)/.exec(msg.params.message)
if(match) {
var term = match[1]
var emoji = emojipedia(term)
@donpdonp
donpdonp / kickstats.js
Last active October 12, 2018 20:03
gluon kickstats
(function(){
return {name: "kickstats"}
})
var prefix="kickstats:"
function go(msg) {
if (msg.method == "irc.privmsg") {
var cmd_match = /!kickstats(\s+(.*))?$/.exec(msg.params.message)
if (cmd_match) {
@donpdonp
donpdonp / wifi.js
Last active March 4, 2020 17:42
gluon wifi
(function(){
return {name: "wifi"}
})
var prefix = "wifi:"
function go(msg) {
if (msg.method == "irc.privmsg") {
var regex = /^!wifi\s+(.*)/
var cmd_match = regex.exec(msg.params.message)
@donpdonp
donpdonp / ecoli.js
Last active May 23, 2023 03:21
gluon ecoli report
(function(){
return {name: "ecoli"}
})
var dbkey = "ecoli"
var url = 'https://www.portlandoregon.gov/bes/waterquality/results.cfm?location_id=7132'
var state
function setup() {
db.get(dbkey, function(json) {
@donpdonp
donpdonp / flightaware.js
Last active April 16, 2019 17:37
gluon flightaware
(function() {
return {name: "flightaware"}
})
function go(msg){
if (msg.method == "irc.privmsg") {
var match = /^!flight (.*)/.exec(msg.params.message)
if(match) {
var flightNum = match[1]
var data = flight_data(flightNum.toUpperCase())