We're on Discord! Please join our server now if you don't want to miss anything! (More info) | Join the UCC4 contest! (More info)

* WalrusIRC & Discord main room

If you have a forum account, have more than 4 posts and are not part of a restricted usergroup, then you can chat in our main Discord server room directly from here and continue using the forums at the same time. Or you can join our server directly and access many more discussion rooms!

Author Topic: UniChat!  (Read 9136 times)

0 Members and 1 Guest are viewing this topic.

Offline _iPhoenix_

  • Custom title
  • Super User
  • Join Date: Mar 2017
  • Location: Location
  • Posts: 669
  • Post Rating Ratio: +16/-1
  • ███████ ▼ ♪ Best music ♫
    • @dj_iPhoenix
    • @UCytgMNPxAMDsxjimvxHf01w
    • Legend-of-iPhoenix
    • @the-legend-of-iphoenix
    • My website.
  • Gender: Male
Re: UniChat!
« Reply #30 on: December 16, 2017, 09:23:03 pm »
This project is not dead!

I’m adding bots; you can suggest witty remarks here!

(Action commands, like /pm, will be in a second form, later)

This week has been a very productive week for UniChat: 1.5k-ish additions, 200-something deletions, and more. (We are sorry that we have to keep the service itself under wraps, it's going through some massive changes)

Here's a changelog:
+ Karma and profiles (this is a huge update and I can't put my excitement into words. It isn't done, and needs a TON of polishing, but it's still quite exciting.)
* Restructured how database is stored to make it virtually impossible to spam (All of the spambots we tested can't beat this one, let alone take it down)
+ Added many commands and created a still-unfinished Chatbot API (using the loosest definition of what an API is)
+ Added more ways for the admins and moderators to smite you and laugh in your face. (and a way to report abuse, for the recipients)
* Changed how highlights work.
+ Notifications. (You can toggle between not receiving notifications, only receiving them on highlights, and always receiving them.)
+ Preliminary link detection.
* Internal optimizations.

Here’s the current to-do list:
1) Finish implementing karma. (It’s not going to be live-updating, due to the limitations of GitHub hosting, but it will update every 30 seconds, whenever an admin or moderator has the admin console open)
2) Beautify profile pages, they look like they were made in 30 seconds (they were)
3) Finish link detection.
4) Add buttons for notifications. Currently you have to run a command in the console to toggle them. (Super easy)
5) General UI and UX enhancements.

I’ll probably release a video today or tomorrow showing off the new features.

Or, I can put up a demo, that is, well, broken:
https://legend-of-iphoenix.github.io/UniChatDemo/

I'll try to x-post more, I actually forgot because I was so busy.
  • Calculators owned: Two TI-84+ CE's
Please spam here: https://legend-of-iphoenix.github.io/spam/

"walruses are better than tuxedo chickens, all hail the great :walrii:" ~ me
Evolution of my avatar:

Offline _iPhoenix_

  • Custom title
  • Super User
  • Join Date: Mar 2017
  • Location: Location
  • Posts: 669
  • Post Rating Ratio: +16/-1
  • ███████ ▼ ♪ Best music ♫
    • @dj_iPhoenix
    • @UCytgMNPxAMDsxjimvxHf01w
    • Legend-of-iPhoenix
    • @the-legend-of-iphoenix
    • My website.
  • Gender: Male
Re: UniChat!
« Reply #31 on: December 22, 2017, 02:07:58 pm »
A lot of changes have happened this week! (I do know it's Friday, I am busy on other projects for the rest of the week. I quite like the idea of weekly update posts, I'll probably keep doing them unless nothing has happened that week.)

(click to show/hide)

* Moved the code handling bots away from the user, due to security. (You could give your self insane quantities of karma really easily. All bots are now controlled from the Admin Console).
* Fixed the bug where messages from bots would appear twice.
* Fixed the bug where return messages from ~karma would sink to the bottom of the page on reload.
* Fixed the bug where /pm's would show up as 'undefined' in the chat log, and you would get notifications from /pm's that you shouldn't see.
+ Bot API (lets you write your own bots) is working, just need to write some docs. (yay fun. I have the first two pages done.)
- Unfortunately, we have to say goodbye to the "get recent pm's" button, because:
  • It never worked as intended.
  • It was unfixably buggy.
  • It had some huge security flaws.
