PDA

View Full Version : vBulletin SOAP API


leonsio
11-09-2005, 10:00 PM
sorry for my bad english ;)


Changes:

v. 1.0.7
Bugfix in the updateUser function
added getOnlineUsers() function, to get the list of the logged in users

v. 1.0.6
updateUser uand deleteUser updated, now is posible to call it with userid or other field from user table
getStats() funktion added, to get forum stats


v. 1.0.5
Added updateUser, deleteUser to update user data ( email/password, username )
or delete user

v. 1.0.4
Added doActivateSession function to let vbulletin accept sessionid

v. 1.0.3
functions to get userdata and postdata are now done
postmessage returns as formated html

v. 1.0.2
added support for vbulletin "session"
the server can now send all needed cookies, to the client, last 2 optional:
(PREFIXsessionhash/lastvisit/lastactivity/(userid/password))

v. 1.0.1
rename login funtion to doLogin
add placeholder for getUser/setUser, getPost/setPost, getThread/setThread functions
change URL in the WSDL file to relative URL




this is a beta version !!

what this hack do:

this hack provide a soap api to access vbulletin functions over internet
( for example: ebay, amazon or google have they webservices api to access is over soap )

this hack has at the moment this functions

1. login to vbulletin
you must give username and password, as response you get userid and password as md5 ( with salt ) hash

so that you can set vbulletin cookie on your application

2.
a. last X post from the forum
b. last X post from the forum, which the user ( which is loged in, see 1. ) can see

3. manipulate a user, get user information , create users or delete then

4.
get forum statistics from vbulletin ( Sponsored by 1Agency (www.1agency.de) )
you will get new user, max threads/posts and some other stuff as result

5.
get all logged in users in vbulletin


what can you do with this hack ?

you can make common login with your application ( written in PHP/ASP(.NET)/JAVA/C or any language which supports SOAP calls ( for example mozilla firefox ^^)).
to make common login, you must set vbulletin cookie, see 1.

or you can write firefox extension to get last 10 thread from your forum, with threads that you can see

or synchronise users from your application and vbulletin ( this feauture is on development )

other planced feautures are:
write comment
write thread
get thread ( with all comments )


whis SOAP-SERVER is written in PHP5 with SOAP - extension
so that you need to be php5 and soap extension installed on your server
( all new destributions provides php5 and soap extensions as rpm packages )

it is posible to write this server in php4 oder php5 without soap extension ( with nuSOAP or PEAR::SOAP ) but this is not planed at the time, sorry
php
Clients can be written in Java, ASP or PHP, with all language which supports soap
so that you can make common login between an ASP or JSP CMS and Vbulletin


how to install

unpack the package, move the "soap" folder in your forum root
and install the product with product installer

to test the functionality i have included some test files in /soap/examples

you must change the url and username/password and the key in this files


later i will make some examples for typo3/joomla/xoops to access and login into vbulletin

i will accept every help and feedback to make this extension better :D

updated example is in the "soap" folder

SHANE-D-PAIN
11-10-2005, 08:52 PM
First post for no apparent reason but this sounds good.

rb290
11-10-2005, 10:47 PM
confused lol

can someone sum it up in a little paragraph and tell me what this is

Daniel
11-11-2005, 12:23 AM
Soap on the computer? sweet

tnguy3n
11-11-2005, 12:35 AM
I think SOAP must be abreviation of something, but I got no idea what it is. :p

mcncyo
11-11-2005, 01:01 AM
SOAP= Simple Object Access Protocol. It was design to easy interface with the data.

You don't have to call mysql database, call the correct table all you have to do is call the program and it will do the rest. You can make an application to connect to it easy.

Reeve of shinra
11-11-2005, 01:13 AM
This has a lot of potential. Off the top of my head, I can see htis being used for folks that want to have 1 user table across different sites.

Cap'n Steve
11-11-2005, 04:07 AM
Nice idea.

/me gets the first install.

leonsio
11-11-2005, 07:44 AM
little example to access VB_SOAP(login into vbulletin) with PEAR-SOAP class

( works in php4 and php5 )


<?php

include_once('SOAP/Client.php');

$test= new SOAP_Client('http://www.c4u.to/forum/soap/server.php?wsdl');

$params=array( 'key' => 'test',
'password' => 'tester',
'username' => 'tester'
);

$result=$test->call('doLogin', $params);

print_r($result);

?>


update to version 1.0.1

leonsio
11-11-2005, 12:33 PM
next version will come with vbulletin cookie support an without phpsession support

so what you can get all needed cookies directly from the vbulletin server ( userid and password as cookie data too )

this feauture can be activated in the admincp

attention, if you will to transfer cookie of userid and password, you should use an ssl connection !!!

this version will come out on monday

and it will include an example to connect the server with cookie support

after first connect ( or login ) you will get an vbulletin-session cookie from the server ( as array )
you can put this cookie in the user session at your application, by next request you can send this cookie with the request

this cookie let you be logged in, at vbulletin
( it create an vbulletin session, if the user login over doLogin function, the user will be displayer on the online.php as logged in on forum )

Snake
11-11-2005, 02:35 PM
This is nice! Thanks!

KevinM
11-12-2005, 06:04 AM
I'm starting to get excited.. could this be adapted to allow one login across multiple vbulletin forums.

E.g. I have 40 different forums across numerous servers. The Holy Grail of hacks for me would be to when someone registered at one forum, it could work across my network of different forums.

What do you think?

Marco van Herwaarden
11-12-2005, 06:21 AM
This sounds very promissing, thank you for sharing.

leonsio
11-12-2005, 07:08 AM
I'm starting to get excited.. could this be adapted to allow one login across multiple vbulletin forums.

E.g. I have 40 different forums across numerous servers. The Holy Grail of hacks for me would be to when someone registered at one forum, it could work across my network of different forums.

What do you think?


yes it is posible, you must install VB_SOAP on all your forums
and the login script must walk all soap servers to get userdata and set cookie


----------------------------------------------------------------

user synchronisation solution ( next version )

i will dont make an feauture which allow you to get or save multiple users at one time
because soap is not designet to send big data cross the internet
on big forums with more as 1000 users it will makes only problems with the transport of data ( http timeouts/ php memory size ... )

but i will make an function, to save user or to get user

how can you synchronize your users on multiple application

the solution is:

example A

you have user A ( with the name test ) on your CMS and user B ( with the same name "test" ) on vbulletin the passwords must be same

the CMS use SHA1 as password hash and vbulletin use MD5

if the user login on the CMS you must make an call to vbulletin with the username and password ( plain ) to vbulletin
and you will get the userid and hashn of password with salt
so you can set cookie and the user is logged in on vbulletin

with the function getUser you can get all data from vbulletin for example to synchronise the data of CMS with vbulletin


example B

you have user A ( with the name test ) on vbulletin but not on CMS

if the user A try to login on CMS, normaly the login will be deny, but you can make an call to vbulletin with the username and password of user A

an if the user will be acceppt, you can get all data from the user with the function "getUser" and create a user A on your CMS


