calledtoconstruct / lambdabot

A friendly IRC bot and apprentice coder, written in Haskell.
4 stars 2 forks source link

Document how to configure the Twitch plugin to connect to one or more channels on start-up. #8

Open calledtoconstruct opened 4 years ago

calledtoconstruct commented 4 years ago

Please review the scripts provided in the readme.md file (twitch plugin). @Andrewnetwork

https://github.com/calledtoconstruct/lambdabot/commit/75667756ddeeb29d85c01ee20cc3f23a0b99deb0

Andrewnetwork commented 4 years ago

I followed your instructions and built the lambda bot. Can you please add instructions how to launch the bot? Building the bot and running the resulting build does not launch the bot as expected. The output:

[INFO] : Initialising plugins
[INFO] : Loading module "twitch"
[DEBUG] : loading state for module "twitch"
[INFO] : Loading module "points"
[DEBUG] : loading state for module "points"
[INFO] : Loading module "hangman"
[DEBUG] : loading state for module "hangman"
[INFO] : Loading module "suggest"
[DEBUG] : loading state for module "suggest"
[INFO] : Loading module "irc"
[DEBUG] : loading state for module "irc"
[INFO] : Loading module "localtime"
[DEBUG] : loading state for module "localtime"
[INFO] : Loading module "topic"
[DEBUG] : loading state for module "topic"
[INFO] : Loading module "dummy"
[DEBUG] : loading state for module "dummy"
[INFO] : Loading module "fresh"
[DEBUG] : loading state for module "fresh"
[INFO] : Loading module "todo"
[DEBUG] : loading state for module "todo"
[INFO] : Loading module "bf"
[DEBUG] : loading state for module "bf"
[INFO] : Loading module "dice"
[DEBUG] : loading state for module "dice"
[INFO] : Loading module "elite"
[DEBUG] : loading state for module "elite"
[INFO] : Loading module "filter"
[DEBUG] : loading state for module "filter"
[INFO] : Loading module "quote"
[DEBUG] : loading state for module "quote"
[INFO] : Loading module "slap"
[DEBUG] : loading state for module "slap"
[INFO] : Loading module "unlambda"
[DEBUG] : loading state for module "unlambda"
[INFO] : Loading module "dict"
[DEBUG] : loading state for module "dict"
[INFO] : Loading module "metar"
[DEBUG] : loading state for module "metar"
[INFO] : Loading module "oeis"
[DEBUG] : loading state for module "oeis"
[INFO] : Loading module "search"
[DEBUG] : loading state for module "search"
[INFO] : Loading module "spell"
[DEBUG] : loading state for module "spell"
[INFO] : Loading module "ticker"
[DEBUG] : loading state for module "ticker"
[INFO] : Loading module "url"
[DEBUG] : loading state for module "url"
[INFO] : Loading module "where"
[DEBUG] : loading state for module "where"
[INFO] : Loading module "activity"
[DEBUG] : loading state for module "activity"
[INFO] : Loading module "karma"
[DEBUG] : loading state for module "karma"
[INFO] : Loading module "poll"
[DEBUG] : loading state for module "poll"
[INFO] : Loading module "seen"
[DEBUG] : loading state for module "seen"
[WARNING] Plugin.seen: WARNING: failed to read Seen module state: Data.Binary.Get.runGet at position 0: not enough bytes
CallStack (from HasCallStack):
  error, called at libraries/binary/src/Data/Binary/Get.hs:351:5 in binary-0.8.6.0:Data.Binary.Get