+ Added notifications: https://github.com/Legend-of-iPhoenix/UniChatDemo/wiki/Notifications
+ Added link detection! (I used small snippets of SAX's link detection script, credits are in the readme, and the actual snippet is here)
* Tightened up security.
* Merged karma over from the closed beta, and did a database check to find all <username>++'s and increment karma as necessary.
+ (edit) Added Battlesquid's flame effect to his username in the profile.
+ (edit) Added all kinds of cool commands.
+ (edit) Added semi-functional username linking.
* (edit) Updated the docs with the new commands.
+ (edit) Added documentation on the bot API, available here:  part 1 and part 2
+ (edit) Work has commenced on a small, UniChat-like bot platform, that is entirely local and lets you test your bots without me going in and making them part of UniChat. (Which may take a while.)

The Closed Beta Testers (Codename: CITY, due to a PM I sent them, titled "Can I Trust You?") were: (in no particular order) TheLastMillennial/TLM, Battlesquid, SM84CE, and xMarminq_.

They all have ethereal, glowy usernames in their UniChat profiles, but I'm giving them the option to have it be whatever they want. I remember that Battlesquid wants (edit: and now has) flames, (as a side note, the flame text currently in jcgter777's signature is from that experiment, I showed Battlesquid a demo picture via SAX, and he wanted a firey version of his username, too!) and other members of the closed beta can submit their choices here.

Without their testing, UniChat would be much, much more primitive, and I don't think I would have had the motivation to get this far.

Thanks.
« Last Edit: December 22, 2017, 02:10:53 pm by _iPhoenix_ »
  • Calculators owned: Two TI-84+ CE's
Please spam here: https://legend-of-iphoenix.github.io/spam/

"walruses are better than tuxedo chickens, all hail the great :walrii:" ~ me
Evolution of my avatar:

Offline _iPhoenix_

  • Custom title
  • Super User
  • Join Date: Mar 2017
  • Location: Location
  • Posts: 669
  • Post Rating Ratio: +16/-1
  • ███████ ▼ ♪ Best music ♫
    • @dj_iPhoenix
    • @UCytgMNPxAMDsxjimvxHf01w
    • Legend-of-iPhoenix
    • @the-legend-of-iphoenix
    • My website.
  • Gender: Male
Re: UniChat!
« Reply #32 on: December 22, 2017, 07:28:22 pm »
<double triple quadruple? quintuple! sextuple?! septuple?!?! post, big update>

I am SUPER happy to announce that you can finally create your own bots for UniChat, using the UniChat bot API.

You can find the download here, as well as the documentation.

I'm interested in seeing what you guys can create!
  • Calculators owned: Two TI-84+ CE's
Please spam here: https://legend-of-iphoenix.github.io/spam/

"walruses are better than tuxedo chickens, all hail the great :walrii:" ~ me
Evolution of my avatar:

Offline _iPhoenix_

  • Custom title
  • Super User
  • Join Date: Mar 2017
  • Location: Location
  • Posts: 669
  • Post Rating Ratio: +16/-1
  • ███████ ▼ ♪ Best music ♫
    • @dj_iPhoenix
    • @UCytgMNPxAMDsxjimvxHf01w
    • Legend-of-iPhoenix
    • @the-legend-of-iphoenix
    • My website.
  • Gender: Male
Re: UniChat!
« Reply #33 on: December 28, 2017, 01:05:10 am »
I'm having some issues with my own code that I cannot solve. (And to think I'm the person who is supposed to know these things...)

In the bots API, (relevant file, main.js, is here) I'm having some issues where multiple objects (in this case, bots) of the same constructor are sharing properties. (in this case, the name attribute)

In my code, I am creating and initializing bots as per my documentation, but I am initializing two bots, one with the name "iPhoenixBot", and the other with the name "karmaBot". Note that iPhoenixBot is being initialized first, then karmaBot.