where many application with different authentification methods, so it is not allways posible to synchronise users ( password hash is not match is the biggest problem)
so you should only create your user on CMS if it user login and exist on vbulletin

on registration of the user ( on CMS ) you can make a call to vbulletin with the user data ( function setUser) ans so create a user on vbulletin

Princeton
11-12-2005, 09:55 PM
I've been gone for a while ...
this looks great!

Thanks for sharing.

Borgs8472
11-12-2005, 10:51 PM
yes it is posible, you must install VB_SOAP on all your forums
and the login script must walk all soap servers to get userdata and set cookie
Then it should be an official vb add-on :)

Of course someone (e.g. vb)

It'd need something like ezboard uses where you can have a global login, or a login for a certain board only (like in the case where someone has your name there first). Or a way to allowed duplicate names, which obviously wouldn't have the same userids.

Then rather than registering for a vbforum, you'd just login with a reference to another board the first time.

Or something.

ONE DAY!

leonsio
11-14-2005, 11:36 AM
new version 1.0.2 is online

leonsio
11-18-2005, 11:06 AM
new version 1.0.3 is online

twitch
11-20-2005, 05:41 PM
So... would this be able to work with vwar? http://www.vwar.de and my vbulletin forum so that users will synch?

I am looking for some sort of vwar bridge or something to synch the 2 user databases together. A vwar bridge would be a great tool for the vbulletin community.

leonsio
11-21-2005, 05:14 AM
yes it is posible to make bridges for any applications

but i dont want to make it at this time

i have included some examples in this package, so look at it and you can make easy common login with vwar or any other application

as next example i will include some joomla modules (common login, last posts, diskuss bot )

perhaps later i will try to make some other connectors
it is realy easy to make bridges with this API

leonsio
11-25-2005, 11:36 AM
next week i will release new version of VB_SOAP

add users to vbulletin is now posible

as addon i will release an connector for joomla
and one module to get last 10 threads from vbulletin in joomla

trackpads
11-27-2005, 01:04 AM
next week i will release new version of VB_SOAP

add users to vbulletin is now posible

as addon i will release an connector for joomla
and one module to get last 10 threads from vbulletin in joomla

Waiting and thanks!!!

leonsio
11-27-2005, 01:10 AM
I am working on the moment on one universal application connector for joomla
http://forum.joomla.org/index.php/topic,21066.0.html

the vbulletin ( connector module ) will be part of this addon

trackpads
11-27-2005, 02:19 AM
I am working on the moment on one universal application connector for joomla
http://forum.joomla.org/index.php/topic,21066.0.html

the vbulletin ( connector module ) will be part of this addon

Question: will this allow us to run mutliple Joomlas on the same server with a single VB?

leonsio
11-27-2005, 02:57 AM
yes it is posible

but...

at the moment it is only login from joomla supported ( if you users log in in joomla, he will be automaticaly logged in vbulletin, but not in other side )

trackpads
11-27-2005, 03:00 AM
yes it is posible

but...

at the moment it is only login from joomla supported ( if you users log in in joomla, he will be automaticaly logged in vbulletin, but not in other side )

That is acceptable, what I want is a multi portal same member database solution so I can run several, seperate themed subsites. For example:

Trackpads.com (Main site and forums) Main VB install and all forums
site1.trackpads.com (secondary site) Joomla Install #1
site2.trackpads.com (tertiary site) Joomla Install #2

Thanks again for all your work!!

-Jason

leonsio
11-27-2005, 03:06 AM
yes it is posible

There is no changes on joomla database needed ( linke vbridge this do )

after first login, vbulletin user will be created in joomla as joomla user

for joomla question please use joomla suport forum :D

http://forum.joomla.org/index.php/topic,21066.0.html

leonsio
11-28-2005, 06:56 AM
new version is online

in one hour i will release joomla connector which is based on this extension
and supports multiple forums on one joomla installation

(connector vbulletin<->vbulletin will come out soon )

ImportPassion
11-28-2005, 11:21 PM
I am getting an error when I run test.php

Fatal error: Class 'SoapClient' not found in /home/****/forums/soap/examples/test.php on line 10

leonsio
11-29-2005, 05:22 AM
look at first post

you needs PHP5 and soap extension

for a client you can use a PEAR::SOAP, examples are at the first site of this thread

leonsio
11-29-2005, 12:00 PM
how to secure a connection between server and client

1. you can use htaccess authentification ( will be suported later )
2. you can user allow/deny by htaccess

example of .htaccess from my server ( folder /soap/ )


order deny,allow
deny from all
allow from 127.0.0.1
allow from 213.202.245.241


now anyone can access to a soap server who is not in the IP list

later i will try to put it on soap server himself

ImportPassion
11-29-2005, 12:42 PM
I can't find the extension for RHEL3. http://rpm.pbone.net/index.php3?stat=3&search=php5-soap&srodzaj=3

do they make one for RHEL?

D

leonsio
11-29-2005, 12:56 PM
okay little howto:

if you cannot find a extension for you destibution
but you have php5 installed !!!

download rpm for any linux-destibution ( example like suse )

mkdir /tmp/php-soap
cd /tmp/php-soap
wget ftp.suse.com/pub/suse/i386/9.3/suse/i586/php5-soap-5.0.3-14.i586.rpm

after it you must unpack/extrackt the rpm file:

rpm2cpio php5-soap-5.0.3-14.i586.rpm | cpio -imdv

after it you have folders like "usr" and "etc" in your temp folder
in etc folder should be a ini file to load a soap extension
if not, you can create one and move it to your php5 "conf.d" folder or add this code to your php.ini

extension=soap ( or soap.so if your extension has .so name ;) )

[soap]
; Enables or disables WSDL caching feature.
soap.wsdl_cache_enabled=1
; Sets the directory name where SOAP extension will put cache files.
soap.wsdl_cache_dir="/tmp"
; (time to live) Sets the number of second while cached file will be used
; instead of original one.
soap.wsdl_cache_ttl=86400



in folder "usr"(lib/php5)? should be a "soap" or "soap.so" extension
move the file to your php5 extension folder

restart apache and have fun with soap :D

leonsio
11-29-2005, 01:07 PM
I can't find the extension for RHEL3. http://rpm.pbone.net/index.php3?stat=3&search=php5-soap&srodzaj=3

do they make one for RHEL?

D

for RHEL you should better take Centos RPMs ;)

http://rpm.pbone.net/index.php3?stat=3&search=php-soap&srodzaj=3

pelican
11-29-2005, 02:43 PM
seems like a nice hack but it is too technical. if there are some sample code for possible implementation it will be better.

leonsio
11-29-2005, 03:00 PM
seems like a nice hack but it is too technical. if there are some sample code for possible implementation it will be better.



download a package and look at the examples folder

okay modify a server to create own functions is not so easy, that is true

but connects to a server to get some informations is realy easy

only with 2 lines you can make a login of a user, or get last X threads from a forum

1.line (connect)

$connect= new SoapClient(SERVERURL);