[INFO] : Loading module "tell"
[DEBUG] : loading state for module "tell"
[INFO] : Loading module "base"
[DEBUG] : loading state for module "base"
[INFO] : Loading module "system"
[DEBUG] : loading state for module "system"
[INFO] : Loading module "offlineRC"
[DEBUG] : loading state for module "offlineRC"
[INFO] : Loading module "compose"
[DEBUG] : loading state for module "compose"
[INFO] : Loading module "help"
[DEBUG] : loading state for module "help"
[INFO] : Loading module "more"
[DEBUG] : loading state for module "more"
[INFO] : Loading module "version"
[DEBUG] : loading state for module "version"
[INFO] : Done loading plugins
[NOTICE] Plugin.seen: Received call back offlinerc <> offline <> offlinerc <> null
Plugin `offlineRC' failed with: scripts/onstartup.rc: openFile: does not exist (No such file or directory)
[WARNING] : unregistering server offlinerc
[WARNING] : server unregistered
[WARNING] : all servers unregistered
[INFO] : Unloading module "version"
[DEBUG] Plugin.version: saving state for module "version"
[INFO] : Unloading module "more"
[DEBUG] Plugin.more: saving state for module "more"
[INFO] : Unloading module "help"
[DEBUG] Plugin.help: saving state for module "help"
[INFO] : Unloading module "compose"
[DEBUG] Plugin.compose: saving state for module "compose"
[INFO] : Unloading module "offlineRC"
[DEBUG] Plugin.offlineRC: saving state for module "offlineRC"
[NOTICE] Plugin.seen: Received call back offlinerc <> offline <> offlinerc <> null
[INFO] : Unloading module "system"
[WARNING] : sending message to bogus server: IrcMessage {ircMsgServer = "offlinerc", ircMsgLBName = "urk!<outputmessage>", ircMsgPrefix = "", ircMsgCommand = "PRIVMSG", ircMsgParams = ["null",":Maybe you meant: wn v url id hm ghc bf arr"]}
[DEBUG] Plugin.system: saving state for module "system"
[WARNING] : unregistering server offlinerc
lambdabot: user error (attempted to delete nonexistent servers named offlinerc)
[INFO] : Unloading module "base"
[DEBUG] Plugin.base: saving state for module "base"
[INFO] : Unloading module "tell"
[DEBUG] Plugin.tell: saving state for module "tell"
[INFO] : Unloading module "seen"
[DEBUG] Plugin.seen: saving state for module "seen"
[INFO] : Unloading module "poll"
[DEBUG] Plugin.poll: saving state for module "poll"
[INFO] : Unloading module "karma"
[DEBUG] Plugin.karma: saving state for module "karma"
[INFO] : Unloading module "activity"
[DEBUG] Plugin.activity: saving state for module "activity"
[INFO] : Unloading module "where"
[DEBUG] Plugin.where: saving state for module "where"
[INFO] : Unloading module "url"
[DEBUG] Plugin.url: saving state for module "url"
[INFO] : Unloading module "ticker"
[DEBUG] Plugin.ticker: saving state for module "ticker"
[INFO] : Unloading module "spell"
[DEBUG] Plugin.spell: saving state for module "spell"
[INFO] : Unloading module "search"
[DEBUG] Plugin.search: saving state for module "search"
[INFO] : Unloading module "oeis"
[DEBUG] Plugin.oeis: saving state for module "oeis"
[INFO] : Unloading module "metar"
[DEBUG] Plugin.metar: saving state for module "metar"
[INFO] : Unloading module "dict"
[DEBUG] Plugin.dict: saving state for module "dict"
[INFO] : Unloading module "unlambda"
[DEBUG] Plugin.unlambda: saving state for module "unlambda"
[INFO] : Unloading module "slap"
[DEBUG] Plugin.slap: saving state for module "slap"
[INFO] : Unloading module "quote"
[DEBUG] Plugin.quote: saving state for module "quote"
[INFO] : Unloading module "filter"
[DEBUG] Plugin.filter: saving state for module "filter"
[INFO] : Unloading module "elite"
[DEBUG] Plugin.elite: saving state for module "elite"
[INFO] : Unloading module "dice"
[DEBUG] Plugin.dice: saving state for module "dice"
[INFO] : Unloading module "bf"
[DEBUG] Plugin.bf: saving state for module "bf"
[INFO] : Unloading module "todo"
[DEBUG] Plugin.todo: saving state for module "todo"
[INFO] : Unloading module "fresh"
[DEBUG] Plugin.fresh: saving state for module "fresh"
[INFO] : Unloading module "dummy"
[DEBUG] Plugin.dummy: saving state for module "dummy"
[INFO] : Unloading module "topic"
[DEBUG] Plugin.topic: saving state for module "topic"
[INFO] : Unloading module "localtime"
[DEBUG] Plugin.localtime: saving state for module "localtime"
[INFO] : Unloading module "irc"
[DEBUG] Plugin.irc: saving state for module "irc"
[INFO] : Unloading module "suggest"
[DEBUG] Plugin.suggest: saving state for module "suggest"
[INFO] : Unloading module "hangman"
[DEBUG] Plugin.hangman: saving state for module "hangman"
[INFO] : Unloading module "points"
[DEBUG] Plugin.points: saving state for module "points"
[INFO] : Unloading module "twitch"
[DEBUG] Plugin.twitch: saving state for module "twitch"
calledtoconstruct commented 4 years ago

Added card #23

For now, to finish this review, do cd ./lambdabot ../run.sh

Be sure to have the onstartup.rc end with offline

calledtoconstruct commented 4 years ago

This is related to #5

Running nix-build while in the nix-shell will create a ./result folder. If you initiate the nix-build from the lambdabot root folder, then you will need to navigate into the ./lambdabot folder and use something like: ../result/bin/lambdabot

Instead, you may wish to first navigate to ./lambdabot (end result path is lambdabot/lambdabot) and run nix-build. This will place the build output in lambdabot/lamdbabot/result. Run the bot like this: `./result/bin/lambdabot'

Of course, you have to follow the instructions I provided in the readme.md

@Andrewnetwork Are you able to get lambdabot running and connected to your channel using the instructions provided?

Thanks! I appreciate your time and assistance!