The command "~bad" is registered under iPhoenixBot, yet when I execute that command, this happens:

Quote
[07:47:52] _iPhoenix_: ~bad
[07:47:53] [karmaBot]: That's so bad, it's almost impressive!
As you can tell, the username is showing up wrong.

The console tells me this:

Quote
Callback for bot "iPhoenixBot" triggered with message "bad".
Response from "karmaBot" received. //this should be "iPhoenixBot", not "karmaBot"
Callback for bot "karmaBot" triggered with message "bad".


In the main.js file linked above, I am using the bot_name input from the constructor in the code to determine what name to display.

I initially assumed this was the problem. I thought that the bot_name variable might be changed each time the constructor is called, even though this seems strange.

I changed it to "this.name", which is the bot's name. This works elsewhere, but it didn't work there.

How can I fix this, and what exactly is happening?


I fixed it, but I can't quite explain how I fixed it or how my fix works, but it does.
« Last Edit: December 28, 2017, 01:35:56 am by _iPhoenix_ »
  • Calculators owned: Two TI-84+ CE's
Please spam here: https://legend-of-iphoenix.github.io/spam/

"walruses are better than tuxedo chickens, all hail the great :walrii:" ~ me
Evolution of my avatar:

Offline _iPhoenix_

  • Custom title
  • Super User
  • Join Date: Mar 2017
  • Location: Location
  • Posts: 669
  • Post Rating Ratio: +16/-1
  • ███████ ▼ ♪ Best music ♫
    • @dj_iPhoenix
    • @UCytgMNPxAMDsxjimvxHf01w
    • Legend-of-iPhoenix
    • @the-legend-of-iphoenix
    • My website.
  • Gender: Male
Re: UniChat!
« Reply #34 on: January 11, 2018, 10:22:17 pm »
We now have a chrome extension!