2.line ( get data )

$threads=$connect->getLastThreads(X);

done, you have now an array "threads" which have all needed informations to display last X threads

i dont think that this solution is too technical ;)

gnrmarcel
11-29-2005, 09:05 PM
i got 2 errors:

testurl: http://www.meinedomain.de/joomla/forum/soap/examples/session/login.php

> Parse error: parse error, unexpected '{' in /var/www/virtual/meinedomain.de/htdocs/joomla/forum/soap/examples/session/login.php on line 6

testurl: http://www.meinedomain.de/joomla/forum/soap/examples/test.php
> Parse error: parse error, unexpected '{' in /var/www/virtual/meinedomain.de/htdocs/joomla/forum/soap/examples/test.php on line 9

what does it mean?

leonsio
11-30-2005, 05:45 AM
i got 2 errors:

testurl: http://www.meinedomain.de/joomla/forum/soap/examples/session/login.php

> Parse error: parse error, unexpected '{' in /var/www/virtual/meinedomain.de/htdocs/joomla/forum/soap/examples/session/login.php on line 6

testurl: http://www.meinedomain.de/joomla/forum/soap/examples/test.php
> Parse error: parse error, unexpected '{' in /var/www/virtual/meinedomain.de/htdocs/joomla/forum/soap/examples/test.php on line 9

what does it mean?



you must have php5 installed, because php4 dont know try..catch construct ( and dont have soap extension )

thepipper
11-30-2005, 08:33 AM
This is what I definitely need for joomla and vbulletin. But I am confused, where in the server.php file do I change the url, username, password, and access key??? Please explain in detail, your instructions are very vague. Thanks. :)

leonsio
11-30-2005, 09:18 AM
look at the examples

access key is a litte hack to make communication beween server and client a little bit secure
you can setup it in vbulletin admincp

the URL is the absolute URL to your soap server www.mydomain.com/forum/soap/server.php

username/password are username and password from the user of your forum

ImportPassion
12-02-2005, 01:53 AM
for RHEL you should better take Centos RPMs ;)

http://rpm.pbone.net/index.php3?stat=3&search=php-soap&srodzaj=3

no good.

php = 5.0.4-4.centos4 is needed by php-soap-5.0.4-4.centos4

leonsio
12-02-2005, 05:05 AM
extrackt rpm file with rpm2cpio

kickorg
12-02-2005, 11:18 AM
local test on win xp, apache 2.0.55 + php 5.1 as modul + php soap extension

SoapFault Object
(

.... somethingthing .....

[faultstring] => Call to undefined function vbrand()
[faultcode] => SOAP-ENV:Server
)

any idea?

leonsio
12-02-2005, 11:25 AM
which vbulletin do you use?
in which folder is server.php located?
if you use other folder than /soap you must edit a patch to you forum at the top of the server.php

vbrand functions is in the functions.php, which is loaded by the constructor of the class
so that i think it can not be found

look at the CWD constant

define('CWD', '../' ); <-- i think you must change this

example to: ./ if you running server.php in the forumroot

kickorg
12-02-2005, 11:31 AM
vb 3.5.1 new installed yesterday

path's:

"vbroot"/soap/server.php
"vbroot"/soap/examples/test.php

i also think that functions.php not can be found but i dont know why. i have changed nothing and i follow exactly your instructions. hope u can understand my english :)

p.s.: "i have changed nothing means that i have changed nothing in the server.php class", sure i have changed the needed paras like the key etc..

leonsio
12-02-2005, 11:41 AM
hmm it can be a windows specific problem

try to set an absolute path to the CWD constant
and please check a path in the config.php file from vbulletin
(attention windows and linux have different path
c:/forum/ <-- windows
/var/www/forum <-- linux
)

hmm i think i must find anythere a windows pc and test it

but it is not so simple, as it sounds

i have at work only solaris computers, at home i'm using macosx and my root server is linux .....

kickorg
12-02-2005, 11:45 AM
ok now it works. great addon man ;)

the error comes because i have not defined in config.php the path to the forum ->

$config['Misc']['forumpath'] = 'path/to/board';

in config.php i read that i must only define this path if vb print an error that i must define it - you know what i mean?

leonsio
12-02-2005, 11:47 AM
ok now it works. great addon man ;)

the error comes because i have not defined in config.php the path to the forum ->

$config['Misc']['forumpath'] = 'path/to/board';

in config.php i read that i must only define this path if vb print an error that i must define it - you know what i mean?


okay, great i will try to include forumpath check in the construct

kickorg
12-02-2005, 05:14 PM
in "server.php" at function "getpost" i have found a the line "print_r($threadinfo)" ->

public function getPost($key, $postid)
{
global $vbulletin;

if($this->access_key != $key)
{
throw new SoapFault("Server","Bad Key");
}

$postinfo = verify_id('post', $postid, 0, 1);
$threadinfo = verify_id('thread', $postinfo['threadid'], 0, 1);
print_r($threadinfo);
....



i think u have set this line for debug mode and this should not set in the released version, right?

leonsio
12-02-2005, 05:20 PM
hmm yes thx, i will remove it in the next release

leonsio
12-02-2005, 05:27 PM
@kickorg

hab gesehen dass deine HP in deutsch ist, deswegen gehe ich davon aus dass du deutsch kannst *g*

damit wir uns nicht weiter in englisch quallen gibts auf vbhacks-germany auch ein release thread

http://www.vbhacks-germany.com/forum/showthread.php?t=2239

gru? aus dem nachbarsland

leo

kickorg
12-02-2005, 06:21 PM
ja klar sprech deutsch, bin auch urspr?nglich vom deutschen forum hier her gewandert. habe jedoch zwecks h?flichkeit gleich in englisch geschrieben, damit jene die das problem vielleicht auch haben nen plan davon haben wie wir es l?sen ;)

danke f?r den link ;-)

leonsio
12-07-2005, 11:03 AM
new version is online

changes are in the release post

Wordplay
12-19-2005, 08:30 PM
when importing the product i get this error:
Warning: mysql_real_escape_string(): 6 is not a valid MySQL-Link resource in /includes/class_core.php on line 657

Warning: mysql_query(): 6 is not a valid MySQL-Link resource in /includes/class_core.php on line 395

Warning: mysql_error(): 6 is not a valid MySQL-Link resource in /includes/class_core.php on line 837

Warning: mysql_errno(): 6 is not a valid MySQL-Link resource in /includes/class_core.php on line 855

leonsio
12-20-2005, 07:13 AM
which mysql api do you use

mysql or mysqli?

hmm can you install other produkts??

this addon dont needs any database changes, so it must be a vbulletin problem

Wordplay
12-20-2005, 11:10 AM
regular mysql, i get that error on all products i try to import. the thing is that one doesn't work as i get this error when i go to the example:

Parse error: parse error, unexpected '{' in public_html/board/soap/examples/test.php on line 9Parse error: parse error, unexpected '{' in public_html/board/soap/examples/session/login.php on line 6it says at the top that you'll make an example for xoops.

