Skip to main content

A twitter bot extensible by means of eggs

Project description

Mr. Pump is a twitter bot, using tweepy.

To use

  1. Install Mr. Pump.

  2. Set up an account for Mr. Pump on Twitter.

  3. Follow Pump’s account, and make him follow yours.

  4. Visit dev.twitter.com. Log in as your Pump user. Create a new ‘application.’

  5. Remember that only you are responsible for how you use or abuse Twitter.

  6. Get the developer access token for your app.

  7. Write a config file; we’ll call it golem.ini. (see below.)

  8. Run Mr. Pump:

    emet golem.ini
  9. Send a direct message to Mr. Pump, e.g. “19 ping.”

  10. Receive his reply: “927 pong.”

What are the numbers in the messages?

Just a way to get around Twitter’s “Whoops, you already said that!” message. It appears to be meant to prevent double posting. But when you are talking to computers you may need to repeat yourself more often than with people.

Config file

[app]
# OAuth info needed to log in. You get these two when you register your app -
key = ABCDEFGHijkl012345MNO
secret = gr0igh24g8h240gh2rvun92rnuEIIH847fhier00

# (this is the screen name of the bot)
[mygolem]
# - and you get these two when you get your developer access token.
token = 284729478-KANEFIIGRVKNRVO3883474KFKEVDKknvdvdkn993
secret = prgiIRGJIGkvmvvnkfkKNKRFNKFIFEIV48347fenef

# A name for the instance of the ping chem -
[ping]
# For the ping chem, use the 'ping' entry point from the 'mrpump' egg.
use = egg:mrpump#ping

# A name for the instance of the time chem -
[time]
# For this one use the 'time' entry point from the 'time_chem' egg
use = egg:time_chem#time
# Any additional config required by this chem
format = Year %Y month %m day %d

[global]
# A colon-separated list of directories wherein eggs containing chems are to be
# found.
plugin path = /home/me/mrpump-plugins
# This is the same as the section name above.
screen name = mygolem
# Name of a file that Mr. Pump can write in. Gets no larger than 10k.
cache = /tmp/already_seen
# How many seconds between checking messages. Don't make Twitter angry.
check every = 60
# debug, info, error: minimum level of messages to display. Debug is quite
# verbose.
log level = info
# Names of each section above that configures a chem.
chems = ping, time

Terminology

<http://en.wikipedia.org/wiki/Golems_(Discworld)>

Making Mr. Pump do cool stuff

Write a chem and put it in an egg. Then change your configuration to include it, and restart Mr. Pump. Presto, your new functionality is ready!

In the examples directory there is a time chem. To make it work, go in that directory, and run python setup.py bdist_egg. Put the egg file (dist/*egg) in a directory that’s on the configured plugin path. The [time] section in the example configuration above will load the time chem. Now run emet, and DM your bot, time.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mrpump-0.2.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mrpump-0.2-py2.7.egg (13.9 kB view details)

Uploaded Egg

File details

Details for the file mrpump-0.2.tar.gz.

File metadata

  • Download URL: mrpump-0.2.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for mrpump-0.2.tar.gz
Algorithm Hash digest
SHA256 88b902091061ffcc4ef606e96ebd2f647d04f39385b00a3049e9c6f24b90f85c
MD5 23cf8cd8467b4cc3b741b5af2e90077b
BLAKE2b-256 81c8bc20f62e776d371a4a407f03c778f918fa746148416dbc82e4d63481662e

See more details on using hashes here.

File details

Details for the file mrpump-0.2-py2.7.egg.

File metadata

  • Download URL: mrpump-0.2-py2.7.egg
  • Upload date:
  • Size: 13.9 kB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for mrpump-0.2-py2.7.egg
Algorithm Hash digest
SHA256 e7199485f6b7377d5e30ffc04b59909aa49d8acbb8098241c998748bacfcbb1f
MD5 a9ce0ceefcb84e0d1a10e5d38a765d64
BLAKE2b-256 2a21968bbf3e921e90dd4890737027f49011f009c290dc0485466c5ef461270c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page