You can download the source from here (That's from my fork of the repository, which is currently the most functional version, AFAIK.)

Here's how you can install it:

Download from the link above!
Go to chrome://extensions and check the checkbox in the top left labeled "developer mode".
Click the "Load unpacked extension..." button and navigate to the downloaded folder.
You are done!

To chat with other UniChatters, you can click the UniChat icon in the extensions bar!

Note: Be sure not to delete the folder downloaded, unless you want to break the extension.

Huge thanks to LAX18 for creating the extension!
  • Calculators owned: Two TI-84+ CE's
Please spam here: https://legend-of-iphoenix.github.io/spam/

"walruses are better than tuxedo chickens, all hail the great :walrii:" ~ me
Evolution of my avatar:

Offline _iPhoenix_

  • Custom title
  • Super User
  • Join Date: Mar 2017
  • Location: Location
  • Posts: 669
  • Post Rating Ratio: +16/-1
  • ███████ ▼ ♪ Best music ♫
    • @dj_iPhoenix
    • @UCytgMNPxAMDsxjimvxHf01w
    • Legend-of-iPhoenix
    • @the-legend-of-iphoenix
    • My website.
  • Gender: Male
Re: UniChat!
« Reply #35 on: January 12, 2018, 10:50:04 pm »
Thanks to me, you can join #UniChat-dev on EFnet!
« Last Edit: January 12, 2018, 11:26:45 pm by _iPhoenix_ »
  • Calculators owned: Two TI-84+ CE's
Please spam here: https://legend-of-iphoenix.github.io/spam/

"walruses are better than tuxedo chickens, all hail the great :walrii:" ~ me
Evolution of my avatar:

Offline _iPhoenix_

  • Custom title
  • Super User
  • Join Date: Mar 2017
  • Location: Location
  • Posts: 669
  • Post Rating Ratio: +16/-1
  • ███████ ▼ ♪ Best music ♫
    • @dj_iPhoenix
    • @UCytgMNPxAMDsxjimvxHf01w
    • Legend-of-iPhoenix
    • @the-legend-of-iphoenix
    • My website.
  • Gender: Male
Re: UniChat!
« Reply #36 on: January 13, 2018, 09:31:38 pm »
I added a sweet active users bar, and you can see exactly who is online and has posted a message in the last 15 minutes, in real time! (depending on connection)

Check it out!
  • Calculators owned: Two TI-84+ CE's
Please spam here: https://legend-of-iphoenix.github.io/spam/

"walruses are better than tuxedo chickens, all hail the great :walrii:" ~ me
Evolution of my avatar:

Offline _iPhoenix_

  • Custom title
  • Super User
  • Join Date: Mar 2017
  • Location: Location
  • Posts: 669
  • Post Rating Ratio: +16/-1
  • ███████ ▼ ♪ Best music ♫
    • @dj_iPhoenix
    • @UCytgMNPxAMDsxjimvxHf01w
    • Legend-of-iPhoenix
    • @the-legend-of-iphoenix
    • My website.
  • Gender: Male
Re: UniChat!
« Reply #37 on: January 15, 2018, 03:41:05 pm »
There is some planned downtime for UniChat now, starting 2 hours ago and ending when I am done. (EDIT: I'm done!)

When it is over, you guys will have private chatrooms!

It's technically usable but very buggy; I'm here, in the default chatroom and in test, which is here.
« Last Edit: January 15, 2018, 05:58:24 pm by _iPhoenix_ »
  • Calculators owned: Two TI-84+ CE's
Please spam here: https://legend-of-iphoenix.github.io/spam/

"walruses are better than tuxedo chickens, all hail the great :walrii:" ~ me
Evolution of my avatar:

Offline _iPhoenix_

  • Custom title
  • Super User
  • Join Date: Mar 2017
  • Location: Location
  • Posts: 669
  • Post Rating Ratio: +16/-1
  • ███████ ▼ ♪ Best music ♫
    • @dj_iPhoenix
    • @UCytgMNPxAMDsxjimvxHf01w
    • Legend-of-iPhoenix
    • @the-legend-of-iphoenix
    • My website.
  • Gender: Male
Re: UniChat!
« Reply #38 on: January 15, 2018, 08:40:06 pm »
[double post because of huge update]

UniChat private chatrooms are done, and here's how they work:

When you go to the main page, https://legend-of-iphoenix.github.io/UniChatDemo/, you are automatically put into the default chat room! This is where we expect most of our users will be.

Just like IRC Channels, you can share room ("channel") names with each other. Each room has its own private list of online users and messages!

You can use the built-in hub, or the simple form on the main page, below the settings bar (it might be below the message bar on some devices).

Additionally, you can create a private chatroom using a button under settings, with a random key that is highly unlikely to be guessed by others.
  • Calculators owned: Two TI-84+ CE's
Please spam here: https://legend-of-iphoenix.github.io/spam/

"walruses are better than tuxedo chickens, all hail the great :walrii:" ~ me
Evolution of my avatar:

Offline 123outerme

  • Super User
  • Join Date: Jan 2015
  • Location: In spaaace! Well, the Earth is anyhow.
  • Posts: 733
  • Post Rating Ratio: +8/-0
  • Professional Unpaid Intern
    • @UCx1XQoxAm-ZTz-lwyUqbs0w
    • 123outerme
    • 113/11355
  • Gender: Male
Re: UniChat!
« Reply #39 on: January 27, 2018, 09:37:47 pm »
Working on my own bot for UniChat, and I've been having some fun. I'm compiling a list of my favorite messages it's produced, such as:

Command: |promote <thing>
Code: [Select]
[outerBot]: 123outerme's new corporate money grab, Flex Tape, is so perfect it will make you hate reality.
[outerBot]: 123outerme's new religion, UniChat, is so perfect it will make you hate reality.
[outerBot]: jcgter777's new idea, death, is a thing that exists that you can find.
[outerBot]: jcgter777's new religion, 123outerme, is pitifully mediocre.
[outerBot]: 123outerme's new idea, |promote, is basically the reason WWIII was started.

Command: |throw <thing>
Code: [Select]
[outerBot]: 123outerme throws outerBot away.
[outerBot]: 123outerme throws LAX18 away.

Command: |destroy <thing>
Code: [Select]
[outerBot]: 123outerme destroys spam.

Command: |options <number>
Code: [Select]
[outerBot]: Well 123outerme, we could execute Order 66, or repurpose outerBot to fight ninjas.

Command: |status
Code: [Select]
[outerBot]: Welcome back, sir. At version undefined, I am fully operational.
Yeah right on that last one.
« Last Edit: January 31, 2018, 12:20:18 am by 123outerme »
  • Calculators owned: TI-84+CSE, TI-nspire Clickpad, TI-84+SE

Offline _iPhoenix_

  • Custom title
  • Super User
  • Join Date: Mar 2017
  • Location: Location
  • Posts: 669
  • Post Rating Ratio: +16/-1
  • ███████ ▼ ♪ Best music ♫
    • @dj_iPhoenix
    • @UCytgMNPxAMDsxjimvxHf01w
    • Legend-of-iPhoenix
    • @the-legend-of-iphoenix
    • My website.
  • Gender: Male
Re: UniChat!
« Reply #40 on: January 28, 2018, 12:18:37 am »
I'll let @Alvajoy123 explain himself here.

  • Calculators owned: Two TI-84+ CE's
Please spam here: https://legend-of-iphoenix.github.io/spam/

"walruses are better than tuxedo chickens, all hail the great :walrii:" ~ me
Evolution of my avatar:

Offline xlibman

  • Omni founder & CW co-founder
  • CodeWalrus Staff
  • Super User
  • Moderator
  • Forum Maintenance
  • Original 5
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 19072
  • Post Rating Ratio: +101/-5
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • DJ Omnimaga music store
  • Gender: Male
Re: UniChat!
« Reply #41 on: January 29, 2018, 06:55:53 pm »
I'll let @Alvajoy123 explain himself here.


It's alvajoy123 :P
  • Calculators owned: TI-84 Plus C Silver Edition, TI-84 Plus CE, Casio fx-CG10
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nintendo Switch, Playstation TV

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)

Offline _iPhoenix_

  • Custom title
  • Super User
  • Join Date: Mar 2017
  • Location: Location
  • Posts: 669
  • Post Rating Ratio: +16/-1
  • ███████ ▼ ♪ Best music ♫
    • @dj_iPhoenix
    • @UCytgMNPxAMDsxjimvxHf01w
    • Legend-of-iPhoenix
    • @the-legend-of-iphoenix
    • My website.
  • Gender: Male
Re: UniChat!
« Reply #42 on: January 31, 2018, 02:42:07 am »
Working on my own bot for UniChat, and I've been having some fun. I'm compiling a list of my favorite messages it's produced, such as:

Command: |promote <thing>
Code: [Select]
[outerBot]: 123outerme's new corporate money grab, Flex Tape, is so perfect it will make you hate reality.
[outerBot]: 123outerme's new religion, UniChat, is so perfect it will make you hate reality.
[outerBot]: jcgter777's new idea, death, is a thing that exists that you can find.
[outerBot]: jcgter777's new religion, 123outerme, is pitifully mediocre.
[outerBot]: 123outerme's new idea, |promote, is basically the reason WWIII was started.

Command: |throw <thing>
Code: [Select]
[outerBot]: 123outerme throws outerBot away.
[outerBot]: 123outerme throws LAX18 away.

Command: |destroy <thing>
Code: [Select]
[outerBot]: 123outerme destroys spam.

Command: |options <number>
Code: [Select]
[outerBot]: Well 123outerme, we could execute Order 66, or repurpose outerBot to fight ninjas.

Command: |status
Code: [Select]
[outerBot]: Welcome back, sir. At version undefined, I am fully operational.
Yeah right on that last one.

Here's one more for |promote:
Code: [Select]
[09:37:58] jcgter777: |promote death
[09:37:58] [outerBot]: jcgter777's new service, death, is worse than expected.
  • Calculators owned: Two TI-84+ CE's
Please spam here: https://legend-of-iphoenix.github.io/spam/

"walruses are better than tuxedo chickens, all hail the great :walrii:" ~ me
Evolution of my avatar:

 


You can also use the following HTML or bulletin board code to share it on your page or forum signature!


Also do not forget to check our affiliates below.
Planet Casio TI-Planet Calc.news BroniesQC BosaikNet Velocity Games