will this really work with xoops????

kickorg
12-20-2005, 11:23 AM
Quote:
Originally Posted by board/soap/examples/test.php
Parse error: parse error, unexpected '{' in public_html/board/soap/examples/test.php on line 9

Quote:
Originally Posted by soap/examples/session/login.php
Parse error: parse error, unexpected '{' in public_html/board/soap/examples/session/login.php on line 6


Are you sure that you use PHP5 width SOAP extension? I think you use PHP4 or maybe you use PHP5 but no SOAP extension

Wordplay
12-20-2005, 11:33 AM
what exactly are soap extensions? and i use .php rather then .php5 i'm on PHP Version 4.3.11 should i be running php 5? if so i can do that, but what are soap extensions?

leonsio
12-20-2005, 11:40 AM
if you will use this addon you MUST have php5 installed on your server

soap-> http://en.wikipedia.org/wiki/SOAP

Wordplay i know you want to connect your joomla with vbulletin

if you have php4 installed you should use the vbulletin_sql module
it works like vbridge, but without alter the usertable (password)

Wordplay
12-20-2005, 11:49 AM
leonsio thank you very much for wanting to help me.

hmm... i'm still putting to consideration whether i should upgrade my server to php5 or not. the only thing trembling my decision is that php5 extensions for vbulletin just crossed my mind. my board is pretty hacked... so moving over to php5 i think i would have to re-do like the entire board as i would have to run a completely new installation of vbulletin.php5, and upgrade from there, adding the hacks and everything from scratch. as i doubt that it is possible to upgrade to a vbulletin that runs php to php5.

furthermore... i doubt all my hacks would still work.

so i'm in a fix.

please let me know whether this will really be able to make vbulletin with xoops. and if that has already happened.

leonsio
12-20-2005, 11:52 AM
also vbulletin runs unter php5 without any problems

you should install WAMP on your windows this package include apache/php5/mysql4x and then test all your applications on it with php5

Wordplay
12-20-2005, 11:55 AM
did you read my last reply? if not please do...

and you just wrote unter... deutsch? predator kenn ich ja bereits, ein deutsches coder team hier ja?

leonsio
12-20-2005, 12:04 PM
ja hab dein kommentar gelesen
man kann xoops modul erstellen, jedoch ist dieser von mir vorerst nicht geplannt

f?r deutschprachige hilfe benutze www.vbhacks-germany.com forum

Wordplay
12-20-2005, 12:08 PM
no my english is just fine... so if you dont mind i'll just stay here... merely because registering there would just be too much extra work that i doubt will help me get on... as you're here and you're the only person i need to be talking to concerning this.

you said vbulletin works just fine on php5 server? you mean i wouldn't have to change anything when moving to a php5 server? are you certain of this?

leonsio
12-20-2005, 12:12 PM
<a href="http://www.c4u.to" target="_blank">www.c4u.to</a> is my forum and it works/runs on php 5.0.x and mysql 4.1

Wordplay
12-20-2005, 12:24 PM
cool. heard php 5.1.x is not too stable with vbulletin so i should be running 5.0.x then right? ok i'll upgrade my server then later tonight. and then install this.

could you please... please do me the favor of finding somebody who made it work with xoops? if you say its possible somebody must've done it by now right? or can you atleast point me in a direction to look around at?

leonsio
12-20-2005, 12:29 PM
also i have not tested php5.1 with vbulletin

but i will update my server to php 5.1 and mysql 5.0 soon

xoops... also i can try to make a module but not in this year

for questions except VB_SOAP addon use other threads here ( for modules -> Vbulletin application connector )

Wordplay
12-20-2005, 01:45 PM
too bad... in my opinion xoops completely outshines joomla. i wish that would work. never is it possible for me to get what i really need. i hope somebody works on it sometime soon.

thanks none the less.

Wordplay
12-21-2005, 10:00 AM
leonsio i cant find anybody willing to work on the xoops and vbulletin intigration... as nobody seems to have the soap expiriance... and asking around on other forums turned out useless as people expirianced with xoops seem to not know a thing or two about vbulletin, probably because it has never before been possible to make both work together. but if you run a search on:
bbpixel.com
xoops.org

and a couple of other xoops sites. you will swiftly see how many people have been longing for these 2 to work.

you said you wont be able to work on it before new year... and i dont have a choice but to wait.

so i'll just be patient... please let me know when approximately you'll be able to make it work.

leonsio
12-21-2005, 10:07 AM
also its realy easy to make common logins from other applications with vbulletin ( and this addon )

look at the examples in the package

in the login.php you can find code to "login" on vbulletin

as result you will get all needed cookies ($connection->_cookies)

you must just walt this array and set cookies


foreach( $connection->_cookies AS $name => $value)
{
setcookie($name, $value[0], $lifetime, $value[1], $value[2]);
}


if you have set all this cookies, the user will be logged in vbulletin

Wordplay
12-21-2005, 10:10 AM
so basically this isnt really an intigration but rather just logs users into both programs, which remain standalone softwares?

leonsio
12-23-2005, 08:29 AM
*update*

added function getOnlineUsers(KEY)
this function will return an array with all logged in users

the count of the array can be different, you will only get user which you can see
also if the user can not see we who is online list, he will get nothing ;)

for admins the list will include invisible users too

Philipp G?rard
12-27-2005, 09:03 PM
This sounds promising. When are you going to implement the addTopic/addPosting-functions?

leonsio
12-27-2005, 11:13 PM
not this year ;)

leonsio
01-10-2006, 02:54 PM
So... would this be able to work with vwar? http://www.vwar.de and my vbulletin forum so that users will synch?

I am looking for some sort of vwar bridge or something to synch the 2 user databases together. A vwar bridge would be a great tool for the vbulletin community.


one use has created vwar module for my connector for joomla
its the same as vbulletin connector, i will port the module in the next weeks for vbulletin

to use it with this connector and vbulletin

http://forum.joomla.org/index.php/topic,21066.msg125646.html#msg125646

release thread of the connector for vbulletin

so it is posible to have common login between joomla<->vbulletin->vwar ( or vbulletin<->joomla->vwar )

it will be only one login needed :D

rob.wisniewski
01-11-2006, 03:02 AM
This is really interesting and almost exactly what I'm looking to do. However I don't believe my host has the SOAP extension installed for me. both of my applications are running in the same process/domain so I can theoretically call your server.php directly without the SOAP layer. I tried to hack this by removing the references and verification of the $key, but this seems to fall apart. (interestingly enough I just get a <html></body></html> response.. can't figure that one out). Any ideas on calling your libraries from another php file? Specifically I'd be calling this from the portion of MediaWiki that logs a user into mediawiki.

leonsio
01-11-2006, 07:12 AM
you need php5 to run this script

key should not be a problem, you can call the functions direct $test=new VBSOAP();

$result=$test->doLogin(KEY, .....);


sorry but i dont have enouth time at the moment to make the script php4 conform
i dont know why you get html code, the script dont produce any html outputs

try to update to php5, its a easiest way to get this script working ;)

