Forum


Notice to all users

We are migrating towards a new forum system located at community.teamspeak.com, as such this forum will become read-only on January 29, 2020

Page 1 of 2 12 LastLast
Results 1 to 15 of 29
  1. #1
    Join Date
    September 2013
    Posts
    13

    Chat bot Mambo - IRC style bot for teamspeak 3

    Mambo (Addons page)


    Mambo is an IRC style bot for teamspeak 3 written in elixir. It's extensible via scripts/plugins (written in either erlang or elixir). This project aims to create a user-friendly and helpful bot for teamspeak 3 users.

    Commands


    Note: bot commands are always prefixed by a dot '.'

    See the full list of commands here.
    Type .help or .help <option> for more info about the available scripts.

    Additional features

    When a url is written in the chat the bot replies with the webpage title. The bot will also answer a question you make directly to him.

    Demo:

    Name:  2155.png
Views: 9330
Size:  124.2 KB

    Installation


    The installation is not very straight forward (I will try to improve it), the following procedure should guide you through the installation process (windows, mac and linux), any question or problem just ask:

    Requirements:
    • Erlang (R16B or later) - there are pre built packages in the Erlang Solutions Downloads page
    • Elixir - see here for installation instructions
    • ImageMagick if you plan to use the gif script
    • Server query login credentials
    • API key for last.fm, youtube, twitter and wolframalpha are required if you plan to use last.fm, youtube search and the ask/question scripts


    Installation:
    • Download the pre compiled binaries from http://addons.teamspeak.com/index.ph...=1032&cf_id=24
    • Extract the zip
    • Open the command prompt and navigate to the directory where you extracted the files
    • Create a settings.json file, use settings.json.sample as a guide
    • To run the bot execute the following command:
      Code:
      elixir --detached --no-halt -S mix

    For more information about the settings.json file, or if you want to compile from source check this getting started.

    Important links




    Use this thread for problems, requests or anything else related to the bot. Thank you.
    Last edited by mrshankly; November 9th, 2013 at 01:40 AM. Reason: Update to v0.3.0

  2. #2
    Join Date
    October 2013
    Posts
    3
    I can't compile the bot, it says I need elixir 0.10.4-dev, if I use the master repository (0.10.4-dev) I get following error:

    ** (UndefinedFunctionError) undefined function: Mix.CLI.main/0
    Mix.CLI.main()
    /Volumes/Work/github/elixir/lib/elixir/lib/code.ex:290: Code.require_file/2
    /Volumes/Work/github/elixir/lib/elixir/lib/kernel/cli.ex:299: Kernel.CLI.process_command/2
    /Volumes/Work/github/elixir/lib/elixir/lib/enum.ex:678: Enum."-map/2-lc$^0/1-0-"/2
    /Volumes/Work/github/elixir/lib/elixir/lib/kernel/cli.ex:18: Kernel.CLI."-main/1-fun-2-"/1
    If I compile it with 0.10.3 (precompiled release) it shows no errors but if I try to start the bot I get this:

    Generated mambo.app

    =INFO REPORT==== 24-Oct-2013::15:37:02 ===
    application: mambo
    exited: {bad_return,
    {{'Elixir.Mambo',start,[normal,[]]},
    {'EXIT',
    {undef,
    [{'Elixir.Mambo',start,[normal,[]],[]},
    {application_master,start_it_old,4,
    [{file,"application_master.erl"},
    {line,269}]}]}}}}
    type: temporary
    ** (Mix) Could not start application mambo: {:bad_return, {{Mambo, :start, [:normal, []]}, {:EXIT, {:undef, [{Mambo, :start,[:normal, []], []}, {:application_master, :start_it_old, 4, [file: 'application_master.erl', line: 269]}]}}}}
    Can you help me?

    Edit: Okay, I compiled it under a linux vm, seems to be working under linux. I'll try it under windows now.

    Edit2: Okay it works! But the only problem is, the bot only recognizes commands in the home channel... how can I let the bot listen to all channels?
    Last edited by shawly; October 24th, 2013 at 06:27 PM.

  3. #3
    Join Date
    September 2013
    Posts
    13
    How did you compile and run the bot? Also what operating system are you using?

    I'll try to replicate this.

  4. #4
    Join Date
    September 2012
    Posts
    138
    Wow, thanks for the bot, trying to install it right now on Linux.

  5. #5
    Join Date
    September 2012
    Posts
    138
    It works, awesome bot!

    Just a short question: I use the translate function, is it possible to output the latin transcription for languages like russian, serbian and so one?


    Edit: Sorry doublepost

  6. #6
    Join Date
    September 2013
    Posts
    13
    Edit2: Okay it works! But the only problem is, the bot only recognizes commands in the home channel... how can I let the bot listen to all channels?
    See this https://github.com/mrshankly/mambo/issues/2. There's already a multichannel version in the v0.3 branch, https://github.com/mrshankly/mambo/tree/v0.3, it works, but I haven't tested it much, if you decide to use it expect bugs. If you have lots of channels and users, it might not be a very good idea to have the bot work on all channels, the server can get full very easily if you're not careful.

    It works, awesome bot!

    Just a short question: I use the translate function, is it possible to output the latin transcription for languages like russian, serbian and so one?


    Edit: Sorry doublepost
    Thanks, glad you liked it.

    About the translate, the bot uses google translate, if you can't do it there, you can't do it with the bot. Is there a translate website that can do the latin transcription? If so, I can try to use that.

  7. #7
    Join Date
    September 2013
    Posts
    13
    EDIT:
    For some reason my previous posts weren't working, they needed approval from a moderator but they never showed up. Sorry for the time it took me to reply to you guys.

    Quote Originally Posted by shawly View Post
    Edit2: Okay it works! But the only problem is, the bot only recognizes commands in the home channel... how can I let the bot listen to all channels?
    Glad you got the bot running. As for multichannel see below, it now works in the master branch.

    Quote Originally Posted by fspower View Post
    It works, awesome bot!

    Just a short question: I use the translate function, is it possible to output the latin transcription for languages like russian, serbian and so one?
    The translate script uses google translate, if you can't do latin transcription there, then you can't do it with the bot. Do you know of any site that does this? I can try to add this to the translate script.

    END EDIT

    Version 0.3 is pretty much done, I'm just going to wait a week to see if I can find some bugs. If any of you want to try it out just compile the master branch from the github page. [.zip download link of the source code]

    Make sure you read the README, some stuff changed, the bot now supports multichannels and some new scripts were added, also the bot's database has changed, if you were using the lastfm script you will have to set your lastfm username again to use the ".np" command.

    If you find any bugs please let me know .
    Last edited by mrshankly; October 29th, 2013 at 01:28 PM.

  8. #8
    Join Date
    September 2012
    Posts
    138
    How do I let the bot connect to multiple channels? I tried entering the channel ids, seperated by an "," but it didn't work.

  9. #9
    Join Date
    September 2013
    Posts
    13
    Quote Originally Posted by fspower View Post
    How do I let the bot connect to multiple channels? I tried entering the channel ids, seperated by an "," but it didn't work.
    If you want it in all channels the syntax is:
    Code:
    "channels": "all"
    If you just want some channels, let's say the channels with id 1, 5 and 13, the syntax is:
    Code:
    "channels": [1,5,13]
    If you were doing it right, it was probably this bug, I fixed it in this commit.

    Either way get the latest version, since that bug will most probably prevent the bot from working.

  10. #10
    Join Date
    September 2012
    Posts
    138
    Thanks the bot is working now.

    Some other thing I noticed: Calculations are now slower then before, I guess because of the use of WolframAlpha instead of calculating internally?

  11. #11
    Join Date
    September 2013
    Posts
    13
    Quote Originally Posted by fspower View Post
    Thanks the bot is working now.

    Some other thing I noticed: Calculations are now slower then before, I guess because of the use of WolframAlpha instead of calculating internally?
    Yes, calculator is slower because it now uses wolframalpha, but the old calculator wasn't native, it was using google, but there were a few problems with it, it failed on a lot of cases when it shouldn't.

    But I actually like the sound of having a simple native calculator and then if it's a more complex expression use wolframalpha with the ".wa" command. I'll try to make one.

  12. #12
    Join Date
    March 2013
    Location
    Russian Federation
    Posts
    13
    I can't to compile bot too, after command:
    $ mix do deps.get, compile
    i see error
    ** (CompileError) /usr/share/mambo/deps/jsex/mix.exs:13: function '__w__'/2 undefined
    how to resolve this?

  13. #13
    Join Date
    September 2013
    Posts
    13
    What elixir version are you using?
    Last edited by mrshankly; October 30th, 2013 at 12:47 PM.

  14. #14
    Join Date
    March 2013
    Location
    Russian Federation
    Posts
    13
    elixir v0.10.3
    Distritubive: CentOS release 6.4 (Final)
    Maybe I do something wrong?
    My steps:
    1) I'm installed Erlang (R16B02) by rpm
    2) installed Elixir (i couldn't install it by this command "sudo yum -y install elixir"), so i compiled it from source.
    3) unpacked mambo from tar as in instruction
    4) configured settings.json, my settings is:
    {
    "name": "mambo",
    "user": "serveradmin",
    "pass": "***",
    "host": "localhost",
    "port": 10011,
    "bot_id": "bot_teamspeak_unique_id_here",
    "admins": [],
    "scripts": [
    {"name": "Benis", "args": []},
    {"name": "Brainfuck", "args": []},
    {"name": "Cannedreplies", "args": []},
    {"name": "Eightball", "args": []},
    {"name": "Rainbow", "args": []},
    {"name": "Random", "args": []},
    {"name": "Sux", "args": []},
    {"name": "Help", "args": []},
    {"name": "Utils", "args": []},
    {"name": "Title", "args": []},
    {"name": "Whatthecommit", "args": []},
    {"name": "Private", "args": []},
    {"name": "Translate", "args": []},
    {"name": "Calculator", "args": []},
    {"name": "Question", "args": ["mambo", "WOLFRAM-ALPHA API KEY"]},
    {"name": "Lastfm", "args": "LAST.FM API KEY"},
    {"name": "Search", "args": "YOUTUBE API KEY"}
    ]
    }
    5) Try to compile (mix do deps.get, compile) and here it is (as i describe by top message)
    i see error
    ** (CompileError) /usr/share/mambo/deps/jsex/mix.exs:13: function '__w__'/2 undefined

    Is my steps are correct? Where I could done mistake?
    Last edited by Xp9kyc; November 16th, 2013 at 02:44 AM.

  15. #15
    Join Date
    September 2012
    Posts
    138
    I got 0.10.4-dev, also compiled from source, working as intended.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Replies: 0
    Last Post: December 23rd, 2009, 02:54 PM

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •