Difference between revisions of "Widget"

From Mibbit Wiki
Jump to: navigation, search
(Use the Widget in an Object Tag)
m (Use the Widget in an Object Tag)
Line 77: Line 77:
 
<object id="chat" type="text/html" data=" http://embed.mibbit.com/index.html?server=irc.mibbit.com"></object>
 
<object id="chat" type="text/html" data=" http://embed.mibbit.com/index.html?server=irc.mibbit.com"></object>
  
To degrade correctly in IE, place text between the object tags, and that will be shown instead of a blank spot.
+
To degrade correctly in IE, place text between the object tags, e.g.  "We're sorry, you use a non-standards-compliant browser", and that will be shown instead of a blank spot.
  
 
== Securing your widget ==
 
== Securing your widget ==
  
 
There is also a secure mode of operation, if you wish you channel to be slightly more secure, or do not want '''anybody''' able to have a widget pointing at your channel. With this system, you tell us the server, channel and a password. Then for each url you generate, you must specify a nick (Generate one yourself), and you send over 'key' as a param, equal to md5(nick + ":" + password). This means that unless you know the password, embedding to that channel/server is pretty hard. Additionally you can also send us the channel key if the channel is keyed, which then is sent from the mibbit backend to the irc server. Then only people using *your* widget on your site, or people you allow, can enter the channel.
 
There is also a secure mode of operation, if you wish you channel to be slightly more secure, or do not want '''anybody''' able to have a widget pointing at your channel. With this system, you tell us the server, channel and a password. Then for each url you generate, you must specify a nick (Generate one yourself), and you send over 'key' as a param, equal to md5(nick + ":" + password). This means that unless you know the password, embedding to that channel/server is pretty hard. Additionally you can also send us the channel key if the channel is keyed, which then is sent from the mibbit backend to the irc server. Then only people using *your* widget on your site, or people you allow, can enter the channel.

Revision as of 19:56, 14 July 2008

If you'd like to have webchat on your own website, then you could use a Java applet (slow, ugly, and not very accessible), or you could use Mibbit! example

The first step, is to decide where you want your users to go. You can either create a channel on irc.mibbit.com or if you manage your own irc server, please contact Mibbit and ask for it to be authorized.

The basic URL for the Mibbit Widget is

http://embed.mibbit.com/

The parameters you can pass are:

  • nick - If you do not specify this, a random one will be chosen eg mib_6d7s8euf
  • channel - A single channel that the user will be directed to.
  • server - This defaults to irc.mibbit.com. You can avoid the connect-form if you have authorized your server (see blog).
  • settings - Unique settings ID for an account on Mibbit.com. See Widget Configuration

Example URL:

http://embed.mibbit.com/?server=irc.freenode.net&channel=%23defocus

Please note you must urlencode all parameters. So #foo becomes %23foo etc.

You can use the Widget-Creator to create a link or an iframe code snippet now.


Widget Configuration

Widget configuration is best done through passing a unique settings ID to the widget. To do this, create an account on Mibbit.com. Then go into the preferences and change the settings to how you want your widget to appear. At the top of the preferences screen there will be a unique ID for your settings (like 7ca12664887d4b6e7a0fa6552f9e0de6). This should be passed to the widget using the &settings= parameter. Example:

http://embed.mibbit.com/?settings=7ca12664887d4b6e7a0fa6552f9e0de6&server=irc.blah.com&channel=%23myChan

Please note there is currently a bug that means it will not be shown right after a register. So if you register a new account, click reload, *then* go into prefs.

Widget parameters

There are many parameters that can be added to the widget by adding them to the URL. For example:

<a href="http://embed.mibbit.com/
?server=irc.freenode.net
&nick=Guest
&channel=%23MibChat
&customprompt=Welcome%20To%20MibChat
&customloading=maybe%20you%20need%20to%20close%20other%20Mibbit%20windows%20first...
&settings=22041f31cac0adf2d1959cdc21aed853" 
target="_blank">start MibChat on irc.freenode.net (new window)</a>
 

View the full parameter lists: Dset and Uri_parameters

Use the Widget in an Iframe

Make sure your page has a DTD setup, otherwise IE will not work properly. Place this code at the top of your page:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

Then place this code where you want the chat widget to appear:

<iframe width="600" height="380" scrolling="no" frameborder="0"
 src="http://embed.mibbit.com/?channel=%23my_chat&nick=choose_one">
</iframe>
type /nick to change your Nick name, /help, /cs help,
/ns help, or /ms help for available commands

Be sure to change the server and channel to your chatroom

See also: Advanced iframe using PHP to pre-fill a nick like "prefix_<randompart>"

Use the Widget in a Popup

Copy and place this link in your page to open a popup window for the chat widget

<a href='#freenode/test' 
onclick='window.open("http://embed.mibbit.com/?server=irc.freenode.net&channel=%23test&settings=7ca12664887d4b6e7a0fa6552f9e0de6","","width=999,height=555")'>
Join our "#test" chat on Freenode (popup)</a>

The javascript must be on one line. Be sure to change the server, channel and settings to your chatroom/preferences

Use the Widget in an Object Tag

Does not work in Internet Explorer. Use as a last resort.

Copy and place this into your HTML for it to work:

<object id="chat" type="text/html" data=" http://embed.mibbit.com/index.html?server=irc.mibbit.com"></object>

To degrade correctly in IE, place text between the object tags, e.g. "We're sorry, you use a non-standards-compliant browser", and that will be shown instead of a blank spot.

Securing your widget

There is also a secure mode of operation, if you wish you channel to be slightly more secure, or do not want anybody able to have a widget pointing at your channel. With this system, you tell us the server, channel and a password. Then for each url you generate, you must specify a nick (Generate one yourself), and you send over 'key' as a param, equal to md5(nick + ":" + password). This means that unless you know the password, embedding to that channel/server is pretty hard. Additionally you can also send us the channel key if the channel is keyed, which then is sent from the mibbit backend to the irc server. Then only people using *your* widget on your site, or people you allow, can enter the channel.