boiboi
01-18-2006, 01:27 AM
look at first post

you needs PHP5 and soap extension

for a client you can use a PEAR::SOAP, examples are at the first site of this thread

Good concept but most folks are probably still on php4

leonsio
01-18-2006, 06:17 AM
php4 has very very slow performance

it is posible to run it with php4 but its not so good and not so fast like php5

( the extension in php4 is written in php, the soap extension in php5 is written in c )

jliu
01-25-2006, 11:36 AM
Very nice concept. I tried it, but got message --

[faultstring] => looks like we got no XML document
[faultcode] => SOAP-ENV:Client

Any idea where I got it wrong?

Thanks!

leonsio
01-25-2006, 11:38 AM
by which methode?

maybe you should disable the wsdl cache

jliu
01-25-2006, 11:45 AM
The fault was shown for the doLogin. Just disabled the wsdl cache, restarted apache, it is still the same. I am running on Windows.

jliu
02-01-2006, 07:23 PM
The fault was shown for the doLogin. Just disabled the wsdl cache, restarted apache, it is still the same. I am running on Windows.

It is working now -- I had my php.ini error reporting changed to "report errors only" and the problem disappeared.

If I login using the examples/session/login.php, then go to my forum. The forum does not show the user is logged in. Is there anyhting else I need to do to achieve this?

By the way, it would be nice to add a few more methods in the API:

a) check user is logged in or not
b) if user is logged in, get their userid and/or group id

Thanks!

leonsio
02-01-2006, 07:29 PM
if you have cookies ( from the server ) the user is logged in
getUsersmethode returns all user details ( groups included too)

twitch
02-14-2006, 10:19 PM
one use has created vwar module for my connector for joomla
its the same as vbulletin connector, i will port the module in the next weeks for vbulletin

to use it with this connector and vbulletin

http://forum.joomla.org/index.php/topic,21066.msg125646.html#msg125646

release thread of the connector for vbulletin

so it is posible to have common login between joomla<->vbulletin->vwar ( or vbulletin<->joomla->vwar )

it will be only one login needed :D


Very cool! Keep us posted on the progress

oojacoboo
02-18-2006, 09:22 PM
jliu, I am having the same problem you have. I finally got rid of that first error by defining the absolute path in the server.php file for CDW. I changed it to

path/to/forum/soap

I also defined the absolute /path/to/forum in the /includes/config.php file to be certain.

I now get this returned from the login.php file...

login=> tester:tester
cookies from the server
Array
(
[cookies] =>
)
get the last 10 messages which the user can see

It isn't getting any cookies from the system and it isn't logging me in. I have about a dozen questions on this and the joomla connector. I know this isn't the place to ask the joomla questions, so I won't. BUT I WOULD REALLY LIKE TO SEE A SITE FOR THIS PROJECT! It is really hard to find the documentation and its scattered and very hard to follow. This is probably the 5th time I have offered to help with docs and a website, hosting, everything. I don't understand what the problem is?

So, my question is in regards to the "key"

Does this key need to be stored in a particular place? I have entered it in Joomla and in the "VB Connector" settings. But, I am not certain this is the ultimate location which this key should exist. Is it? Or where do I need to put it? Could this be the reason the user isn't getting logged into the system?

BTW: I recently upgraded our server to mysql 4.1 and php5. As a result the sql_module was broken. None of the posting features worked anymore. So, I decided to take the SOAP route as it was nicer anyway.

EDIT: Am I suppose to have an extra menu in my vbulletin/admincp for this SOAP Product? I have one for the Joomla Connector, but this one doesn't show up after an install. Maybe this is where the key is suppose to be entered...? Any idea why it wouldn't have installed properly?

I have removed it and reinstalled. I checked the xml file and there appears to be a large number of settings that would be the issue it seems. However, I can't find where to access these... What am I missing here? Maybe its just not writing to the database for some reason or another. I have tested the db from the admincp and it is writable. It just appears that the additional fields arn't being created with the table for this product.

EDIT2: Well it has occured to me that the XML file doesn't have any SQL commands to add the proper tables. In addition it is missing a few other necessary XML attributes to add it to the vbulletin admincp the way the application connector has been added. It is also missing the /admincp/.php file necessary. Are there any plans to include these? Are they required? How do I change the key and activate the soap server, etc.? I tried reinstalling after changing the default values in the xml, but that generated an error with vbulletin. Really hoping for some direction here. Thanks Lensio.

leonsio
02-19-2006, 07:43 PM
wrong thread

this thread is only for SOAP API, not for problems with other modules
this module dont need any sql tables/changes

P.S. try to write my nickname right ;)

oojacoboo
02-19-2006, 08:27 PM
sorry about the nick leonsio, my question IS in regards to the SOAP API and really has nothing to do with anything else. Yes, I am trying to get it to work with Joomla, but thats besides the point now. At the moment I am trying to get it to work with the test files included. If you read my post you would see. Thanks for your time.

leonsio
02-20-2006, 05:56 AM
the installer ( XML ) create new field unter vbulletin settings, called SOAP API
you can setup then the Key for the soap connection

more is not needed to have this addon work

maybe you should check if the forumpath under includes/config.php is set

for access joomla from vbulletin side, you must install "vbulletin application connector" which you can find here in forum

in the testfiles you must edit the URL to your soap api and the key
you can not access my forum with this examples ( IP is not allowed ;) )

oojacoboo
02-20-2006, 03:52 PM
thanks leonsio. I was able to change the settings now. So, it appears that it may be working properly now, but it doesn't log the user into the forums from the example login.php script. Here is the output that I am getting from the login.php script. Maybe you can tell me what it means the problem may be.

login=> tester:tester
stdClass Object
(
[password] => 99019c1952ef8e438c9baf620ad5819d
[userid] => 551
)
cookies from the server
Array
(
[cookies] => Array
(
[bbsessionhash] => Array
(
[0] => fa434a65ea074d20d0c75dc21db02367
[1] => /
[2] => www(dot)macmod(dot)com
)

[bblastvisit] => Array
(
[0] => 1140403824
[1] => /
[2] => www(dot)macmod(dot)com
)

[bblastactivity] => Array
(
[0] => 0
[1] => /
[2] => www(dot)macmod(dot)com
)

)

)
get the last 10 messages which the user can see

I have tried it with different usernames as well, and I have changed around the key to be sure that mine was compatible. I also tried loading the login.php with bad login info for testing and it lets me know its bad. It also tells me if the key is bad.

In addition I am getting vbulletin error outputs like...

Database error in vBulletin 3.5.3:

Invalid SQL:

SELECT userid
FROM user
WHERE testman='testman';

MySQL Error : Unknown column 'testman' in 'where clause'
Error Number : 1054
Date : Monday, February 20th 2006 @ 12:00:23 PM
Script : http://www(dot)macmod(dot)com/forum/soap/server.php
Referrer :
IP Address : 72.36.175.243
Username :
Classname : vB_Database

