<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>zleap &amp;mdash; Paul Sutton</title>
    <link>https://personaljournal.ca/paulsutton/tag:zleap</link>
    <description>Personal Blog</description>
    <pubDate>Tue, 05 May 2026 16:38:23 +0000</pubDate>
    <item>
      <title>IRC bot development</title>
      <link>https://personaljournal.ca/paulsutton/irc-bot-development</link>
      <description>&lt;![CDATA[IRC bot development &#xA;&#xA;I have been working on some more projects around IRC chat bots.  I decided to try and integrate a Magic 8 ball project so that an IRC bot would give a random response, chosen from a pre- defined set within the code (can be changed) when the bot is sent an instruction in my IRC channel.  &#xA;&#xA;ircbot&#xA;&#xA;This project builds on some of the code covered in my Minecraft Pi bot project.  Mostly the base code from the Linux Voice article. &#xA;&#xA;The code is currently being tested in ##zleap on Freenode.&#xA;&#xA;At the moment magic8 can be sent the following commands:-&#xA;&#xA;!umame - returns output of uname -a&#xA;!uptime - returms system  uptime&#xA;!help - displays list of options&#xA;!botexit - bot quits irc channel,&#xA;!magic8 - returns random text&#xA;!ping - returns pong (used to check the bot is working, left in for legacy&#xA;!web - returns my own web address (this website) but can be changed&#xA;!sdtj - returns web address for the South Devon Tech Jam&#xA;&#xA;Notes&#xA;&#xA;uname and uptime are Linux / Unix commands, it is therefore assumed you are running on a GNU / Linux system.&#xA;&#xA;I have created a welcome message from the bot, so when it joins it says hello, also says goodbye if !botexit is sent.  &#xA;&#xA;Todo&#xA;&#xA;Make the code Python 3&#xA;Add more options &#xA;Keep it tidy&#xA;&#xA;Help and Contribute&#xA;&#xA;Feel free to fork the project and make improvements and further customization.  Perhaps discuss further on IRC or via social media e.g Mastodon. &#xA;&#xA;Resources&#xA;&#xA;Freenode&#xA;Github Repository&#xA;&#xA;#python, #development, #irc, #application, #bot, #magic8, #network,#sockets #irc, #project,#github, #chat, #responses, #magic8&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>IRC bot development</p>

<p>I have been working on some more projects around IRC chat bots.  I decided to try and integrate a Magic 8 ball project so that an IRC bot would give a random response, chosen from a pre- defined set within the code (can be changed) when the bot is sent an instruction in my IRC channel.</p>

<p><img src="https://raw.githubusercontent.com/zleap/blogmedia/master/ircbot/ircbot.png" alt="ircbot"></p>

<p>This project builds on some of the code covered in my <a href="https://personaljournal.ca/paulsutton/irc-bot-to-minecraft-pi-thingy" rel="nofollow">Minecraft Pi bot</a> project.  Mostly the base code from the Linux Voice article.</p>

<p>The code is currently being tested in #<a href="/paulsutton/tag:zleap" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">zleap</span></a> on Freenode.</p>

<p>At the moment magic8 can be sent the following commands:-</p>
<ul><li>!umame – returns output of uname -a</li>
<li>!uptime – returms system  uptime</li>
<li>!help – displays list of options</li>
<li>!botexit – bot quits irc channel,</li>
<li>!magic8 – returns random text</li>
<li>!ping – returns pong (used to check the bot is working, left in for legacy</li>
<li>!web – returns my own web address (this website) but can be changed</li>
<li>!sdtj – returns web address for the South Devon Tech Jam</li></ul>

<p><strong>Notes</strong></p>

<p>uname and uptime are Linux / Unix commands, it is therefore assumed you are running on a GNU / Linux system.</p>

<p>I have created a welcome message from the bot, so when it joins it says hello, also says goodbye if !botexit is sent.</p>

<p><strong>Todo</strong></p>
<ul><li>Make the code Python 3</li>
<li>Add more options</li>
<li>Keep it tidy</li></ul>

<p><strong>Help and Contribute</strong></p>

<p>Feel free to fork the project and make improvements and further customization.  Perhaps discuss further on IRC or via social media e.g Mastodon.</p>

<p><strong>Resources</strong></p>
<ul><li><a href="https://www.freenode.net" rel="nofollow">Freenode</a></li>
<li><a href="https://github.com/zleap/magic8bot" rel="nofollow">Github Repository</a></li></ul>

<p><a href="/paulsutton/tag:python" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">python</span></a>, <a href="/paulsutton/tag:development" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">development</span></a>, <a href="/paulsutton/tag:irc" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">irc</span></a>, <a href="/paulsutton/tag:application" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">application</span></a>, <a href="/paulsutton/tag:bot" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">bot</span></a>, <a href="/paulsutton/tag:magic8" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">magic8</span></a>, <a href="/paulsutton/tag:network" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">network</span></a>,<a href="/paulsutton/tag:sockets" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">sockets</span></a> <a href="/paulsutton/tag:irc" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">irc</span></a>, <a href="/paulsutton/tag:project" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">project</span></a>,<a href="/paulsutton/tag:github" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">github</span></a>, <a href="/paulsutton/tag:chat" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">chat</span></a>, <a href="/paulsutton/tag:responses" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">responses</span></a>, <a href="/paulsutton/tag:magic8" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">magic8</span></a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/irc-bot-development</guid>
      <pubDate>Thu, 19 Mar 2020 21:30:00 +0000</pubDate>
    </item>
  </channel>
</rss>