Everything works.  I had the passwords mis-matched.  :)

On Sep 12, 11:04 am, franklovecchio <[email protected]> wrote:
> I had a previous APE installation that was on an CentOS box
> (undocumented install), which I'm trying to script for EC2 on Ubuntu.
> I can get a client to connect successfully, but it does not receive
> messages.  This is probably because the Tools/Check fails with
> "Exception 18", which is:
>
> Running test : Init
> Running test : Loading Client
> Running test : Loading config
> Config values are :
> identifier : ape
> init : true
> frequency : 0
> scripts 
> :http://local.ape-project.org/APE_JSF/Source/mootools-core.js,http://l...
> baseUrl :http://local.ape-project.org/APE_JSF
> domain : ape-project.org
> server : ape.local.ape-project.org:6969
> Running test : Setting document.domain
> Can't set document.domain please check APE.Config.domain value it
> should be ape.demandresults.com
>
> I'm trying to publish messages onhttp://ape.demandresults.com:6969
> from a Java client (not javascript), and this DID work previously.
>
> I've tried many configurations, but what below is the current, semi-
> working setup.  Please help!!
>
> Setup script:
>
> #!/bin/bash
> # Run in sudo
>
> chmod 777 /etc/apt/sources.list
> echo -e "debhttp://us.archive.ubuntu.com/ubuntu/natty universe" >> /
> etc/apt/sources.list
> echo -e "deb-srchttp://us.archive.ubuntu.com/ubuntu/natty universe">> 
> /etc/apt/sources.list
>
> echo -e "debhttp://us.archive.ubuntu.com/ubuntu/natty-updates
> universe" >> /etc/apt/sources.list
> echo -e "deb-srchttp://us.archive.ubuntu.com/ubuntu/natty-updates
> universe" >> /etc/apt/sources.list
>
> echo -e "debhttp://us.archive.ubuntu.com/ubuntu/natty multiverse">> 
> /etc/apt/sources.list
>
> echo -e "deb-srchttp://us.archive.ubuntu.com/ubuntu/natty
> multiverse" >> /etc/apt/sources.list
> echo -e "debhttp://us.archive.ubuntu.com/ubuntu/natty-updates
> multiverse" >> /etc/apt/sources.list
> echo -e "deb-srchttp://us.archive.ubuntu.com/ubuntu/natty-updates
> multiverse" >> /etc/apt/sources.list
>
> # Update after new sources list
> apt-get update
>
> # Install necessary packages
> aptitude install -y zip apache2 stunnel4 gcc ec2-api-tools ec2-ami-
> tools ntp libssl-dev git-core build-essential subversion git git-svn
> python unzip libgtk2.0-0
>
> # Upgrade all the packages
> apt-get upgrade -y
>
> # Configure date
> chmod 777 /etc/cron.daily
> echo -e "ntpdate ntp.ubuntu.com" > /etc/cron.daily/ntpdate
>
> # Update ulimits
> cat >> /etc/security/limits.conf <<EOF
>
> *                soft    nofile     131072
> *                hard    nofile     131072
> root     soft    nofile     131072
> root     hard    nofile     131072
>
> EOF
>
> # Configure memory usage
> sysctl -w net.core.rmem_max=4194304
> sysctl -w net.core.wmem_max=4194304
>
> # APE
> git clonehttps://github.com/APE-Project/APE_Server.git
> cd /home/ubuntu/APE_Server
> ./build.sh
>
> # Congifure APE
> sed -i "s/daemon = no/daemon = yes/g" /home/ubuntu/APE_Server/bin/
> ape.conf
> sed -i "s/include(\"examples\/nickname.js\")/\/\/include(\"examples\/
> nickname.js\")/g" /home/ubuntu/APE_Server/scripts/main.ape.js
> sed -i "s/password = testpasswd/password = somepassword/g" /home/
> ubuntu/APE_Server/modules/conf/inlinepush.conf
>
> # Start APE
> cd /home/ubuntu/APE_Server/bin
> ./aped
>
> # APE JSF
> cd /var/www
> git clonehttps://github.com/APE-Project/APE_JSF.git
>
> # Download config
> s3cmd get s3://demandresults-setup/apeClientJS.js /var/www/APE_JSF/
> Build/yuiCompressor/ --force
> sudo chmod 755 /var/www/APE_JSF/Build/yuiCompressor/apeClientJS.js
>
> cd /var/www/APE_JSF
> sudo mv * ..
> rm -r /var/www/APE_JSF
>
> # Create symlink
> ln -sf /var/www/Build/yuiCompressor/apeClientJS.js /var/www/rt.js
>
> # Edit APE_SERVER/bin/ape.conf
>
> # Edit /etc/apache2/sites-available/default
>
> service apache2 restart
>
> rt.js:
>
> var APE={Config:{identifier:"ape",init:true,frequency:0,scripts:
> []},Client:function(a){if(a)
> {this.core=a}}};APE.Client.prototype.eventProxy=[];APE.Client.prototype.fir 
> eEvent=function(c,b,a)
> {this.core.fireEvent(c,b,a)};APE.Client.prototype.addEvent=function(d,c,a)
> {var e=c.bind(this),b=this;if(this.core==undefined)
> {this.eventProxy.push([d,c,a])}else{var
> b=this.core.addEvent(d,e,a);this.core.$originalEvents[d]=this.core.
> $originalEvents[d]||[];this.core.$originalEvents[d][c]=e}return
> b};APE.Client.prototype.removeEvent=function(b,a){return
> this.core.removeEvent(b,a)};APE.Client.prototype.onRaw=function(c,b,a)
> {this.addEvent("raw_"+c.toLowerCase(),b,a)};APE.Client.prototype.onCmd=func 
> tion(c,b,a)
> {this.addEvent("cmd_"+c.toLowerCase(),b,a)};APE.Client.prototype.onError=fu 
> nction(c,b,a)
> {this.addEvent("error_"+c,b,a)};APE.Client.prototype.cookie={};APE.Client.p 
> rototype.cookie.write=function(a,b)
> {document.cookie=a+"="+encodeURIComponent(b)+";
> domain="+document.domain};APE.Client.prototype.cookie.read=function(b)
> {var e=b+"=";var a=document.cookie.split(";");for(var d=0;d<a.length;d+
> +){var f=a[d];while(f.charAt(0)==" "){f=f.substring(1,f.length)}
> if(f.indexOf(e)==0){return
> decodeURIComponent(f.substring(e.length,f.length))}}return
> null};APE.Client.prototype.load=function(config){config=config||
> {};config.transport=config.transport||APE.Config.transport||
> 0;config.frequency=config.frequency||0;config.domain=config.domain||
> APE.Config.domain||document.domain;config.scripts=config.scripts||
> APE.Config.scripts;config.server=config.server||
> APE.Config.server;config.secure=config.sercure||
> APE.Config.secure;config.init=function(core){this.core=core;for(var
> i=0;i<this.eventProxy.length;i++)
> {this.addEvent.apply(this,this.eventProxy[i])}}.bind(this);if(config.transp 
> ort!
> =2){if(config.domain!="auto"){document.domain=config.domain}
> if(config.domain=="auto"){document.domain=document.domain}}var
> cookie=this.cookie.read("APE_Cookie");var tmp=eval("("+cookie
> +")");if(tmp){config.frequency=tmp.frequency+1}
> else{cookie='{"frequency":0}'}var reg=new RegExp('"frequency":
> ([ 
> 0-9]+)',"g");cookie=cookie.replace(reg,'"frequency":'+config.frequency);thi 
> s.cookie.write("APE_Cookie",cookie);var
> iframe=document.createElement("iframe");iframe.setAttribute("id","ape_"+con 
> fig.identifier);iframe.style.display="none";iframe.style.position="absolute 
> ";iframe.style.left="-300px";iframe.style.top="-300px";document.body.insert 
> Before(iframe,document.body.childNodes[0]);var
> initFn=function()
> {iframe.contentWindow.APE.init(config)};if(iframe.addEventListener)
> {iframe.addEventListener("load",initFn,false)}
> else{if(iframe.attachEvent){iframe.attachEvent("onload",initFn)}}
> if(config.transport==2){var doc=iframe.contentDocument;if(!doc)
> {doc=iframe.contentWindow.document}doc.open();var
> theHtml="<html><head>";for(var i=0;i<config.scripts.length;i++){theHtml
> +='<script type="text/JavaScript" src="'+config.scripts[i]+'"><\/
> script>'}theHtml+="</head><body></body></
> html>";doc.write(theHtml);doc.close()}else{iframe.setAttribute("src",
> (config.secure?"https":"http")+"://"+config.frequency+"."+config.server
> +'/?[{"cmd":"script","params":{"domain":"'+document.domain
> +'","scripts":["'+config.scripts.join('","')
> +'"]}}]');if(navigator.product=="Gecko")
> {iframe.contentWindow.location.href=iframe.getAttribute("src")}}};if(Functi 
> on.prototype.bind==null)
> {Function.prototype.bind=function(b,a){return
> this.create({bind:b,"arguments":a})}}
> if(Function.prototype.create==null)
> {Function.prototype.create=function(b){var a=this;b=b||{};return
> function(){var c=b.arguments||arguments;if(c&&!c.length){c=[c]}var
> d=function(){return a.apply(b.bind||null,c)};return d()}}};
> /***
>  * APE JSF Setup
>  */
>
> var rtPipe;
>
> /**
> * Not in use
> */
> function authInit (md5) {
>
> }
>
> function init(channel, callback, returnJSON) {
>     var client = new APE.Client();
>     client.load();
>     client.addEvent('load', function() {
>                         client.core.start();
>     });
>
>     client.addEvent('ready', function() {
>                 join(client , channel);
>         client.onRaw('data', function(raw, pipe) {
>                 callback(raw.data);
>         });
>         });
>
>         client.addEvent('uniPipeCreate', function(pipe, options){
>                 rtPipe = pipe;
>         });
>
>         return client;
>
> }
>
> function leave (client, pubid) {
>         client.core.left(pubid);
>
> }
>
> function quit(client){
>         client.core.quit();
>
> }
>
> function join (client, channel) {
>     if (isArray(channel) == false) {
>         channel = removeNonAlphas(channel);
>         client.core.join(channel);
>         } else {
>         for (var i in channel) {
>                 channel[i] = removeNonAlphas(channel[i]);
>         }
>         client.core.join(channel);
>     }
>
> }
>
> function removeNonAlphas(channel){
>     channel = channel.replace(/[^a-zA-Z 0-9]+/g,'');
>     return channel;
>
> }
>
> function isArray(obj) {
>     if (obj.constructor.toString().indexOf("Array") == -1)
>     return false;
>     else
>     return true;
>
> }
>
> APE.Config.baseUrl = 'http://ape.demandresults.com/';//APE JSF
> APE.Config.domain = 'ape.demandresults.com';
> APE.Config.server = 'ape.demandresults.com:6969'; //APE server URL
> APE.Config.transport = 2;  // 2 is JSONP
>
> (function(){
>         for (var i = 0; i < arguments.length; i++)
>                 APE.Config.scripts.push(APE.Config.baseUrl + '/Source/' +
> arguments[i] + '.js');})('mootools-core', 'Core/APE', 'Core/Events', 
> 'Core/Core', 'Pipe/
>
> Pipe', 'Pipe/PipeProxy', 'Pipe/PipeMulti', 'Pipe/PipeSingle', 'Request/
> Request','Request/Request.Stack', 'Request/Request.CycledStack',
> 'Transport/Transport.longPolling','Transport/Transport.SSE',
> 'Transport/Transport.XHRStreaming', 'Transport/Transport.JSONP',
> 'Transport/Transport.WebSocket', 'Core/Utility', 'Core/JSON');
>
> ape.conf:
>
> uid {
>         # "aped" switch to this user/group if it run as root
>         user = daemon
>         group = daemon
>
> }
>
> Server {
>         port = 6969
>         daemon = yes
>        # Works with either EC2 internal IP or 0.0.0.0
>         ip_listen = 0.0.0.0
>         domain = ape.demandresults.com
>         rlimit_nofile = 10000
>         pid_file = /var/run/aped.pid
>
> }
>
> Log {
>         debug = 1
>         use_syslog = 0
>         syslog_facility = local2
>         logfile = ./ape.log
>
> }
>
> JSONP {
>         eval_func = Ape.transport.read
>         allowed = 2
>
> }
>
> Config {
>         modules = ../modules/lib/
>         modules_conf = ../modules/conf/
>
> }
>
> /etc/apache2/sites-available/default:
>
> <VirtualHost *:80>
>         ServerAdmin webmaster@localhost
>
>         # APE CONFIGURATION
>         ServerAlias ape.demandresults.com
>         ServerAlias *.ape.demandresults.com
>
>         DocumentRoot /var/www
>         <Directory />
>                 Options FollowSymLinks
>                 AllowOverride None
>         </Directory>
>         <Directory /var/www/>
>                 Options Indexes FollowSymLinks MultiViews
>                 AllowOverride None
>                 Order allow,deny
>                 allow from all
>         </Directory>
>
>         ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
>         <Directory "/usr/lib/cgi-bin">
>                 AllowOverride None
>                 Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
>                 Order allow,deny
>                 Allow from all
>         </Directory>
>
>         ErrorLog ${APACHE_LOG_DIR}/error.log
>
>         # Possible values include: debug, info, notice, warn, error, crit,
>         # alert, emerg.
>         LogLevel warn
>
>         CustomLog ${APACHE_LOG_DIR}/access.log combined
>
>     Alias /doc/ "/usr/share/doc/"
>     <Directory "/usr/share/doc/">
>         Options Indexes MultiViews FollowSymLinks
>         AllowOverride None
>         Order deny,allow
>         Deny from all
>         Allow from 127.0.0.0/255.0.0.0 ::1/128
>     </Directory>
>
> </VirtualHost>

-- 
You received this message because you are subscribed to the Google
Groups "APE Project" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/ape-project?hl=en
---
APE Project (Ajax Push Engine)
Official website : http://www.ape-project.org/
Git Hub : http://github.com/APE-Project/

Reply via email to