testman is a valid user in vbulletin as well. I get this vb output via email, as that is how I have specified. Any ideas here? I think I am getting close, just something small.

The files are located at the following...

site/forum/soap
http://www(dot)macmod(dot).com/forum/soap/examples/session/login.php

I have changed the soapclient url and all the paramaters in the vbulletin options section for the SOAP API as well as the login.php script.

Thanks for all the help man, I really appreciate it, as well as everyone on our site. I am actually sure they will appreciate it more. Cheers.

leonsio
02-20-2006, 04:00 PM
it seems to be working

if you want to have automaticaly login, try to enable the "Send password and userid cookie?" option

latest threads can be displayed only if the forum is active

the example scripts does not set any cookies, it displays only the cookies that you get from the server, this cookies can be set and your user should be logged in

( on disable forums it can only work if you are administrator )

oojacoboo
02-20-2006, 07:45 PM
I know this isn't the right place to discuss the application connector and the joomla com_connector, but thats what I am ultimately trying to get to work.

How can I test to make sure that this SOAP API is actually working the way it is intended. I am afraid I am wasting my time trying to get the other connectors working when the SOAP API is the culprit.

I am trying this login.php script again, b/c I feel like its the best one for testing. The forums are turned off, but I am testing with a admin log and pass as well. That last one I sent was just an example. Although, with the admin log and pass it appears the same as the other one, but I can't see the last 10 posts. Shouldn't I be able to even with the forums off?

I did try forcing the SOAP server to pass the cookie and session. However, that doesn't log me into the forums with the script either.

Also, When I attempt that login.php I get this error returned to my email...

Invalid SQL:

SELECT userid
FROM user
WHERE testman='testman';

MySQL Error : Unknown column 'testman' in 'where clause'
Error Number : 1054
Date : Monday, February 20th 2006 @ 04:38:52 PM
Script : http://www(dot)macmod(dot)com/forum/soap/server.php
Referrer :
IP Address : 72.36.175.243
Username :
Classname : vB_Database

It appears that testman is being passed instead of the title of the column, (username, login, logid, or whatever its called). Whats the deal here? Any ideas?

Again, many thanks.

leonsio
02-20-2006, 07:55 PM
which method have you called

i have changed the api in 7 to 8 version on update/delete/ user functions
so that examples can be "buggy"

oojacoboo
02-20-2006, 08:23 PM
this is the login.php I am using...

<?php
session_start();
echo "<pre>";

try
{
$connect= new SoapClient('http://www(dot)macmod(dot)com/forum/soap/server.php?wsdl');
if(isset($_SESSION['cookies']))
$connect->_cookies=$_SESSION['cookies'];

$params=array( 'key' => 'thecorrectkey',
'password' => 'password',
'username' => 'testman'
);

// make login
echo "login=> tester:tester\n";
$result=$connect->__call('doLogin', $params);
// get the answer
print_r($result);
if(!isset($_SESSION['cookies']))
$_SESSION['cookies']=$connect->_cookies;
}
catch( SoapFault $ex)
{
// error message
print_r($ex);
}

echo "cookies from the server\n";
print_r($_SESSION);


?>
<a href="latest10.php">get the last 10 messages which the user can see</a>

I am guessing that it uses the SOAP API and posts to the soap/server.php for processing. I am using the one that is attached to the first post of this thread. I assume the latest one.

BTW, I can produce that error in the previous post by "Logging Out" of the system. It will generate that error everytime.

oojacoboo
02-22-2006, 02:18 PM
im guessing that there is something in the server.php file that is incorrect as, I get the error from vbulletin when I process a "log out" from the fourm itself. Any ideas here?

leonsio
02-22-2006, 02:44 PM
which error?

oojacoboo
02-22-2006, 03:31 PM
this one from the previous post.

Invalid SQL:

SELECT userid
FROM user
WHERE testman='testman';

MySQL Error : Unknown column 'testman' in 'where clause'
Error Number : 1054
Date : Monday, February 20th 2006 @ 04:38:52 PM
Script : http://www(dot)macmod(dot)com/forum/soap/server.php
Referrer :
IP Address : 72.36.175.243
Username :
Classname : vB_Database

leonsio
02-23-2006, 09:51 AM
BTW, I can produce that error in the previous post by "Logging Out" of the system. It will generate that error everytime.

wait a second, where no function logout in this API....

maybe you call a wrong function?

oojacoboo
02-23-2006, 10:44 PM
I haven't customized anything. I have installed it exactly like the instructions. Do you think you could make the instructions maybe a little more clear? They are missing lots of steps for the install, and kinda confusing.

Maybe its not on a logout, I don't know. But I do get this error from the SOAP API script. As you can see the url has the server.php as the script.

Why is testman=testman? Shouldn't it be like "username=testman" ? Whats the deal with this?

leonsio
02-24-2006, 05:01 AM
i have asked you some posts before, which methode call do you use?

which example script?

it is allways right with the api, it can be that the scripts are out of date

oojacoboo
02-24-2006, 02:33 PM
leonsio, I have tried all the scripts. I even pasted in the code that I was using on the login script in post #94.

They are all the same thing really, right? example is just login and last10 together...

Isn't it the server.php file that is sending the wrong sql? Wouldn't it not even attempt to process if the wrong API was sent to the soap/server.php soap server?

leonsio
02-24-2006, 03:07 PM
this error can be produced ONLY by updateUser or deleteUser call

the login example can not produce this error, because login methode dont have any querys like error message

oojacoboo
02-24-2006, 08:23 PM
well maybe its update user? Could it be updating the cookie for the user or the session id or something? I don't really know how this works in entirety. I just know this is the error I am getting. Any ideas?

Shouldn't I be able to view the latest 10 posts from the link on the login script, if its working properly? It shows nothing when I try to view. Therefore, I assume its not working.

Any ideas on what I can try to get it up and going?

necrotic
02-25-2006, 01:39 AM
Thank you so much! We will be using this on Christian-Lyrics.net shortly. I had originally made a seperate login using the same tables, but different cookies, because of the forum being on a sub-domain.

oojacoboo
02-25-2006, 08:18 PM
maybe the issue is with 3.5.3?

leonsio
02-25-2006, 10:16 PM
my forum runs with vb 3.5.3

you want to install joomla connector right?

then setup a new test board and test it together with the connector

and dont stop on one error message, which can be produced by outdated examples

oojacoboo
02-26-2006, 09:24 PM
well, I think I am getting somewhere maybe now. At least the logout function works across the board. However, the login doesn't. In addition, if I login on the forum, then proceed to login on the joomla site, it logs me out of the forum and onto the joomla site...

Who knows... I don't even really know what to put in my settings as its far from clear. I don't know if its working, or anything. I am sure you are fed up with me Leonsio and all the problems, and I offered to help with docs on this, which would solve these issues. The English is hard to understand, and there are lots of steps missing and everything is scattered.

I really do appreciate all the dev work and help. I am trying to make this easier on others wanting to install this connector, as I am sure there are plenty. However, most are waiting, b/c its too confusing at the moment.

