Skip to content

Instantly share code, notes, and snippets.

Ryan radiofrequency

View GitHub Profile
@radiofrequency
radiofrequency / stopoverspend.txt
Created Feb 13, 2018
Adwords Campaign Budget Overspend Monitoring
View stopoverspend.txt
/**
*
* Campaign Budget Overspend Monitoring
*
* This script labels campaigns whose spend today is more than their daily
* budgets. Optionally, it also pauses campaigns whose spend exceeds the
* budget by too much. An email is then sent, listing the newly labelled
* and paused campaigns.
* When spend no longer exceeds budget, the campaigns are reactivated and
* labels are removed.
@radiofrequency
radiofrequency / nginx_config_cloudfront_real_ips.js
Created Feb 5, 2018
list cloufront ip ranges for nginx real ip module
View nginx_config_cloudfront_real_ips.js
var request = require("request");
var fs = require("fs");
var output = "#cloudfront ip ranges\n";
request("https://ip-ranges.amazonaws.com/ip-ranges.json", function(err, res, body) {
if (err) {
console.error("error", err);
}
var j = JSON.parse(body);
j.prefixes.forEach(function(item) {
if (item.service ==='CLOUDFRONT') {
@radiofrequency
radiofrequency / shamessages.js
Created Jan 30, 2018
hashmessages handling collisions
View shamessages.js
let getMessageHash = function(hash, fn) {
dm.settings.log("getmessage hash", hash);
dm.rcmsg.get("m:"+ hash, function(err, data) {
if (err) {
dm.settings.log('message hash error', err);
}
if (!data) {
dm.settings.log("message hash not found?!", hash)
@radiofrequency
radiofrequency / test.js
Last active Apr 25, 2018
Puppeteer waitForBackboneEvent()
View test.js
const puppeteer = require('puppeteer');
(async() => {
const browser = await puppeteer.launch({
ignoreHTTPSErrors: true,
slowMo: 100,
headless: false,
args: ["--disable-notifications", "--ash-host-window-bounds 100+200-300x400"]
});
@radiofrequency
radiofrequency / aws_import.sh
Created Jan 3, 2018
Import lets encrypt cert to aws certificate manager in renew hook
View aws_import.sh
#place in /etc/letsencrypt/renewal-hooks/post
export AWS_ACCESS_KEY_ID=XXX
export AWS_SECRET_ACCESS_KEY=XXX
#certs must be in us-east-1 to use with cloudfront
export AWS_DEFAULT_REGION=us-east-1
#run without --certificate-arn first time then specify arn for updates
aws acm import-certificate --certificate file:///etc/letsencrypt/live/site.com/cert.pem --private-key file:///etc/letsencrypt/live/site.com/privkey.pem --certificate-chain file:///etc/letsencrypt/live/site.com/chain.pem --certificate-arn specifyarnforupdate
View text.php
<?php
$all_links = file_get_contents("/home/fizz/Downloads/export-links.json");
$post_id = rand(1, 1500);
$spin_text = ['Funny', 'Awesome', 'New', 'Cute']
$spin = $post_id % $spin_text.length;
$json_puke = json_decode($all_links, true);
echo ucwords(strtolower($json_puke[$post_id][0]['title'])) . $spin_text[$spin] .' Chat Stickers' ; //[$post_id]; //[0]['url'];
echo '</br>';
View gist:e5680ea1624926fe7a3f
### Keybase proof
I hereby claim:
* I am radiofrequency on github.
* I am radio (https://keybase.io/radio) on keybase.
* I have a public key whose fingerprint is 4B21 86A7 8814 1A23 12B2 0A05 AD2B D330 BED5 A7C8
To claim this, I am signing this object:
@radiofrequency
radiofrequency / gist:11375093
Created Apr 28, 2014
HOMEMADE MOSQUITO TRAP
View gist:11375093
HOMEMADE MOSQUITO TRAP:
Items needed:
1 cup of water
1/4 cup of brown sugar
1 gram of yeast
1 2-liter bottle
HOW:
1. Cut the plastic bottle in half.
2. Mix brown sugar with hot water. Let cool. When cold, pour in the bottom half of the bottle.
@radiofrequency
radiofrequency / gist:7509899
Created Nov 17, 2013
bootstrap media query breakpoints
View gist:7509899
// Media queries breakpoints
// --------------------------------------------------
// Extra small screen / phone
// Note: Deprecated @screen-xs and @screen-phone as of v3.0.1
@screen-xs: 480px;
@screen-xs-min: @screen-xs;
@screen-phone: @screen-xs-min;
// Small screen / tablet
@radiofrequency
radiofrequency / gist:5190013
Created Mar 18, 2013
Change tabs to 4 spaces
View gist:5190013
sed 's/\t/ /g' < input.php > output.php
You can’t perform that action at this time.