ptmuldoon
03-04-2006, 02:39 PM
Can somone possible help me out in trying to get vb and joomla to work together? I've installed the connector from joomla's site, but i'm getting this error:

Fatal error: Class 'SoapClient' not found in C:\wamp\www\joomla\components\com_connector\module s\vbulletin.class.php on line 42

I'm trying to test this on a local WAMP install. Do I need to install a soap client or something? WAMP is using php 5.1.1

Any help would be greatly appreciated.

leonsio
03-04-2006, 03:07 PM
you need soap extension
of you are using windows just comment out in the php.ini the soap.dll

ptmuldoon
03-04-2006, 03:26 PM
Well, I'm testing locally with a WAMP install from wampserver.com. Looking at the php.ini file, I don't have soap.dll in there. So, I'm not sure on how to proceed then.

leonsio
03-04-2006, 03:39 PM
download the needed dll from www.php.net

SimonVlc
03-05-2006, 01:17 PM
There is a possibility to develop a common login system to drupal with this extension?

Thanks, Simon.

leonsio
03-06-2006, 11:54 AM
yes thy not?

this addon provides an api for vbulletin

all that you need on drupal side is to call the login function of this api
and the set the cookies

ImportPassion
03-14-2006, 12:08 AM
is it possible to add getForums() so we can get a list of the current forums available?

ImportPassion
03-14-2006, 12:14 AM
I was adding a reference in vb.net to this and it gave me these errors...


The document at the url http://www.7thgencivic.com/forums/soap/server.php?wsdl was not recognized as a known document type.
The error message from each known type may help you fix the problem:
- Report from 'DISCO Document' is 'Discovery document at the URL http://www.7thgencivic.com/forums/soap/server.php?wsdl could not be found.'.
- The document format is not recognized.
- Report from 'WSDL Document' is 'There is an error in XML document (68, 81).'.
- Namespace prefix 'tns' is not defined.
- Report from 'XML Schema' is 'The root element of a W3C XML Schema should be <schema> and its namespace should be 'http://www.w3.org/2001/XMLSchema'.'.

Does it mean anything to you?

ImportPassion
03-14-2006, 12:35 AM
ok, i think i fixed it now.
try this server.xml file.

kmon
04-07-2006, 03:28 PM
I'm also interested in being able to get the list of forums available to the logged in user. I'd also like to be able to get a list of threads within a forum, post a new thread, read a thread, post a reply, etc.

vlad_edit
05-23-2006, 09:48 AM
I have the SOAP API running on Windows 2003, PHP 5.1, MySQL 4.0.1 and ColdFusion. I've managed to get PHP and ColdFusion using the API and the basic methods work.

I am having a problem with the updateUser method, it seems to throw errors unless I comment out the following code from the upadateUser function in the server.php file:

// email
if(!empty($email) && $email != '')
{
$userdata->set('email', $email);
}

// username
if(!empty($username) && $username != '')
{
$userdata->set('username', $username);

I only need the function to update the user password. Once I comment the above statements out the function executes without throwing an error, nowever, the password update doesn't appear to work.

I am passing over an MD5 version of the password (without salt) to the function. It's not documented anywhere whether the password needs to be the original plain text or whether it can be an MD5 hash version.

Any suggestions or some documentation on how to use the updateUser function within the API would be appreciated.

Here is the syntal for the updateUser function:
updateUser(string $key, string $value, string $field, string $username, string $password, string $email)

jsodeman
02-18-2007, 07:53 AM
Is development stopped on this? I'm working on connecting C# to vbulletin and this looks promising but the feature I need that seems to be missing is adding a new user.

The Connector API https://vborg.vbsupport.ru/showthread.php?t=114338 has that ability, maybe the two could be combined?

leonsio
02-18-2007, 12:48 PM
i have stopped the development because of few interest

you can not use the "conenctor api" to connect c# application with vbulletin
only one way you have is to use this API ( SOAP ) or directly access the vbulletin database

additing a user to vbulletin is included in this API

jsodeman
02-19-2007, 11:52 PM
Thanks for the response. That's a shame about the lack of interest, maybe people don't understand the usefulness of a SOAP APi. Anyway, I found the setUser function for adding users.

Right now I've got a problem with sessions and doLogin. The SOAP client is getting a session which is logged in, but then the user gets a second session which isn't logged in. Any ideas?

jsodeman
02-20-2007, 06:49 AM
As a note, the "print_r($threadinfo);" is still in the posted files under getPost. Caused me a load of problems til I hunted it down.

cyberbeggar
05-07-2007, 10:16 AM
Is there anything like compatible for v 3.6.5 ?

leonsio
05-07-2007, 10:19 AM
Is there anything like compatible for v 3.6.5 ?


should work with some changes

Disi
07-15-2007, 10:31 PM
Useing vB 3.6.3

[message:protected] => looks like we got no XML document

$connect= new SoapClient('http://forum.domain.tdl/soap/server.php?wsdl');

$params=array( 'key' => 'thekey',
'password' => 'test',
'username' => 'test'
);

$result=$connect->getLastPosts(20);
print_r($result);


Any idea?

leonsio
07-16-2007, 05:42 AM
look in the error-log from your webserver

Disi
07-16-2007, 09:47 AM
No errors, everythings seems to be fine. there are only new entries in the access log


web - - [16/Jul/2007:12:52:02 +0200] "GET /soap/server.php?wsdl HTTP/1.0" 200 20123 "-" "-"

p57a4ffd5.dip.t-dialin.net - - [16/Jul/2007:12:52:02 +0200] "GET /index.php HTTP/1.1" 200 2433 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4"

web - - [16/Jul/2007:12:52:02 +0200] "POST /soap/server.php HTTP/1.1" 200 1657 "-" "PHP-SOAP/5.2.0-8+etch7"

treelovinhippie
08-20-2007, 03:24 AM
Does this work for v3.6.8?

There are about 3 of these APIs, and it's exactly what I'm after but none of them seem to work for the latest version sadly :(

JEllis
09-21-2007, 02:57 PM
Useing vB 3.6.3

[message:protected] => looks like we got no XML document

$connect= new SoapClient('http://forum.domain.tdl/soap/server.php?wsdl');

$params=array( 'key' => 'thekey',
'password' => 'test',
'username' => 'test'
);

$result=$connect->getLastPosts(20);
print_r($result);


Any idea?
Any luck solving this "looks like we got no XML document" error? I'm getting it - using 3.6.2.

vhalexxs
11-23-2007, 02:50 PM
[24-Nov-2007 00:01:37] PHP Fatal error: Call to a member function unlock_tables() on a non-object "path-"\functions.php on line 5218

using 3.6.8, same as looks like we got no XML document error, any work around?

thanks

Finrod
01-14-2008, 08:37 AM
Hello,

had someone found a solution for the Fatal Error with vB 3.6.8?
This API would be ideal to solve our problems without this Error ;)

Please let me know if someone has a workaround or similar?

Regards,
smag

Edit://

Found a solution for the Fatal Error to get into the next Error ;-)

replace the $db and $this->db with some other name, for example $db_soap and $this->db_soap and you will get rid of this error.

But afterwards you get an error which will tell you that you call the method query_slave_first() on a non-object.

There is also an obscure assignment in the constructor, $vbulletin = $this; but at the beginning of the constructor $vbulletin was made global ??.

Any Ideas someone ?

aussiev8
02-27-2008, 10:10 AM
This is awsome, I haven't written a php app in a few months! Its all ruby on rails for me, I was hoping something like this came out! I'm going to start doing some really funky ror shit on my board!!!

gdll
03-04-2008, 05:16 AM
would this work using nusoap ? or the functions addapted to it? :)

Briskoda
03-13-2008, 09:56 PM
This is awsome, I haven't written a php app in a few months! Its all ruby on rails for me, I was hoping something like this came out! I'm going to start doing some really funky ror shit on my board!!!


Likewise, I'm looking to create a club/members area on the back of subscriptions. php coding hat is very rusty, RoR is not ;) I'm just toying with which direction to push / pull data.

Current thinking is push paid subscription to notify RoR app of new sign up, send them a pm with instructions to complete the membership/club side of the application.

But still assembling the pieces, then I can sit down with some clear head space to try and make something work ;)

Way2IT
03-18-2008, 08:39 AM
how do i install this thing with the 'product installer' - what's that? thanks

Way2IT
03-18-2008, 09:20 AM
Does this script work with vb 3.6.8? Can someone please tell me how to install it correctly?

I get this message in visual studio

The document at the url http://www.someserver.com/forum/soap/server.php?wsdl was not recognized as a known document type.
The error message from each known type may help you fix the problem:
- Report from 'DISCO Document' is 'Discovery document at the URL http://www.someserver.com/forum/soap/server.php?wsdl

aussiev8
03-18-2008, 10:37 AM
bah this sucks.. it doesn't work! uninstalled..

requests time back

Way2IT
03-18-2008, 12:47 PM
can someone please tell me how to install this. I can't get it to work.

Way2IT
03-18-2008, 12:49 PM
does this script work if you try to communicate with it from an .net application?

Way2IT
03-18-2008, 12:50 PM
product-soapapi.xml what is it for?

Way2IT
03-18-2008, 02:16 PM
"you must change the url and username/password and the key in this files"

key - which key is he referring to? anyone?

papaschloss
04-01-2008, 12:30 AM
The key....
I, too, am wondering what exactly is meant by the key.

In server.php, there is a line

// set access_key
$this->access_key = $this->options['vbsoap_server_key'];


I'm new to vbulletin, so I need to ask, where does the options array come from and how does the key 'vbsoap_server_key' get set?

I'm using 3.6.x and I noticed that this library is based on 3.5.2. Has this proved to be much of a difference for anyone?

Any help much appreciated.

papaschloss
04-01-2008, 04:30 PM
The original poster, leonsio, says

the installer ( XML ) create new field unter vbulletin settings, called SOAP API
you can setup then the Key for the soap connection

more is not needed to have this addon work

Is he talking about 'the' installer? The one run by hitting install.php? If so then how does it know to add the setting for this key? And, really don't feel like emptying my DB... Or, is there some other installation process I'm unaware of.

I guess in the meantime, I'm going to try to hack this hack so as to remove the need for the key. <shrug>

papaschloss
04-01-2008, 05:06 PM
OK, I figured the whole key thing out. The installation process being talked about by leonsio is a product installation process.

Admincp -> Plugins & Products -> Manage Products

Click on Add/Import Product and upload the product-soapapi.xml file from the root of the unzipped VB_SOAP archive.

Now go to

Admincp -> vBulletin Options -> VBulletin SOAP API (in the right hand list)

Click edit. The key should be there set to 'topsecretaccessky'. I set 'Activate or deactivate the SOAP server' to yes and then clicked on the Save button. However, I tried the login.php file again and got the infamous and always entertaining 'looks like we got no XML document'.

Help on this still appreciated.

e3fnxs6p
05-24-2008, 10:14 AM
i have stopped the development because of few interest
[...]

:(

vBulletin SOAP API deserves some more attention. Most developers developing in another language then PHP, will skip programmatic integration with vBulletin because they think it's only PHP based. But the vBulletin SOAP API allows these developers to use other languages (like Java, C#, Ruby) to communicate with vBulletin.

I think Java developers often try jforum.net as java forum software, but it hasn't a public API, so we want/need vBulletin SOAP API.

gregoryaide
07-10-2008, 12:56 PM
OK, I figured the whole key thing out. The installation process being talked about by leonsio is a product installation process.

Admincp -> Plugins & Products -> Manage Products

Click on Add/Import Product and upload the product-soapapi.xml file from the root of the unzipped VB_SOAP archive.

Now go to

Admincp -> vBulletin Options -> VBulletin SOAP API (in the right hand list)

Click edit. The key should be there set to 'topsecretaccessky'. I set 'Activate or deactivate the SOAP server' to yes and then clicked on the Save button. However, I tried the login.php file again and got the infamous and always entertaining 'looks like we got no XML document'.

Help on this still appreciated.


Thanks for the help. I was ale to get it working on vBulletin 3.7. You need to change the login.php page to use the same key you specify in the admin control panel as well as make sure you use a full url for the SoapClient. I did nothing else special to get it to work. I've only tried the login.php and test.php pages so far but will look to itnergrate this on other pages throughout my site. Does anyone know of any mods similiar to this that are designed for vBulletin 3.7 or that might be better than this one? Seems like it's a common thing that would be needed in large sites that don't want to have to manage multiple user tables.

g.gadaleta
01-14-2009, 03:01 PM
i'm using vb soap api to make login vbulletin through c# application :)

busur
02-03-2009, 11:21 AM
Hello,

In C# application, i receive "Call to undefined function vbsetcookie()" error. It returns from server.php. what shall i do?

Hanoifishing
05-31-2009, 07:12 AM
I have vbulletin 3.8.2 and install this products. but when I run it, I receipt this error. Call to undefined function vbsetcookie()

Please help me.

Thanks!

coffee_bean
07-01-2009, 03:09 PM
I am surprised there's so little attention on this topic!

This addon would allow developers to create proper iPhone application for their site, especially where large community sites are involved, not to mention desktop applications or more customised feeds than RSS allows.

darkforce114
12-27-2009, 02:16 AM
Does this script work with vb 3.6.8? Can someone please tell me how to install it correctly?

I get this message in visual studio

The document at the url http://www.someserver.com/forum/soap/server.php?wsdl was not recognized as a known document type.
The error message from each known type may help you fix the problem:
- Report from 'DISCO Document' is 'Discovery document at the URL http://www.someserver.com/forum/soap/server.php?wsdl


Did you get this working?

Trying to get it working on vb3.8.x... Same error.

abrahamcovelo
09-27-2010, 09:18 AM
Any SOAP API for vbulletin version 4.x?

leonsio
09-27-2010, 09:38 AM
sorry this project is no longer supported